IP Library Granted Patent US 10,264,271
Granted Patent B2
US 10,264,271 · App. 15/646,361 · Granted Apr 16, 2019

Coded-block-flag coding and derivation

Inventors: Bin Li (Hefei, CN); Jizheng Xu (Beijing, CN)
Assignee: Microsoft Technology Licensing, LLC
H04N19/18H04N19/132H04N19/463H04N19/96
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,264,271
App. No.
15/646,361
Granted
Apr 16, 2019
Kind
B2
Abstract

Techniques for coding and deriving (e.g., determining) one or more coded-block-flags associated with video content are described herein. A coded-block-flag of a last node may be determined when coded-block-flags of preceding nodes are determined to be a particular value and when a predetermined condition is satisfied. In some instances, the predetermined condition may be satisfied when log 2 (size of current transform unit) is less than log 2 (size of maximum transform unit) or log 2 (size of current coding unit) is less than or equal to log 2 (size of maximum transform unit)+1. The preceding nodes may be nodes that precede the last node on a particular level in a residual tree.

Claims (50)

1. A method comprising:

receiving, by a computing device, a bitstream corresponding to video content, the video content being associated with a plurality of nodes, the plurality of nodes including at least one preceding node and a last node;

determining, by the computing device, that the at least one preceding node is associated with a coded-block-flag indicating that the at least one preceding node does not include residual information;

determining, by the computing device, that a size of a node of the plurality of nodes is less than or equal to a predetermined maximum size, the predetermined maximum size being associated with a forced split; and

based at least in part on the determining that the at least one preceding node is associated with a coded-block-flag indicating that the at least one preceding node does not include residual information and the determining that the size of the node is less than or equal to the predetermined maximum size of the node, determining that the last node includes residual information.

2. The method of claim 1 , wherein each node of the plurality of nodes corresponds to a transform unit and a root transform unit of the plurality of nodes corresponds to a coding unit, the transform unit and the coding unit being defined by a High Efficiency Coding (HEVC) standard.

3. The method of claim 2 , wherein the determining that the size of the node is less than or equal to the predetermined maximum size includes determining that log 2(a size of a current transform unit)<log 2(the predetermined maximum size) or that log 2(a size of a current coding unit)≤log 2(the predetermined maximum size)+1, where the current transform unit is the last transform unit and the current coding unit is the root transform unit.

4. The method of claim 1 , wherein the computing device comprises a decoder and the bitstream is received from another computing device comprising an encoder.

5. The method of claim 1 , wherein the bitstream does not include a coded-block-flag associated with the last node.

6. The method of claim 1 , wherein the predetermined maximum size is a pixel size for the video content.

7. The method of claim 1 , wherein:

the at least one preceding node comprises three preceding nodes;

the plurality of nodes comprises the three preceding nodes and the last node; and

determining that the at least one preceding node is associated with the coded-block-flag indicating that the at least one preceding node does not include residual information comprises determining that each of the three preceding nodes is associated with respective coded-block-flags indicating that each of the three preceding node does not include residual information.

8. A system comprising:

one or more processors; and

one or more non-transitory computer-readable media storing computer-executable instructions that, when executed by the one or more processors, cause the one or more processors to perform operations comprising:

receiving a bitstream representing video content, the video content being associated with a plurality of transform units, the plurality of transform units including at least one preceding transform unit and a last transform unit;

determining that the at least one preceding transform unit is associated with a coded-block-flag indicating that the at least one preceding transform unit does not include residual information;

determining that a size of a transform unit of the plurality of transform units is less than or equal to a predetermined maximum size, the predetermined maximum size being associated with a forced split; and

based at least in part on the determining that the at least one preceding transform unit is associated with a coded-block-flag indicating that the at least one preceding transform unit does not include residual information and the determining that the size of the transform unit is less than or equal to the predetermined maximum size, inferring that the last transform unit includes residual information.

9. The system of claim 8 , wherein:

