IP Library › Granted Patent US 11,863,799
Granted Patent B2
US 11,863,799 · App. 17/674,676 · Granted Jan 2, 2024

Image encoding method and apparatus, image decoding method and apparatus, and chip

Inventors: Bin Li (Shenzhen, CN); Ling Liu (Shenzhen, CN); Hui Shen (Shenzhen, CN); Jiaqi Gu (Shenzhen, CN)
Assignee: Huawei Technologies Co., Ltd.
H04N19/93H04N19/124H04N19/91
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,863,799
App. No.
17/674,676
Granted
Jan 2, 2024
Kind
B2
Abstract

The disclosure provides image encoding methods and apparatuses. One example encoding method includes: obtaining a one-dimensional sequence of quantized coefficients of an image; obtaining a run-length value sequence and a level value sequence based on the one-dimensional sequence of the quantized coefficients; obtaining an updated second distribution probability of each level value in the level value sequence based on the m first distribution probabilities, the n second distribution probabilities, and a preset mapping rule; and performing encoding based on the level value sequence and the updated second distribution probability of each level value in the level value sequence to obtain and output encoded image data.

Claims (54)

1. An image encoding method, wherein the method comprises:

obtaining a one-dimensional sequence of quantized coefficients of an image, wherein the one-dimensional sequence is obtained by scanning a two-dimensional matrix of quantized coefficients;

obtaining a run-length value sequence and a level value sequence based on the one-dimensional sequence of the quantized coefficients, wherein the run-length value sequence is N={N 0 , N 1 , N 2 , . . . , N m−1 }, the level value sequence is a={a 0 , a 1 , a 2 , . . . , a n−1 }, both m and n are positive integers, and wherein each run-length value in the run-length value sequence has a one-to-one correspondence to one of m first distribution probabilities and each level value in the level value sequence has a one-to-one correspondence to one of n second distribution probabilities;

obtaining an updated second distribution probability of each level value in the level value sequence based on the m first distribution probabilities, the n second distribution probabilities, and a preset mapping rule; and

performing encoding based on the level value sequence and the updated second distribution probability of each level value in the level value sequence to obtain and output encoded image data.

2. The method according to claim 1 , wherein obtaining the updated second distribution probability comprises:

mapping a run-length value N u with a largest distribution probability among m values in the run-length value sequence to a level value a x with a largest distribution probability among n values in the level value sequence, to obtain an updated second distribution probability of the level value a x , wherein u and x are non-negative integers.

3. The method according to claim 2 , wherein the method further comprises:

respectively mapping run-length values to level values based on a position of the level value a x in the level value sequence, to obtain the updated second distribution probability of each level value in the level value sequence.

4. The method according to claim 1 , wherein the preset mapping rule comprises:

mapping, in descending order of first distribution probabilities of run-length values, the run-length values to level values sorted in descending order of the n second distribution probabilities of level values in the level value sequence, to obtain the updated second distribution probability of each level value in the level value sequence.

5. The method according to claim 4 , wherein

a run-length value sequence N 0 ′, N 1 ′, N 2 ′, . . . , N m−1 ′ sorted based on the m first distribution probabilities is obtained in descending order of the m first distribution probabilities; a level value sequence a 0 ′, a 1 ′, a 2 ′, . . . , a n−1 ′ sorted based on the n second distribution probabilities is obtained in descending order of the n second distribution probabilities, wherein m and n are positive integers; and when m is less than n, run-length values N m ′, N m+1 ′, N m+2 ′, . . . , N n−1 ′ are created, them first distribution probabilities corresponding to the run-length values N m ′, N m+1 ′, N m+2 ′, . . . , N n−1 ′ are all 0s, a run-length value N i ′ is mapped to a level value a i ′, i∈[0, n−1], and i is an integer; or when m is greater than n, level values a n ′, a n+1 ′, a n+2 ′, . . . , a m ′ are created, the n second distribution probabilities corresponding to the level values a n ′, a n+1 ′, a n+2 ′, . . . , a m ′ are all 0s, a run-length value N i ′ is mapped to a level value a i ′, i∈[0, m−1], and i is an integer; or when m is equal to n, a run-length value N i ′ is mapped to a level value a i ′, i∈[0, n−1], and i is an integer; and updated second distribution probabilities are obtained; or

