IP Library › Granted Patent US 11,070,843
Granted Patent B2
US 11,070,843 · App. 17/001,715 · Granted Jul 20, 2021

Coding of last significant coefficient flags

Inventor: Dake He (Sunnyvale, CA)
Assignee: GOOGLE LLC
H04N19/61H04N19/174H04N19/18H04N19/64H04N19/70H04N19/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,070,843
App. No.
17/001,715
Granted
Jul 20, 2021
Kind
B2
Abstract

An apparatus for decoding a transform block that is decoded using a scan order includes a processor that is configured to decode, from an encoded bitstream, a first syntax element indicating a group of consecutive scan positions in the scan order, where the group of consecutive scan positions includes a scan position of a last non-zero coefficient; determine an offset within the group of consecutive scan positions of the last non-zero coefficient; and decode, from the encoded bitstream, coefficients up to the last non-zero coefficient of the transform block.

Claims (49)

1. An apparatus for decoding a transform block, wherein the transform block is decoded using a scan order, the apparatus comprising:

a processor configured to:

decode, from an encoded bitstream, a first syntax element indicating a group of consecutive scan positions in the scan order, wherein the scan order is a one-dimensional structure that specifies an order of traversal of coefficients of the transform block, and wherein the group of consecutive scan positions includes a scan position of a last non-zero coefficient;

determine an offset within the group of consecutive scan positions of a last non-zero coefficient, wherein the offset indicates a distance from a first scan position of the group of consecutive scan positions; and

decode, from the encoded bitstream, coefficients up to the last non-zero coefficient of the transform block.

2. The apparatus of claim 1 , wherein to determine the offset within the group of consecutive scan positions of the last non-zero coefficient comprises to:

decode, from the encoded bitstream, a second syntax element indicative of the offset within the group of consecutive scan positions.

3. The apparatus of claim 1 , wherein to determine the offset within the group of consecutive scan positions of the last non-zero coefficient comprises to:

infer, based on the first syntax element, the offset within the group of consecutive scan positions.

4. The apparatus of claim 1 , wherein the processor further configured to:

decode, from the encoded bitstream, a sign map indicating respective signs of non-zero coefficients of the coefficients up to the last non-zero coefficient of the transform block.

5. The apparatus of claim 1 , wherein to decode, from the encoded bitstream, the coefficients up to the last non-zero coefficient of the transform block comprises to:

decode non-zero coefficients between and including a DC coefficient and the last non-zero coefficient.

6. The apparatus of claim 1 , wherein to decode, from the encoded bitstream, the coefficients up to the last non-zero coefficient of the transform block, comprises to:

decode each of the coefficients using a coefficient token tree.

7. The apparatus of claim 6 , wherein at least one node of the coefficient token tree maps a single coefficient value into a single token.

8. The apparatus of claim 6 , wherein at least one node of the coefficient token tree maps multiple coefficient values into a single token.

9. A method for decoding a transform block, wherein the transform block is decoded using a scan order, comprising:

decoding an end-of-block position by:

decoding, from an encoded bitstream, a first syntax element indicating a group of consecutive scan positions in the scan order, wherein the scan order is a one-dimensional structure that specifies an order of traversal of coefficients of the transform block, wherein the group of consecutive scan positions includes a scan position of a last non-zero coefficient;

determining an offset within the group of consecutive scan positions of the last non-zero coefficient, wherein the offset indicates a distance from a first scan position of the group of consecutive scan positions; and

using at least one of the group of consecutive scan positions in the scan order and the offset to determine the end-of-block position;

decoding, from the encoded bitstream, a sign map; and

decoding, from the encoded bitstream, coefficients up to and including the last non-zero coefficient.

10. The method of claim 9 , wherein determining the offset within the group of consecutive scan positions of the last non-zero coefficient comprises:

decoding, from the encoded bitstream, a second syntax element indicative of the offset within the group of consecutive scan positions.

11. The method of claim 9 , wherein determining the offset within the group of consecutive scan positions of the last non-zero coefficient comprises:

inferring, based on the first syntax element, the offset within the group of consecutive scan positions.

12. The method of claim 9 , wherein the sign map indicates respective signs of non-zero coefficients of the coefficients up to the last non-zero coefficient of the transform block.

13. The method of claim 9 , wherein decoding, from the encoded bitstream, the coefficients up to and including the last non-zero coefficient comprises:

decoding non-zero coefficients between and including a DC coefficient and the last non- zero coefficient.

14. The method of claim 9 , wherein decoding, from the encoded bitstream, the coefficients up to the last non-zero coefficient of the transform block, comprises:

decoding each of the coefficients using a token tree.

15. A non-transitory computer-readable storage medium, comprising executable instructions that, when executed by a processor, facilitate performance of operations for decoding a transform block decoded using a scan order, the operations comprising operations to:

decode an end-of-block position by operations to:

decode, from an encoded bitstream, a first syntax element indicating a group of consecutive scan positions in the scan order, wherein the scan order is one-dimensional structure that specifies an older of traversal of coefficients of the transform block.

wherein the group of consecutive scan positions includes a scan position of a last nonzero coefficient;

determine an offset within the group of consecutive scan positions of the last non-zero coefficient, wherein the offset indicates a distance from a first scan position of the group of consecutive scan positions; and

use at least one of the group of consecutive scan positions in the scan order and the offset to determine the end-of-block position; decode, from the encoded bitstream, a sign map; and

, from the encoded bitstream, coefficients up to and including the last non-zero coefficient.

16. The non-transitory computer-readable storage medium of claim 15 , wherein to determine the offset within the group of consecutive scan positions of the last non-zero coefficient comprises to:

decode, from the encoded bitstream, a second syntax element indicative of the offset within the group of consecutive scan positions.

17. The non-transitory computer-readable storage medium of claim 15 , wherein to determine the offset within the group of consecutive scan positions of the last non-zero coefficient comprises to:

infer, based on the first syntax element, the offset within the group of consecutive scan positions.

18. The non-transitory computer-readable storage medium of claim 15 , wherein the sign map indicates respective signs of non-zero coefficients of the coefficients up to the last non-zero coefficient of the transform block.

19. The non-transitory computer-readable storage medium of claim 15 , wherein to decode, from the encoded bitstream, the coefficients up to and including the last non-zero coefficient comprises to:

decode non-zero coefficients between and including a DC coefficient and the last non-zero coefficient.

20. The non-transitory computer-readable storage medium of claim 15 , wherein to decode, from the encoded bitstream, the coefficients up to the last non-zero coefficient of the transform block, comprises to:

decode each of the coefficients using a token tree.

Continuity (3)
Continuation 16680933 · Nov 12, 2019
Continuation 15707300 · Sep 18, 2017
Related Publication 20200396486A1 · Dec 17, 2020
Cited By (1)
US 12,676,991