IP Library › Granted Patent US 11,228,763
Granted Patent B2
US 11,228,763 · App. 17/131,046 · Granted Jan 18, 2022

Residual coding to support both lossy and lossless coding

Inventors: Marta Karczewicz (San Diego, CA); Hongtao Wang (San Diego, CA); Alican Nalci (San Diego, CA); Muhammed Zeyd Coban (Carlsbad, CA)
Assignee: QUALCOMM Incorporated
H04N19/12H04N19/176H04N19/18H04N19/60
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,228,763
App. No.
17/131,046
Granted
Jan 18, 2022
Kind
B2
Abstract

An example device includes memory configured to store video data and one or more processors implemented in circuitry and coupled to the memory. The one or more processors are configured to determine whether transform skip mode is used for a current block of the video data. The one or more processors are configured to disable level mapping for residual coding based on transform skip mode being used for the current block. The one or more processors are configured to code the current block without applying level mapping.

Claims (77)

1. A method of coding video data, the method comprising:

determining whether transform skip mode is used for a current block of the video data;

based on transform skip mode being used for the current block, disabling level mapping for residual coding; and

coding the current block without applying level mapping,

wherein coding the current block without applying level mapping comprises coding the current block without calculating a predictor for a current coefficient based on neighboring coefficients and without adjusting the absolute value of the current coefficient based on the predictor.

2. The method of claim 1 , further comprising:

coding a flag indicative of whether a transform coefficient of the current block is non-zero, two flags indicative of whether an absolute value of the transform coefficient is greater than j<<1)+1, and a flag indicative of a parity of the transform coefficient in a first pass;

coding a flag indicative of a sign of the transform coefficient and three flags indicative of whether the absolute value of the transform coefficient is greater than j<<1)+1 in a second pass; and

coding a flag indicative of a remaining absolute value of the transform coefficient in a third pass,

wherein j is indicative of a number of a flag.

3. The method of claim 1 , further comprising:

determining neighboring coefficient values that neighbor a current coefficient value of the current block; and

determining a Rice parameter based on the neighboring coefficient values,

wherein coding the current block is further based on the Rice parameter.

4. The method of claim 3 , wherein the neighboring coefficient values comprise two left coefficient values, two above coefficient values and an above-left coefficient value.

5. The method of claim 3 , wherein the neighboring coefficient values comprise two right coefficient values, two below coefficient values and a below-right coefficient value.

6. The method of claim 1 , further comprising:

determining information associated with neighboring coefficients neighboring a current coefficient of the current block; and

based on the information associated with the neighboring coefficients, determining a context for the current coefficient;

wherein coding the current block is further based on the context.

7. The method of claim 6 , wherein the information comprises a syntax value for the neighboring coefficient.

8. The method of claim 6 , wherein the information comprises a number of available neighboring coefficients.

9. The method of claim 1 , further comprising:

determining a syntax element related to residual coding for the current block; and

determining a set of contexts for luma components and a set of contexts for chroma components for the current block,

wherein coding the current block is further based on the set of contexts for luma components and the set of contexts for chroma components, and wherein if the syntax element is a first syntax element, the set of contexts for luma components and the set of contexts for chroma components is shared, and if the syntax element is a second syntax element, the set of context for the luma components and the set of contexts for chroma components are different.

10. The method of claim 1 , further comprising:

determining whether a number of remaining context coded bins for a current transform unit is greater than a multiplier multiplied by a size of a coding group multiplied by a number of remaining coefficient groups in the transform unit; and

based on the number of remaining context coded bins for a current transform unit not being greater than a multiplier multiplied by a size of a coding group multiplied by a number of remaining coefficient groups in the transform unit, skipping a coding pass while coding the current block.

11. The method of claim 10 , wherein skipping a coding pass comprises skipping a second coding pass.

12. The method of claim 1 , wherein determining whether transform skip mode is used for a current block of the video data is based on video data from an encoded video bitstream, and wherein coding the current block without applying level mapping comprises decoding the current block without level mapping.

13. The method of claim 1 , wherein determining whether transform skip mode is used for a current block of the video data is based on a rate-distortion value, and wherein coding the current block without applying level mapping comprises encoding the current block without level mapping.

14. A device for coding video data, the device comprising:

memory configured to store the video data; and

one or more processors implemented in circuitry and coupled to the memory, the one or more processors being configured to:

determine whether transform skip mode is used for a current block of the video data;

based on transform skip mode being used for the current block, disable level mapping for residual coding; and

