IP Library Granted Patent US 11,611,748
Granted Patent B2
US 11,611,748 · App. 17/033,468 · Granted Mar 21, 2023

Transform coefficient block coding

Inventors: Paul Haase (Berlin, DE); Christian Rudat (Berlin, DE); Heiner Kirchhoffer (Berlin, DE); Phan Hoang Tung Nguyen (Berlin, DE); Mischa Siekmann (Berlin, DE); Heiko Schwarz (Berlin, DE); Detlev Marpe (Berlin, DE); Thomas Wiegand (Berlin, DE)
Assignee: FRAUNHOFER-GESELLSCHAFT ZUR FÖRDERUNG DER ANGEWANDTEN FORSCHUNG E.V.
H04N19/124H04N19/129H04N19/13H04N19/157H04N19/172H04N19/176H04N19/18H04N19/186H04N19/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,611,748
App. No.
17/033,468
Granted
Mar 21, 2023
Kind
B2
Abstract

An encoder encodes transform coefficients of a transform coefficient block representing a block of a picture using a scan pattern which sequentially traverses the transform coefficients of the transform block by encoding absolute values of quantization levels of the transform coefficients. The absolute values are binarized with a binarization comprising a first part of the binarization below a cutoff value and a second part of the binarization, prefixed by a codeword of the first part of the binarization for the cutoff value, above the cutoff value. The encoder adaptively, based on previously encoded transform coefficients, decreases the cutoff value to zero monotonically during encoding of the transform coefficients so that the binarization comprises the second part of the binarization and not the first part of the binarization.

Claims (29)

1. An encoder, comprising at least one processor and memory, the memory comprising instructions which, when executed by the at least one processor, cause the encoder to:

encode, into a data stream, transform coefficients of a transform coefficient block representing a block of a picture using a scan pattern which sequentially traverses the transform coefficients of the transform block by encoding absolute values of quantization levels of the transform coefficients, wherein the absolute values are binarized with a binarization comprising a first part of the binarization below a cutoff value and a second part of the binarization, prefixed by a codeword of the first part of the binarization for the cutoff value, above the cutoff value; and

adaptively, based on previously encoded transform coefficients, decrease the cutoff value to zero monotonically dueing encoding of the transform coefficients so that the binarization comprises the second part of the binarization and not the first part of the binarization.

2. The encoder of claim 1 , wherein a first bin of the first part of the binarization indicates whether the quantization level of a transform coefficient to which the binarization relates is significant, i.e., non-zero, a second bin in bin order of the first part of the binarization indicates whether the absolute value of the quantization level of the transform coefficient is greater than 1 or not, a third bin in bin order of the first part of the binarization indicates whether the absolute value of the transform coefficient is odd or even, and a fourth bin of the first part of the binarization indicates whether or not the transform coefficient is greater than 3.

3. A decoder comprising at least one processor and memory, the memory comprising instructions which, when executed by the at least one processor, cause the decoder to:

decode, from a data stream, transform coefficients of a transform coefficient block representing a block of a picture using a scan pattern which sequentially traverses the transform coefficients of the transform coefficient block by decoding absolute values of quantization levels of the transform coefficients, wherein the absolute values are binarized with a binarization comprising a first part of the binarization below a cutoff value and a second part of the binarization, prefixed by a codeword of the first part of the binarization for the cutoff value, above the cutoff value; and

adaptively, based on previously encoded transform coefficients, decrease the cutoff value to zero monotonically dueing encoding of the transform coefficients so that the binarization comprises the second part of the binarization and not the first part of the binarization.

4. The decoder of claim 3 , wherein the memory further comprising instructions which, when executed by the at least one processor, cause the decoder to

decode a first part of the binarization using context-adaptive entropy decoding, and

decode a second part of the binarization using an equi-probability bypass mode, wherein the second part of the binarization comprises a prefix part and a suffix part and the binarization parameter determines a length of the prefix part.

5. The decoder of claim 4 , the memory further comprising instructions which, when executed by the at least one processor cause the decoder wherein the binarization parameter is an Exp Golomb order or a Rice parameter.

6. The decoder of claim 4 , the memory further comprising instructions which, when executed by the at least one processor cause the decoder to set the binarization parameter by mapping the sum of absolute values of quantization levels of the one or more previously encoded transform coefficients using a lookup table onto the binarization parameter.

7. The decoder of claim 3 , the memory further comprising instructions which, when executed by the at least one processor cause the decoder to set the binarization parameter based on one or more previously decoded transform coefficients located at positions determined by a local template positioned at the currently decoded transform coefficient.

