IP Library › Granted Patent US 12,126,802
Granted Patent B2
US 12,126,802 · App. 17/473,440 · Granted Oct 22, 2024

Partitions on sub-block transform mode

Inventors: Hongbin Liu (Beijing, CN); Li Zhang (San Diego, CA); Kai Zhang (San Diego, CA); Jizheng Xu (San Diego, CA); Weijia Zhu (San Diego, CA); Yue Wang (Beijing, CN)
Assignees: BEIJING BYTEDANCE NETWORK TECHNOLOGY CO., LTD.; BYTEDANCE INC.
H04N19/122H04N19/105H04N19/119H04N19/13H04N19/14H04N19/157H04N19/176H04N19/60H04N19/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 12,126,802
App. No.
17/473,440
Granted
Oct 22, 2024
Kind
B2
Abstract

A method for video processing includes applying a sub-block residual coding scheme to a current video block, wherein the residual of the current video block is split into a plurality of sub-blocks each having a size of M*N, determining at least one sub-block with non-zero coefficients based on characteristic associated with each of the plurality of sub-blocks; coding the residue of the current video block based on the derived at least one sub-block with non-zero coefficients.

Claims (65)

1. A method of processing video data, comprising:

determining, based on a block dimension of a current video block of a video, whether a sub-block residual coding scheme is applied to residual of the current video block, wherein the sub-block residual coding scheme splits the residual of the current video block into multiple sub-blocks and a subset of the multiple sub-blocks has non-zero coefficients;

determining, based on the block dimension of the current video block, a specific split pattern to be applied to the residual of the current video block, in response to the sub-block residual coding scheme being applied to the residual of the current video block;

deriving the subset of the multiple sub-blocks which has non-zero coefficients; and

performing a conversion between the current video block and a bitstream of the video based on the determined subset of the multiple sub-blocks having non-zero coefficients;

wherein the determining of whether the sub-block residual coding scheme is applied to the residual of the current video block comprises that the sub-block residual coding scheme is not allowed in response to a size of the current video block satisfying at least one of: a width of the current video block being larger than threshold 1 (th1) or a height of the current video block being larger than threshold 2 (th2), wherein th1 and th2 are integers.

2. The method of claim 1 , wherein th1=th2=64.

3. The method of claim 1 , wherein determining whether the sub-block residual coding scheme is applied to residual of the current video block based on the block dimension of the current video block, comprises that the sub-block residual coding scheme is not allowed in response to the width of the current video block being smaller than or equal to threshold 3 (th3) and the height of the current video block being smaller than or equal to threshold 4 (th4), wherein th3 and th4 are integers.

4. The method of claim 1 , wherein determining whether the sub-block residual coding scheme is applied to residual of the current video block based on the block dimension of the current video block, comprises that the sub-block residual coding scheme is not allowed in response to the width of the current video block being smaller than threshold 5 (th5) and the height of the current video block being smaller than threshold 6 (th6), wherein th5 and th6 are integers.

5. The method of claim 4 , wherein th5=th6=8.

6. The method of claim 1 , wherein determining the specific split pattern based on the block dimension of the current video block, comprises that the current video block is not split into a pattern in which one of sub-blocks has a size of W/4*H, in response to the width of the current video block being smaller than threshold 7 (th7), wherein W and H represent the width of the current video block and the height of the current video block respectively and th7 is an integer.

7. The method of claim 6 , wherein th7=16.

8. The method of claim 1 , wherein determining the specific split pattern based on the block dimension of the current video block, comprises that the current video block is not split into a pattern in which one of sub-blocks has a size of W/2*H, in response to the width of the current video block being smaller than threshold 8 (th8), wherein W and H represent the width of the current video block and the height of the current video block respectively and th8 is an integer.

9. The method of claim 1 , wherein determining the specific split pattern based on the block dimension of the current video block, comprises that the current video block is not split into a pattern in which one of sub-blocks has a size of W*H/4, in response to the height of the current video block being smaller than threshold 9 (th9), wherein W and H represent the width of the current video block and the height of the current video block respectively and th9 is an integer.

10. The method of claim 9 , wherein th9=16.

11. The method of claim 1 , wherein determining the specific split pattern based on the block dimension of the current video block, comprises that the current video block is not split into a pattern in which one of sub-blocks has a size of W*H/2, in response to the height of the current video block being smaller than threshold 10 (th10), wherein W and H represent the width of the current video block and the height of the current video block respectively and th10 is an integer.

12. The method of claim 1 , wherein determining the specific split pattern based on the block dimension of the current video block, comprises that the current video block is not split horizontally, in response to a ratio of a width to a height W/H being larger than threshold 11 (th11), wherein W and H represent the width and the height of the current video block respectively and th11 is an integer.

13. The method of claim 1 , wherein determining the specific split pattern based on the block dimension of the current video block, comprises that the current video block is not split horizontally to generate a pattern in which one of sub-blocks has a size of W H/4, in response to W/H being larger than threshold 12 (th12), wherein W and H represent the width and the height of the current video block respectively and th12 is an integer.

