IP Library › Granted Patent US 11,677,983
Granted Patent B2
US 11,677,983 · App. 17/533,235 · Granted Jun 13, 2023

Methods and apparatus for improved entropy encoding and decoding

Inventors: Yang Hu (Troy, NY); Joel Sole (San Diego, CA); Xiaoan Lu (Princeton, NJ); Peng Yin (Ithaca, NY); Yunfei Zheng (San Jose, CA)
Assignee: INTERDIGITAL VC HOLDINGS, INC.
H04N19/60H03M7/4006H03M7/4018H04N19/13H04N19/46H04N19/61H04N19/70
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,677,983
App. No.
17/533,235
Filed
Nov 23, 2021
Granted
Jun 13, 2023
Kind
B2
Art Unit
2486
USPC
375/240.18
Abstract

Methods and apparatus are provided for improved entropy encoding and decoding. An apparatus includes a video encoder ( 200 ) for encoding at least a block in a picture by transforming a residue of the block to obtain transform coefficients, quantizing the transform coefficients to obtain quantized transform coefficients, and entropy coding the quantized transform coefficients. The quantized transform coefficients are encoded using a flag to indicate that a current one of the quantized transform coefficients being processed is a last non-zero coefficient for the block having a value greater than or equal to a specified value.

Claims (25)

1. An apparatus for video encoding, comprising:

a video encoder for encoding at least a block in a picture by transforming a residue of the block to obtain transform coefficients, quantizing the transform coefficients to obtain quantized transform coefficients, and entropy coding the quantized transform coefficients, wherein the quantized transform coefficients are encoded using a flag to indicate that a current one of the quantized transform coefficients being processed is a last non-zero coefficient for the block having a value greater than or equal to a specified value, wherein the specified value is selected from among a plurality of values, said selected value remains fixed for the block, and said flag is-a syntax element, and wherein the quantized transform coefficients are encoded using syntax comprising flags indicative of coefficient significance, coefficient sign, and coefficient level.

2. The apparatus of claim 1 , wherein subsequent non-zero coefficients from among the quantized transform coefficients having a value less than the specified value are encoded by encoding only the respective signs of the subsequent non-zero coefficients having the value less than the specified value.

3. The apparatus of claim 1 , wherein the picture is one of a plurality of pictures comprised in a video sequence, and the specified value is adaptively selected responsive to derived statistics from previously processed blocks in the picture or in one or more other pictures from among the plurality of pictures in the video sequence.

4. The apparatus of claim 1 , wherein a level of the current one of the quantized transform coefficients is encoded by subtracting the specified value from an actual value of the current one of the quantized transform coefficients to obtain a difference value and encoding the difference value as the level, in order to reproduce the level at a corresponding decoder by adding the difference value to the specified value.

5. The apparatus of claim 1 , wherein at least a sig_flag syntax element, the flag, a last_flag syntax element, a Bin_1 syntax element, a level syntax element, and a sign syntax element are encoded in a same scanning order, the sig_flag syntax element for indicating whether the current one of the quantized transform coefficients has a non-zero value, the last_flag for indicating whether the current one of the quantized transform coefficients having the non-zero value is a last quantized transform coefficient having the non-zero value in the block in a given scanning order, the Bin_1 syntax element for indicating that an absolute value of the current one of the quantized transform coefficients has a currently unknown non-zero value, the level syntax element for indicating an absolute value of the current one of the quantized transform coefficients when the current one of the quantized transform coefficients has the absolute value greater than the specified value, and the sign syntax element for indicating a corresponding sign of the current one of the quantized transform coefficients.

6. A method, comprising:

encoding at least a block in a picture by transforming a residue of the block to obtain transform coefficients, quantizing the transform coefficients to obtain quantized transform coefficients, and entropy coding the quantized transform coefficients, quantized transform coefficients are encoded using a flag to indicate that a current one of the quantized transform coefficients being processed is a last non-zero coefficient for the block having a value greater than or equal to a specified value, wherein the specified value is selected from among a plurality of values, said selected value remains fixed for the block, and said flag is-a syntax element, and wherein the quantized transform coefficients are encoded using syntax comprising flags indicative of coefficient significance, coefficient sign, and coefficient level.

7. The method of claim 6 , wherein subsequent non-zero coefficients from among the quantized transform coefficients having a value less than the specified value are encoded by encoding only the respective signs of the subsequent non-zero coefficients having the value less than the specified value.

8. The method of claim 6 , wherein the picture is one of a plurality of pictures comprised in a video sequence, and the specified value is adaptively selected responsive to derived statistics from previously processed blocks in the picture or in one or more other pictures from among the plurality of pictures in the video sequence.

9. The method of claim 6 , wherein a level of the current one of the quantized transform coefficients is encoded by subtracting the specified value from an actual value of the current one of the quantized transform coefficients to obtain a difference value and encoding the difference value as the level, in order to reproduce the level at a corresponding decoder by adding the difference value to the specified value.

10. The method of claim 6 , wherein at least a sig_flag syntax element, the flag, a last_flag syntax element, a Bin_1 syntax element, a level syntax element, and a sign syntax element are encoded in a same scanning order, the sig_flag syntax element for indicating whether the current one of the quantized transform coefficients has a non-zero value, the last_flag for indicating whether the current one of the quantized transform coefficients having the non-zero value is a last quantized transform coefficient having the non-zero value in the block in a given scanning order, the Bin_1 syntax element for indicating that an absolute value of the current one of the quantized transform coefficients has a currently unknown non-zero value, the level syntax element for indicating an absolute value of the current one of the quantized transform coefficients when the current one of the quantized transform coefficients has the absolute value greater than the specified value, and the sign syntax element for indicating a corresponding sign of the current one of the quantized transform coefficients.

