IP Library Granted Patent US 10,397,577
Granted Patent B2
US 10,397,577 · App. 13/413,526 · Granted Aug 27, 2019

Inverse scan order for significance map coding of transform coefficients in video coding

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 10,397,577
App. No.
13/413,526
Granted
Aug 27, 2019
Kind
B2
Abstract

This disclosure describes techniques for coding transform coefficients associated with a block of residual video data in a video coding process. Aspects of this disclosure include the selection of a scan order for both significance map coding and level coding, as well as the selection of contexts for entropy coding consistent with the selected scan order. This disclosure proposes a harmonization of the scan order to code both the significance map of the transform coefficients as well as to code the levels of the transform coefficient. It is proposed that the scan order for the significance map should be in the inverse direction (i.e., from the higher frequencies to the lower frequencies). This disclosure also proposes that transform coefficients be scanned in sub-sets as opposed to fixed sub-blocks. In particular, transform coefficients are scanned in a sub-set consisting of a number of consecutive coefficients according to the scan order.

Claims (35)

1. A method of coding transform coefficients associated with residual video data in a video coding process, the method comprising:

coding a respective syntax element for each transform coefficient in a block of transform coefficients with a first scan pass, wherein each respective syntax element indicates whether or not a corresponding transform coefficient in the block of transform coefficients is a significant coefficient having an absolute value greater than zero, and wherein the first scan pass proceeds in an inverse scan direction from higher frequency coefficients in the block of transform coefficients to lower frequency coefficients in the block of transform coefficients; and

coding information indicating levels of the significant transform coefficients in the block of transform coefficients with a second scan pass.

2. The method of claim 1 , further comprising:

determining contexts for context adaptive binary arithmetic coding (CABAC) of each respective syntax element indicating a current one of the significant coefficients based on previously coded significant coefficients in the inverse scan direction.

3. The method of claim 2 , wherein, if a previously coded significant coefficient is located outside of a transform block, a coded level information for the previously coded significant coefficient is assumed to be zero.

4. The method of claim 2 , wherein the first scan pass has a diagonal pattern and the previously coded significant coefficients reside at positions to the right of a scan line on which a current one of the significant coefficients resides.

5. The method of claim 2 , wherein the first scan pass has a horizontal pattern and the previously coded significant coefficients reside at positions below a scan line on which a current one of the significant coefficients resides.

6. The method of claim 2 , wherein the first scan pass has a vertical pattern and the previously coded significant coefficients reside at positions to the right of a scan line on which a current one of the significant coefficients resides.

7. A system for coding transform coefficients associated with residual video data in a video coding process, the system comprising:

a memory configured to store a block of transform coefficients; and

a video coding processor comprising an integrated circuit, the video coding processor configured to:

code a respective syntax element for each transform coefficient in a block of transform coefficients with a first scan pass, wherein each respective syntax element indicates whether or not a corresponding transform coefficient in the block of transform coefficients is a significant coefficient having an absolute value greater than zero, and wherein the first scan pass proceeds in an inverse scan direction from higher frequency coefficients in the block of transform coefficients to lower frequency coefficients in the block of transform coefficients; and

code information indicating levels of the significant transform coefficients in the block of transform coefficients with a second scan pass.

8. The system of claim 7 , wherein the video coding processor is further configured to determine contexts for context adaptive binary arithmetic coding (CABAC) of each respective syntax element indicating a current one of the significant coefficients based on previously coded significant coefficients in the inverse scan direction.

9. The apparatus of claim 8 , wherein, if a previously coded significant coefficient is located outside of a transform block, a coded level information for the previously coded significant coefficient is assumed to be zero.

10. The system of claim 8 , wherein the first scan pass has a diagonal pattern and the previously coded significant coefficients reside at positions to the right of a scan line on which a current one of the significant coefficients resides.