14. The method of claim 1 , wherein determining the specific split pattern based on the block dimension of the current video block, comprises that the current video block is not split vertically, in response to a ratio of a height to a width H/W being larger than threshold 13 (th13), wherein W and H represent the width and the height of the current video block respectively and th13 is an integer.

15. The method of claim 1 , wherein determining the specific split pattern based on the block dimension of the current video block, comprises that the current video block is not split vertically to generate a pattern in which one of sub-blocks has a size of W/4*H, in response to H/W being larger than threshold 14 (th14), wherein W and H represent the width and the height of the current video block respectively and th14 is an integer.

16. The method of claim 1 , wherein the conversion includes encoding the current video block into the bitstream.

17. The method of claim 1 , wherein the conversion includes decoding the current video block from the bitstream.

18. An apparatus for processing video data comprising a processor and a non-transitory memory with instructions thereon, wherein the instructions upon execution by the processor, cause the processor to:

determine, based on a block dimension of a current video block of a video, whether a sub-block residual coding scheme is applied to residual of the current video block, wherein the sub-block residual coding scheme splits the residual of the current video block into multiple sub-blocks and a subset of the multiple sub-blocks has non-zero coefficients;

determine, based on the block dimension of the current video block, a specific split pattern to be applied to the residual of the current video block, in response to the sub-block residual coding scheme being applied to the residual of the current video block;

derive the subset of the multiple sub-blocks which has non-zero coefficients; and

perform a conversion between the current video block and a bitstream of the video based on the determined subset of the multiple sub-blocks having non-zero coefficients;

wherein the determining of whether the sub-block residual coding scheme is applied to the residual of the current video comprises that the sub-block residual coding scheme is not allowed in response to a size of the current video block satisfying at least one of: a width of the current video block being larger than threshold 1 (th1) or a height of the current video block being larger than threshold 2 (th2), wherein th1 and th2 are integers.

19. The apparatus of claim 18 , wherein determining whether the sub-block residual coding scheme is applied to residual of the current video block based on the block dimension of the current video block, comprises at least one of the following that:

the sub-block residual coding scheme is not allowed in response to the width of the current video block being smaller than or equal to threshold 3 (th3) and the height of the current video block being smaller than or equal to threshold 4 (th4), wherein th3 and th4 are integers; or

the sub-block residual coding scheme is not allowed in response to the width of the current video block being smaller than threshold 5 (th5) and the height of the current video block being smaller than threshold 6 (th6), wherein th5 and th6 are integers; and

determining the specific split pattern based on the block dimension of the current video block, comprises at least one of the following that:

the current video block is not split into a pattern in which one of sub-blocks has a size of W/4*H, in response to the width of the current video block being smaller than threshold 7 (th7), wherein W and H represent the width of the current video block and the height of the current video block respectively and th7 is an integer; or

the current video block is not split into a pattern in which one of sub-blocks has a size of W/2*H, in response to the width of the current video block being smaller than threshold 8 (th8), wherein W and H represent the width of the current video block and the height of the current video block respectively and th8 is an integer; or

the current video block is not split into a pattern in which one of sub-blocks has a size of W*H/4, in response to the height of the current video block being smaller than threshold 9 (th9), wherein W and H represent the width of the current video block and the height of the current video block respectively and th9 is an integer; or

the current video block is not split into a pattern in which one of sub-blocks has a size of W*H/2, in response to the height of the current video block being smaller than threshold 10 (th10), wherein W and H represent the width of the current video block and the height of the current video block respectively and th10 is an integer; or

the current video block is not split horizontally, in response to a ratio of a width to a height W/H being larger than threshold 11 (th11), wherein W and H represent the width and the height of the current video block respectively and th11 is an integer; or

the current video block is not split horizontally to generate a pattern in which one of sub-blocks has a size of W*H/4, in response to W/H being larger than threshold 12 (th12), wherein W and H represent the width and the height of the current video block respectively and th12 is an integer; or

the current video block is not split vertically, in response to a ratio of a height to a width H/W being larger than threshold 13 (th13), wherein W and H represent the width and the height of the current video block respectively and th13 is an integer; or

the current video block is not split vertically to generate a pattern in which one of sub-blocks has a size of W/4*H, in response to H/W being larger than threshold 14 (th14), wherein W and H represent the width and the height of the current video block respectively and th14 is an integer.

20. A non-transitory computer-readable storage medium storing instructions that cause a processor to:

determine, based on a block dimension of a current video block of a video, whether a sub-block residual coding scheme is applied to residual of the current video block, wherein the sub-block residual coding scheme splits the residual of the current video block into multiple sub-blocks and a subset of the multiple sub-blocks has non-zero coefficients;