11. An apparatus for video decoding, comprising:

a video decoder for decoding at least a block in a picture by entropy decoding quantized transform coefficients, de-quantizing the quantized transform coefficients to obtain transform coefficients, and inverse transforming the transform coefficients to obtain a reconstructed residue of the block for use in reconstructing the block, quantized transform coefficients are decoded wherein a flag indicates that a current one of the quantized transform coefficients being processed is a last non-zero coefficient for the block having a value greater than or equal to a specified value, wherein the specified value is selected from among a plurality of values, said selected value remains fixed for the block, and said flag is-a syntax element, and wherein the quantized transform coefficients are encoded using syntax comprising flags indicative of coefficient significance, coefficient sign, and coefficient level.

12. The apparatus of claim 11 , wherein subsequent non-zero coefficients from among the quantized transform coefficients having a value less than the specified value are decoded by decoding only the respective signs of the subsequent non-zero coefficients having the value less than the specified value.

13. The apparatus of claim 11 , wherein a level of the current one of the quantized transform coefficients is decoded by decoding a difference value previously determined between an actual value of the current one of the quantized transform coefficients and the specified value, and adding the difference value to the specified value to obtain the level.

14. The apparatus of claim 11 , wherein at least a sig_flag syntax element, the flag, a last_flag syntax element, a Bin_1 syntax element, a level syntax element, and a sign syntax element are encoded in a same scanning order, the sig_flag syntax element for indicating whether the current one of the quantized transform coefficients has a non-zero value, the last_flag for indicating whether the current one of the quantized transform coefficients having the non-zero value is a last quantized transform coefficient having the non-zero value in the block in a given scanning order, the Bin_1 syntax element for indicating that an absolute value of the current one of the quantized transform coefficients has a currently unknown non-zero value, the level syntax element for indicating an absolute value of the current one of the quantized transform coefficients when the current one of the quantized transform coefficients has the absolute value greater than the specified value, and the sign syntax element for indicating a corresponding sign of the current one of the quantized transform coefficients.

15. A method, comprising:

decoding at least a block in a picture by entropy decoding quantized transform coefficients, de-quantizing the quantized transform coefficients to obtain transform coefficients, and inverse transforming the transform coefficients to obtain a reconstructed residue of the block for use in reconstructing the block, quantized transform coefficients are decoded wherein a flag indicates that a current one of the quantized transform coefficients being processed is a last non-zero coefficient for the block having a value greater than or equal to a specified value, wherein the specified value is selected from among a plurality of values, said selected value remains fixed for the block, and said flag is-a syntax element, and wherein the quantized transform coefficients are encoded using syntax comprising flags indicative of coefficient significance, coefficient sign, and coefficient level.

16. The method of claim 15 , wherein subsequent non-zero coefficients from among the quantized transform coefficients having a value less than the specified value are decoded by decoding only the respective signs of the subsequent non-zero coefficients having the value less than the specified value.

17. The method of claim 15 , wherein a level of the current one of the quantized transform coefficients is decoded by decoding a difference value previously determined between an actual value of the current one of the quantized transform coefficients and the specified value, and adding the difference value to the specified value to obtain the level.

18. The method of claim 15 , wherein at least a sig_flag syntax element, the flag, a last_flag syntax element, a Bin_1 syntax element, a level syntax element, and a sign syntax element are encoded in a same scanning order, the sig_flag syntax element for indicating whether the current one of the quantized transform coefficients has a non-zero value, the last_flag for indicating whether the current one of the quantized transform coefficients having the non-zero value is a last quantized transform coefficient having the non-zero value in the block in a given scanning order, the Bin_1 syntax element for indicating that an absolute value of the current one of the quantized transform coefficients has a currently unknown non-zero value, the level syntax element for indicating an absolute value of the current one of the quantized transform coefficients when the current one of the quantized transform coefficients has the absolute value greater than the specified value, and the sign syntax element for indicating a corresponding sign of the current one of the quantized transform coefficients.

19. A non-transitory computer readable storage medium having instructions stored therein, which when executed by a processor, implement a method comprising:

decoding at least a block in a picture by entropy decoding quantized transform coefficients, de-quantizing the quantized transform coefficients to obtain transform coefficients, and inverse transforming the transform coefficients to obtain a reconstructed residue of the block for use in reconstructing the block, quantized transform coefficients are decoded wherein a flag indicates that a current one of the quantized transform coefficients being processed is a last non-zero coefficient for the block having a value greater than or equal to a specified value, wherein the specified value is selected from among a plurality of values, said selected value remains fixed for the block, and said flag is a syntax element.

20. The non-transitory computer readable storage medium of claim 19 , wherein subsequent non-zero coefficients from among the quantized transform coefficients having a value less than the specified value are decoded by decoding only the respective signs of the subsequent non-zero coefficients having the value less than the specified value.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 30, 2021
From: THOMSON LICENSING
To: INTERDIGITAL VC HOLDINGS, INC.
Reel/Frame 058287/0874 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 30, 2021
From: HU, YANG; SOLE, JOEL; LU, XIAOAN; YIN, PENG; ZHENG, YUNFEI
To: THOMSON LICENSING
Reel/Frame 058243/0676 →
Continuity (7)
Continuation 16878689 · May 20, 2020
Continuation 16123219 · Sep 6, 2018
Continuation 15791470 · Oct 24, 2017
Continuation 15602482 · May 23, 2017
Continuation 13879378
Provisional Application 61393195 · Oct 14, 2010
Related Publication 20220086488A1 · Mar 17, 2022
Cited By (2)
US 12,634,457 US 12,713,066