code the current block without applying level mapping,

wherein to code the current block without applying level mapping the one or more processors are configured to code the current block without calculating a predictor for a current coefficient based on neighboring coefficients and without adjusting the absolute value of the current coefficient based on the predictor.

15. The device of claim 14 , wherein the one or more processors are further configured to:

code a flag indicative of whether a transform coefficient of the current block is non-zero, two flags indicative of whether an absolute value of the transform coefficient is greater than j<<1)+1, and a flag indicative of a parity of the transform coefficient in a first pass;

code a flag indicative of a sign of the transform coefficient and three flags indicative of whether the absolute value of the transform coefficient is greater than j<<1)+1 in a second pass; and

code a flag indicative of a remaining absolute value of the transform coefficient in a third pass,

wherein j is indicative of a number of a flag.

16. The device of claim 14 , wherein the one or more processors are further configured to:

determine neighboring coefficient values that neighbor a current coefficient value of the current block; and

determine a Rice parameter based on the neighboring coefficient values,

wherein the one or more processors code the current block further based on the Rice parameter.

17. The device of claim 16 , wherein the neighboring coefficient values comprise two left coefficient values, two above coefficient values and an above-left coefficient value.

18. The device of claim 16 , wherein the neighboring coefficient values comprise two right coefficient values, two below coefficient values and a below-right coefficient value.

19. The device of claim 14 , wherein the one or more processors are further configured to:

determine information associated with neighboring coefficients neighboring a current coefficient of the current block; and

based on the information associated with the neighboring coefficients, determine a context for the current coefficient,

wherein the one or more processors code the current block further based on the context.

20. The device of claim 19 , wherein the information comprises a syntax value for the neighboring coefficient.

21. The device of claim 19 , wherein the information comprises a number of available neighboring coefficients.

22. The device of claim 14 , wherein the one or more processors are further configured to:

determine a syntax element related to residual coding for the current block; and

determine a set of contexts for luma components and a set of contexts for chroma components for the current block,

wherein the one or more processors code the current block further based on the set of contexts for luma components and the set of contexts for chroma components, and wherein if the syntax element is a first syntax element, the set of contexts for luma components and the set of contexts for chroma components is shared, and if the syntax element is a second syntax element, the set of context for the luma components and the set of contexts for chroma components are different.

23. The device of claim 14 , wherein the one or more processors are further configured to:

determine whether a number of remaining context coded bins for a current transform unit is greater than a multiplier multiplied by a size of a coding group multiplied by a number of remaining coefficient groups in the transform unit; and

based on the number of remaining context coded bins for a current transform unit not being greater than a multiplier multiplied by a size of a coding group multiplied by a number of remaining coefficient groups in the transform unit, skip a coding pass while coding the current block.

24. The device of claim 23 , wherein skip a coding pass comprises skip a second coding pass.

25. The device of claim 14 , further comprising a camera, the camera being configured to capture the video data.

26. The device of claim 14 , further comprising a display device, the display device being configured to display the video data.

27. The device of claim 14 , wherein the device comprises a mobile phone.

28. A non-transitory computer-readable storage medium storing instructions, which, when executed by one or more processors, cause the one or more processors to:

determine whether transform skip mode is used for a current block of video data;

based on transform skip mode being used for the current block, disable level mapping for residual coding; and

code the current block without applying level mapping,

wherein to code the current block without applying level mapping the instructions cause the one or more processors to code the current block without calculating a predictor for a current coefficient based on neighboring coefficients and without adjusting the absolute value of the current coefficient based on the predictor.

29. A device for coding video data, the device comprising:

means for determining whether transform skip mode is used for a current block of the video data;

means for disabling level mapping for residual coding based on transform skip mode being used for the current block; and

means for coding the current block without applying level mapping,

wherein the means for coding the current block without applying level mapping is configured to code the current block without calculating a predictor for a current coefficient based on neighboring coefficients and without adjusting the absolute value of the current coefficient based on the predictor.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 7, 2022
From: WANG, HONGTAO
To: QUALCOMM INCORPORATED
Reel/Frame 060452/0718 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 3, 2021
From: KARCZEWICZ, MARTA; WANG, HONGTAO; NALCI, ALICAN; COBAN, MUHAMMED ZEYD
To: QUALCOMM INCORPORATED
Reel/Frame 055128/0257 →
Continuity (2)
Provisional Application 62953872 · Dec 26, 2019
Related Publication 20210203934A1 · Jul 1, 2021
Cited By (1)
US 12,671,814