a run-length value sequence N 0 ′, N 1 ′, N 2 ′, . . . , N m−1 ′ sorted based on the m first distribution probabilities is obtained in descending order of the m first distribution probabilities; a level value sequence a 0 ′, a 1 ′, a 2 ′, . . . , a n−1 ′ sorted based on the n second distribution probabilities is obtained in descending order of the n second distribution probabilities, wherein m and n are positive integers; and when m is less than n, a run-length value N i ′ is mapped to a level value a i ′, i∈[0, m−1], i is an integer, a second distribution probability of a level value in the level value sequence to which no run-length value is mapped remains unchanged; or when m is greater than n, a run-length value N i ′ is mapped to a level value a i ′, i∈[0, n−1], i is an integer, a first distribution probability of a run-length value that is not mapped remains unchanged, and the run-length value that is not mapped is added to the level value sequence; or when m is equal to n, a run-length value N i ′ is mapped to a level value a i ′, i∈[0, n−1], and i is an integer; and updated second distribution probability of each level value in the level value sequence is obtained.

6. The method according to claim 1 , wherein the preset mapping rule comprises:

mapping run-length values to level values in ascending or descending order of the run-length values in the run-length value sequence, to obtain the updated second distribution probability of each level value in the level value sequence.

7. The method according to claim 6 , wherein

when m is less than or equal to (n−x), the run-length value N i is mapped to a level value a x+i , wherein the level value a x is a level value with a largest distribution probability among the n values of the level values, i∈[0, m−1], i is an integer, x is a non-negative integer, and a distribution probability of a level value to which no run-length value is mapped remains unchanged; or when m is greater than (n−x), the run-length value N i is mapped-to the level value a x+i , wherein the level value a x is a level value with a largest distribution probability among the n values of the level values, i∈[0, n−x], i is an integer, x is a non-negative integer, a distribution probability of a run-length value that is not mapped remains unchanged, the run-length value that is not mapped is added to the level value sequence, and a distribution probability of a level value to which no run-length value is mapped remains unchanged; and the updated second distribution probability of each level value in the level value sequence are obtained; or

when m is less than or equal to (x+1), the run-length value N i is mapped to a level value a x−i , wherein the level value a x is a level value with a largest distribution probability among the n values of the level values, i∈[0, m−1], i is an integer, x is a non-negative integer, and a distribution probability of a level value to which no run-length value is mapped remains unchanged; or when m is greater than (x+1), the run-length value N i is mapped to the level value a x−i , wherein the level value a x is a level value with a largest distribution probability among the n values of the level values, i∈[0, x+1], i is an integer, x is a non-negative integer, a distribution probability of a run-length value that is not mapped remains unchanged, the run-length value that is not mapped is added to the level value sequence, and a distribution probability of a level value to which no run-length value is mapped remains unchanged; and the updated second distribution probability of each level value in the level value sequence are obtained.

8. The method according to claim 1 , wherein the preset mapping rule comprises:

mapping odd-numbered run-length values in the run-length value sequence to a first group of level values, and mapping even-numbered run-length values other than a run-length value numbered 0 in the run-length value sequence to a second group of level values, wherein level values in the first group of level values are different from those in the second group of level values.

9. The method according to claim 8 , wherein

the run-length value N 0 is mapped to a level value a x , wherein the level value a x is a level value with a largest distribution probability among the n values of the level values; and

the odd-numbered run-length values in the run-length value sequence are respectively mapped to the first group of level values, wherein sequence numbers of the first group of level values in the level value sequence are less than x; and the even-numbered run-length values other than the run-length value numbered 0 in the run-length value sequence are respectively mapped to the second group of level values, wherein sequence numbers of the second group of level values in the level value sequence are greater than x, and x is a non-negative integer; or

the even-numbered run-length values other than the run-length value numbered 0 in the run-length value sequence are respectively mapped to the first group of level values, wherein sequence numbers of the first group of level values in the level value sequence are less than x; and the odd-numbered run-length values in the run-length value sequence are respectively mapped to the second group of level values, wherein sequence numbers of the second group of level values in the level value sequence are greater than x, and x is a non-negative integer.

10. An image encoding apparatus, comprising at least one processor, and one or more memories store programming instruction for execution by the at least one processor to:

obtain a one-dimensional sequence of quantized coefficients of an image, wherein the one-dimensional sequence is obtained by scanning a two-dimensional matrix of quantized coefficients;

obtain a run-length value sequence and a level value sequence based on the one-dimensional sequence of the quantized coefficients, wherein the run-length value sequence is N={N 0 , N 1 , N 2 , . . . , N m−1 }, the level value sequence is a={a 0 , a 1 , a 2 , . . . , a n−1 }, both m and n are positive integers, and wherein each run-length value in the run-length value sequence has a one-to-one correspondence to one of m first distribution probabilities and each level value in the level value sequence has a one-to-one correspondence to one of n second distribution probabilities;