the at least one preceding transform unit comprises three preceding transform units;

the plurality of transform units comprise the three preceding transform units and the last transform unit; and

the plurality of transform units are represented with a residual quadtree structure.

10. The system of claim 9 , wherein the determining that the at least one preceding transform unit is associated with a coded-block-flag indicating that the at least one preceding transform unit does not include residual information comprises determining that each of the three preceding transform units are associated with coded-block-flags indicating that the three preceding transform units do not include residual information.

11. The system of claim 8 , wherein the determining that the size of the transform unit is less than or equal to the predetermined maximum size includes determining that log 2(a size of a current transform unit)<log 2(the predetermined maximum size) or that log 2(a size of a current coding unit)≤log 2(the predetermined maximum size)+1, where the current transform unit is the last transform unit and the current coding unit is a coding unit that is divided into the plurality of transform units.

12. The system of claim 8 , the operations further comprising determining that the bitstream does not include a coded-block-flag associated with the last transform unit.

13. The system of claim 8 , wherein the system comprises a decoder and the bitstream is received from another device comprising an encoder.

14. The system of claim 8 , wherein the bitstream includes an initial transform unit, and

the operations further comprising:

determining that the initial transform unit is greater than the predetermined maximum size; and

based at least in part on determining that the initial transform unit is greater than the predetermined maximum size, splitting the initial transform unit into the at least one preceding transform unit and the last transform unit.

15. A computing device comprising:

one or more processors; and

one or more non-transitory computer-readable media storing computer-executable instructions that, when executed by the one or more processors, cause the one or more processors to perform operations comprising:

identifying a bitstream corresponding to video content, the video content being associated with a plurality of nodes, the plurality of nodes including at least one preceding node and a last node;

determining that the at least one preceding node is associated with a coded-block-flag indicating that the at least one preceding node does not include residual information;

determining that a size of a node of the plurality of nodes is less than or equal to a predetermined maximum size, the predetermined maximum size being associated with a forced split; and

based at least in part on the determining that the at least one preceding node is associated with a coded-block-flag indicating that the at least one preceding node does not include residual information and the determining that the size of the node is less than or equal to the predetermined maximum size of the node, determining that the last node includes residual information.

16. The computing device of claim 15 , wherein:

each node of the plurality of nodes corresponds to a transform unit and a root transform unit of the plurality of nodes corresponds to a coding unit, the transform unit and the coding unit being defined by a High Efficiency Coding (HEVC) standard; and

the computing device includes a decoder configured to decode the bitstream according to the HEVC standard.

17. The computing device of claim 16 , wherein the determining that the size of the node is less than or equal to the predetermined maximum size includes determining that log 2(a size of a current transform unit)<log 2(the predetermined maximum size) or that log 2(a size of a current coding unit)≤log 2(the predetermined maximum size)+1, where the current transform unit is the last transform unit and the current coding unit is the root transform unit.

18. The computing device of claim 15 , wherein the bitstream does not include a coded-block-flag associated with the last node.

19. The computing device of claim 15 , wherein:

the at least one preceding node comprises three preceding nodes;

the plurality of nodes comprises the three preceding nodes and the last node; and

determining that the at least one preceding node is associated with the coded-block-flag indicating that the at least one preceding node does not include residual information comprises determining that each of the three preceding nodes is associated with respective coded-block-flags indicating that each of the three preceding node does not include residual information.

20. The computing device of claim 15 , wherein the computing device includes a decoder configured to decode the bitstream and the identifying the bitstream includes receiving the bitstream from another device comprising an encoder.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 11, 2017
From: LI, BIN; XU, JIZHENG
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 043150/0935 →
Continuity (2)
Continuation 13530849 · Jun 22, 2012
Related Publication 20170310978A1 · Oct 26, 2017
Cited By (5)
US 12,328,432 US 12,495,141 US 12,556,699 US 12,587,648 US 12,598,300