determine, based on the block dimension of the current video block, a specific split pattern to be applied to the residual of the current video block, in response to the sub-block residual coding scheme being applied to the residual of the current video block;

derive the subset of the multiple sub-blocks which has non-zero coefficients; and

perform a conversion between the current video block and a bitstream of the video based on the determined subset of the multiple sub-blocks having non-zero coefficients;

wherein the determining of whether the sub-block residual coding scheme is applied to the residual of the current video block comprises that the sub-block residual coding scheme is not allowed in response to a size of the current video block satisfying at least one of: a width of the current video block being larger than threshold 1 (th1) or a height of the current video block being larger than threshold 2 (th2), wherein th1 and th2 are integers.

21. The non-transitory computer-readable storage medium of claim 20 , wherein determining whether the sub-block residual coding scheme is applied to residual of the current video block based on the block dimension of the current video block, comprises at least one of the following that:

the sub-block residual coding scheme is not allowed in response to the width of the current video block being smaller than or equal to threshold 3 (th3) and the height of the current video block being smaller than or equal to threshold 4 (th4), wherein th3 and th4 are integers; or

the sub-block residual coding scheme is not allowed in response to the width of the current video block being smaller than threshold 5 (th5) and the height of the current video block being smaller than threshold 6 (th6), wherein th5 and th6 are integers; and

determining the specific split pattern based on the block dimension of the current video block, comprises at least one of the following that:

the current video block is not split into a pattern in which one of sub-blocks has a size of W/4*H, in response to the width of the current video block being smaller than threshold 7 (th7), wherein W and H represent the width of the current video block and the height of the current video block respectively and th7 is an integer; or

the current video block is not split into a pattern in which one of sub-blocks has a size of W/2*H, in response to the width of the current video block being smaller than threshold 8 (th8), wherein W and H represent the width of the current video block and the height of the current video block respectively and th8 is an integer; or

the current video block is not split into a pattern in which one of sub-blocks has a size of W*H/4, in response to the height of the current video block being smaller than threshold 9 (th9), wherein W and H represent the width of the current video block and the height of the current video block respectively and th9 is an integer; or

the current video block is not split into a pattern in which one of sub-blocks has a size of W*H/2, in response to the height of the current video block being smaller than threshold 10 (th10), wherein W and H represent the width of the current video block and the height of the current video block respectively and th10 is an integer; or

the current video block is not split horizontally, in response to a ratio of a width to a height W/H being larger than threshold 11 (th11), wherein W and H represent the width and the height of the current video block respectively and th11 is an integer; or

the current video block is not split horizontally to generate a pattern in which one of sub-blocks has a size of W*H/4, in response to W/H being larger than threshold 12 (th12), wherein W and H represent the width and the height of the current video block respectively and th12 is an integer; or

the current video block is not split vertically, in response to a ratio of a height to a width H/W being larger than threshold 13 (th13), wherein W and H represent the width and the height of the current video block respectively and th13 is an integer; or

the current video block is not split vertically to generate a pattern in which one of sub-blocks has a size of W/4*H, in response to H/W being larger than threshold 14 (th14), wherein W and H represent the width and the height of the current video block respectively and th14 is an integer.

22. A method for storing a bitstream of a video, comprising:

determining, based on a block dimension of a current video block of a video, whether a sub-block residual coding scheme is applied to residual of the current video block, wherein the sub-block residual coding scheme splits the residual of the current video block into multiple sub-blocks and a subset of the multiple sub-blocks has non-zero coefficients;

determining, based on the block dimension of the current video block, a specific split pattern to be applied to the residual of the current video block, in response to the sub-block residual coding scheme being applied to the residual of the current video block;

deriving the subset of the multiple sub-blocks which has non-zero coefficients;

generating the bitstream based on the determined subset of the multiple sub-blocks having non-zero coefficients; and

storing the bitstream in a non-transitory computer-readable recording medium;

wherein the determining of whether the sub-block residual coding scheme is applied to the residual of the current video block comprises that the sub-block residual coding scheme is not allowed in response to a size of the current video block satisfying at least one of: a width of the current video block being larger than threshold 1 (th1) or a height of the current video block being larger than threshold 2 (th2), wherein th1 and th2 are integers.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 13, 2021
From: ZHANG, LI; ZHANG, KAI; XU, JIZHENG; ZHU, WEIJIA
To: BYTEDANCE INC.
Reel/Frame 057466/0087 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 13, 2021
From: LIU, HONGBIN; WANG, YUE
To: BEIJING BYTEDANCE NETWORK TECHNOLOGY CO., LTD.
Reel/Frame 057466/0401 →
Priority Claims (2)
WO PCT/CN2019/077942 · Mar 13, 2019 · international
WO PCT/CN2019/082428 · Apr 12, 2019 · international
Continuity (2)
Continuation PCTCN2020079235 · Mar 13, 2020
Related Publication 20220007057A1 · Jan 6, 2022
Cited By (1)
US 12,563,194