11. The system of claim 8 , wherein the first scan pass has a horizontal pattern and the previously coded significant coefficients reside at positions below a scan line on which a current one of the significant coefficients resides.

12. The system of claim 8 , wherein the first scan pass has a vertical pattern and the previously coded significant coefficients reside at positions to the right of a scan line on which a current one of the significant coefficients resides.

13. A non-transitory computer-readable storage medium having stored thereon instructions that, when executed, cause one or more processors of a device for coding transform coefficients associated with residual video data in a video coding process to:

code a respective syntax element for each transform coefficient in a block of transform coefficients with a first scan pass, wherein each respective syntax element indicates whether or not a corresponding transform coefficient in the block of transform coefficients is a significant coefficient having an absolute value greater than zero, and wherein the first scan pass proceeds in an inverse scan direction from higher frequency coefficients in the block of transform coefficients to lower frequency coefficients in the block of transform coefficients; and

code information indicating levels of the significant transform coefficients in the block of transform coefficients with a second scan pass.

14. The non-transitory computer-readable storage medium of claim 13 , further causing a processor to:

determine contexts for context adaptive binary arithmetic coding (CABAC) of each respective syntax element indicating a current one of the significant coefficients based on previously coded significant coefficients in the inverse scan direction.

15. The non-transitory computer-readable storage medium of claim 14 , wherein the first scan pass has a diagonal pattern and the previously coded significant coefficients reside at positions to the right of a scan line on which a current one of the significant coefficients resides.

16. The non-transitory computer-readable storage medium of claim 14 , wherein the first scan pass has a horizontal pattern and the previously coded significant coefficients reside at positions below a scan line on which a current one of the significant coefficients resides.

17. The non-transitory computer-readable storage medium of claim 14 , wherein the first scan pass has a vertical pattern and the previously coded significant coefficients reside at positions to the right of a scan line on which a current one of the significant coefficients resides.

18. The method of claim 1 , wherein the video coding process is a video decoding process, and wherein the method further comprises:

inverse transforming the block of transform coefficients to produce a block of residual video data;

performing a prediction process on the block of residual video data to identify predictive video data; and

combining the predictive video data with the block of residual video data to produce decoded video data.

19. The system of claim 7 , wherein the video coding processor is a video decoding processor, and wherein the video decoding processor is further configured to:

inverse transform the block of transform coefficients to produce a block of residual video data;

perform a prediction process on the block of residual video data to identify predictive video data; and

combine the predictive video data with the block of residual video data to produce decoded video data.

Assignments (6)
RELEASE OF SECURITY INTEREST Recorded Jul 26, 2022
From: CORTLAND CAPITAL MARKET SERVICES LLC
To: VELOS MEDIA, LLC AND VELOS MEDIA MANAGEMENT, LLC
Reel/Frame 060923/0407 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 23, 2021
From: VELOS MEDIA, LLC
To: QUALCOMM INCORPORATED
Reel/Frame 057575/0431 →
RELEASE OF SECURITY INTEREST Recorded Sep 21, 2021
From: CORTLAND CAPITAL MARKET SERVICES LLC
To: VELOS MEDIA, LLC AND VELOS MEDIA MANAGEMENT, LLC
Reel/Frame 057554/0540 →
SECOND AMENDED AND RESTATED MEMBER INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Apr 2, 2018
From: VELOS MEDIA MANAGEMENT, LLC; VELOS MEDIA, LLC
To: CORTLAND CAPITAL MARKET SERVICES LLC, AS COLLATERAL AGENT
Reel/Frame 045806/0030 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 2, 2017
From: QUALCOMM INCORPORATED
To: VELOS MEDIA, LLC
Reel/Frame 043173/0291 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 6, 2012
From: SOLE ROJALS, JOEL; JOSHI, RAJAN LAXMAN; KARCZEWICZ, MARTA
To: QUALCOMM INCORPORATED
Reel/Frame 027815/0685 →
Cited By (1)
US 12,186,395