obtain an updated second distribution probability of each level value in the level value sequence based on them first distribution probabilities, the n second distribution probabilities, a preset mapping rule;

perform entropy encoding based on the level value sequence and the updated second distribution probability of each level value in the level value sequence; and

output encoded image data.

11. The image encoding apparatus according to claim 10 , wherein the preset mapping rule comprises:

mapping a run-length value N u with a largest distribution probability among m values in the run-length value sequence to a level value a x with a largest distribution probability among n values in the level value sequence, to obtain an updated second distribution probability of the level value a x , wherein u and x are non-negative integers.

12. The image encoding apparatus according to claim 11 , wherein

run-length values are respectively mapped to level values based on a position of the level value a x in the level value sequence, to obtain the updated second distribution probability probabilities of each level value in the level value sequence.

13. The image encoding apparatus according to claim 10 , wherein the preset mapping rule comprises:

mapping, in descending order of the m first distribution probabilities of run-length values, the run-length values to level values sorted in descending order of the n second distribution probabilities of level values in the level value sequence, to obtain the updated second distribution probability of each level value in the level value sequence.

14. The image encoding apparatus according to claim 10 , wherein the preset mapping rule comprises:

mapping run-length values to level values in ascending or descending order of the run-length values in the run-length value sequence, to obtain the updated second distribution probability of each level value in the level value sequence.

15. The image encoding apparatus according to claim 10 , wherein the preset mapping rule comprises:

mapping odd-numbered run-length values in the run-length value sequence to a first group of level values, and mapping even-numbered run-length values other than a run-length value numbered 0 in the run-length value sequence to a second group of level values, wherein level values in the first group of level values are different from those in the second group of level values.

16. A non-transitory computer-readable storage medium, storing one or more programming instructions, that when executed by at least one processor, cause the at least one processor to:

obtain a one-dimensional sequence of quantized coefficients of an image, wherein the one-dimensional sequence is obtained by scanning a two-dimensional matrix of quantized coefficients;

obtain a run-length value sequence and a level value sequence based on the one-dimensional sequence of the quantized coefficients, wherein the run-length value sequence is N={N 0 , N 1 , N 2 , . . . , N m−1 }, the level value sequence is a={a 0 , a 1 , a 2 , . . . , a n−1 }, both m and n are positive integers, and wherein each run-length value in the run-length value sequence has a one-to-one correspondence to one of m first distribution probabilities and each level value in the level value sequence has a one-to-one correspondence to one of n second distribution probabilities;

obtain an updated second distribution probability of each level value in the level value sequence based on the m first distribution probabilities, the n second distribution probabilities, and a preset mapping rule; and

perform encoding based on the level value sequence and the updated second distribution probability of each level value in the level value sequence to obtain and output encoded image data.

17. The computer-readable storage medium according to claim 16 , wherein the preset mapping rule comprises:

mapping a run-length value N u with a largest distribution probability among m values in the run-length value sequence to a level value a x with a largest distribution probability among n values in the level value sequence, to obtain an updated second distribution probability of the level value a x , wherein u and x are non-negative integers.

18. The computer-readable storage medium according to claim 16 , wherein the preset mapping rule comprises:

mapping, in descending order of the m first distribution probabilities of run-length values, the run-length values to level values sorted in descending order of the n second distribution probabilities of level values in the level value sequence, to obtain the updated second distribution probability of each level value in the level value sequence.

19. The computer-readable storage medium according to claim 16 , wherein the preset mapping rule comprises:

mapping run-length values to level values in ascending or descending order of the run-length values in the run-length value sequence, to obtain the updated second distribution probability of each level value in the level value sequence.

20. The computer-readable storage medium according to claim 16 , wherein the preset mapping rule comprises:

mapping odd-numbered run-length values in the run-length value sequence to a first group of level values, and mapping even-numbered run-length values other than a run-length value numbered 0 in the run-length value sequence to a second group of level values, wherein level values in the first group of level values are different from those in the second group of level values.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 20, 2022
From: LI, BIN; LIU, LING; SHEN, HUI; GU, JIAQI
To: HUAWEI TECHNOLOGIES CO., LTD.
Reel/Frame 059653/0848 →
Priority Claims (1)
CN 201910766066.4 · Aug 19, 2019 · national
Continuity (2)
Continuation PCTCN2020107673 · Aug 7, 2020
Related Publication 20220174329A1 · Jun 2, 2022