8. The decoder of claim 3 , the memory further comprising instructions which, when executed by the at least one processor cause the decoder to:

decode the bins of the first part of the binarization using context-adaptive entropy decoding, and decode the bins of the second part of the binarization using an equi-probability bypass mode; and

set the cutoff value for a currently decoded transform coefficient depending on a number of bins of the first part of the binarization code that have been previously decoded using context-adaptive entropy encoding within the transform coefficient block.

9. The decoder of claim 3 , wherein a first bin of the first part of the binarization indicates whether the quantization level of a transform coefficient to which the binarization relates is significant, i.e., non-zero, a second bin in bin order of the first part of the binarization indicates whether the absolute value of the quantization level of the transform coefficient is greater than 1 or not, a third bin in bin order of the first part of the binarization indicates whether the absolute value of the transform coefficient is odd or even, and a fourth bin of the first part of the binarization indicates whether or not the transform coefficient is greater than 3.

10. A method for encoding a picture into a data stream, comprising:

encoding, into the data stream, transform coefficients of a transform coefficient block representing a block of the picture using a scan pattern which sequentially traverses the transform coefficients of the transform coefficient block by encoding absolute values of quantization levels of the transform coefficients, wherein the absolute values are binarized with a binarization comprising a first part of the binarization below a cutoff value and a second part of the binarization, prefixed by a codeword of the first part of the binarization code for the cutoff value, above the cutoff value; and

adaptively, based on previously encoded transform coefficients, decreasing the cutoff value to zero monotonically during encoding of the transform coefficients so that the binarization comprises the second part of the binarization and not the first part of the binarization.

11. A method for decoding a picture from a data stream, comprising:

decoding, from the data stream, transform coefficients of a transform coefficient block representing a block of a picture using a scan pattern which sequentially traverses transform coefficients of the transform coefficient block by decoding absolute values of quantization levels of the transform coefficients, wherein the absolute values are binarized with a binarization comprising a first part of the binarization below a cutoff value and a second part of the binarization, prefixed by a codeword of the first part of the binarization for the cutoff value, above the cutoff value; and

adaptively, based on previously encoded transform coefficients, decreasing the cutoff value to zero monotonically during encoding of the transform coefficients so that the binarization comprises the second part of the binarization and not the first part of the binarization.

12. A non-transitory digital storage medium having a computer program stored thereon to perform, when the computer program is run by a computer, a method of encoding a picture into a data stream, the method comprising:

encoding, into the data stream, transform coefficients of a transform coefficient block representing a block of the picture using a scan pattern which sequentially traverses the transform coefficients of the transform coefficient block by encoding absolute values of quantization levels of the transform coefficients, wherein the absolute values are binarized with a binarization comprising a first part of the binarization below a cutoff value and a second part of the binarization, prefixed by a codeword of the first part of the binarization code for the cutoff value, above the cutoff value; and

adaptively, based on previously encoded transform coefficients, decreasing the cutoff value to zero monotonically during encoding of the transform coefficients so that the binarization comprises the second part of the binarization and not the first part of the binarization.

13. A non-transitory digital storage medium having a computer program stored thereon to perform, when the computer program is run by a computer, a method for decoding a picture from a data stream, the method comprising:

decoding, from the data stream, transform coefficients of a transform coefficient block representing a block of a picture using a scan pattern which sequentially traverses transform coefficients of the transform coefficient block by decoding absolute values of quantization levels of the transform coefficients, wherein the absolute values are binarized with a binarization comprising a first part of the binarization below a cutoff value and a second part of the binarization, prefixed by a codeword of the first part of the binarization for the cutoff value, above the cutoff value; and

adaptively, based on previously encoded transform coefficients, decreasing the cutoff value to zero monotonically during encoding of the transform coefficients so that the binarization comprises the second part of the binarization and not the first part of the binarization.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 15, 2020
From: HAASE, PAUL; RUDAT, CHRISTIAN; KIRCHHOFFER, HEINER; NGUYEN, PHAN HOANG TUNG; SIEKMANN, MISCHA; SCHWARZ, HEIKO; MARPE, DETLEV; WIEGAND, THOMAS
To: FRAUNHOFER-GESELLSCHAFT ZUR FÖRDERUNG DER ANGEWANDTEN FORSCHUNG E.V.
Reel/Frame 054655/0812 →
Priority Claims (1)
EP 18165247 · Mar 29, 2018 · regional
Continuity (2)
Continuation PCTEP2019057895 · Mar 28, 2019
Related Publication 20210029359A1 · Jan 28, 2021