IP Library › Granted Patent US 11,638,026
Granted Patent B2
US 11,638,026 · App. 17/682,751 · Granted Apr 25, 2023

Alignment of prediction weights in video coding

Inventors: Zhipin Deng (Beijing, CN); Li Zhang (San Diego, CA); Hongbin Liu (Beijing, CN); Kai Zhang (San Diego, CA); Jizheng Xu (San Diego, CA); Yue Wang (Beijing, CN)
Assignees: BEIJING BYTEDANCE NETWORK TECHNOLOGY CO., LTD.; BYTEDANCE INC.
H04N19/51H04N19/105H04N19/119H04N19/132H04N19/137H04N19/176H04N19/186H04N19/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 11,638,026
App. No.
17/682,751
Granted
Apr 25, 2023
Kind
B2
Abstract

A method of video processing is described. The method includes determining chroma weights used for determining a chroma prediction block of a chroma block of a current block of a video by blending predictions of the chroma block according to a rule, and performing a conversion between the current block and a coded representation of the video according to the determining, wherein the rule specifies that the chroma weights are determined from luma weights of a collocated luma block of the current block; wherein the current block is coded with a geometric partitioning mode.

Claims (60)

1. A method of processing video data, comprising:

determining, during a conversion between a current chroma block of a video and a bitstream of the video, that the current chroma block is coded with a geometric partitioning mode;

determining a first motion information and a second motion information;

determining chroma weights used for determining a final chroma prediction for the current chroma block by a blending process; and

performing the conversion based on the first motion information, the second motion information and the chroma weights, wherein the conversion comprises applying the blending process to generate the final chroma prediction based on a weighted sum of prediction samples derived from the first motion information and the second motion information using the chroma weights,

wherein the chroma weights are determined based on a chroma format of the current chroma block indicating a chroma subsampling ratio relative to a collocated luma block of the current chroma block; and

wherein a chroma weight, WeightC[x][y], is equal to WeightY[f(x)][g(y)], wherein x is an integer between 0 and W/subWidthC−1, y is an integer between 0 and H/subHeightC−1, W and H are a width and a height of the collocated luma block, subWidthC and subHeightC denote chroma subsampling ratios in width and height directions, respectively, and WeightY[a][b] denotes a luma weight, a is an integer between 0 and W−1 and b is an integer between 0 and H−1.

2. The method of claim 1 , wherein for a 4:4:4 chroma format, the chroma weights are same as luma weights applied to the collocated luma block for each position inside the current chroma block.

3. The method of claim 1 , wherein for a 4:2:0 or 4:2:2: chroma format, the chroma weights are a subset of luma weights applied to the collocated luma block.

4. The method of claim 1 , wherein f(x) is based on x*subWidthC+offsetX, g(y) is based on y*subHeightC+OffsetY, where offsetX and OffsetY are integers.

5. The method of claim 1 , wherein the chroma weights are same for two chroma components.

6. The method of claim 1 , wherein the chroma weights and the luma weights are integers, and wherein both odd integer and even integer weights are allowed.

7. The method of claim 1 , wherein the chroma weights and/or the luma weights are clipped to a range [M, N], wherein M=0 and N=8.

8. The method of claim 1 , wherein the geometric partitioning mode is enabled or disabled based on a differences obtained as Abs(Log2(W)−Log2(H)), wherein Abs is absolute function, W and H are a width and a height of the collocated luma block.

9. The method of claim 1 , wherein the geometric partitioning mode is disabled due to the collocated luma block having a height greater than N and/or a width greater that M, wherein N=M=64; or due to the collocated luma block having a height equal to S and/or a width equal to T, wherein S=T=4.

10. The method of claim 1 , wherein when a syntax element descriptive of a partitioning mode or a first merging candidate index of a geometric partitioning based motion compensation candidate list or a second merging candidate index of the geometric partitioning based motion compensation candidate list is not included in the bitstream, and the syntax element is inferred to be 0.

11. The method of claim 1 , wherein the chroma weights and/or the luma weights are calculated from computing equations.

12. The method of claim 1 , wherein the conversion includes encoding the video into the bitstream.

13. The method of claim 1 , wherein the conversion includes decoding the video from the bitstream.

14. 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, during a conversion between a current chroma block of a video and a bitstream of the video, that the current chroma block is coded with a geometric partitioning mode;

determine a first motion information and a second motion information;

determine chroma weights used for determining a final chroma prediction for the current chroma block by a blending process; and

perform the conversion based on the first motion information, the second motion information and the chroma weights, wherein the conversion comprises applying the blending process to generate the final chroma prediction based on a weighted sum of prediction samples derived from the first motion information and the second motion information using the chroma weights,

wherein the chroma weights are determined based on a chroma format of the current chroma block indicating a chroma subsampling ratio relative to a collocated luma block of the current chroma block, and

wherein a chroma weight, WeightC[x][y], is equal to WeightY[f(x)][g(y)], wherein x is an integer between 0 and W/subWidthC−1, y is an integer between 0 and H/subHeightC−1, W and H are a width and a height of the collocated luma block, subWidthC and subHeightC denote chroma subsampling ratios in width and height directions, respectively, and WeightY[a][b] denotes a luma weight, a is an integer between 0 and W−1 and b is an integer between 0 and H−1.

15. The apparatus of claim 14 , wherein for a 4:4:4 chroma format, the chroma weights are same as luma weights applied to the collocated luma block for each position inside the current chroma block;

wherein for a 4:2:0 or 4:2:2: chroma format, the chroma weights are a subset of luma weights applied to the collocated luma block; and

wherein f(x) is based on x*subWidthC+offsetX, g(y) is based on y*subHeightC+OffsetY, where offsetX and OffsetY are integers.

16. The apparatus of claim 14 , wherein the chroma weights are same for two chroma components;

wherein the chroma weights and the luma weights are integers, and wherein both odd integer and even integer weights are allowed;

wherein the chroma weights and/or the luma weights are clipped to a range [M, N], wherein M=0 and N=8;

wherein the geometric partitioning mode is enabled or disabled based on a differences obtained as Abs(Log2(W)−Log2(H)), wherein Abs is absolute function, W and H are a width and a height of the collocated luma block;

wherein the geometric partitioning mode is disabled due to the collocated luma block having a height greater than N and/or a width greater that M, wherein N=M=64; or due to the collocated luma block having a height equal to S and/or a width equal to T, wherein S=T=4;

wherein when a syntax element descriptive of a partitioning mode or a first merging candidate index of a geometric partitioning based motion compensation candidate list or a second merging candidate index of the geometric partitioning based motion compensation candidate list is not included in the bitstream, and the syntax element is inferred to be 0; and

wherein the chroma weights and/or the luma weights are calculated from computing equations.

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

determine, during a conversion between a current chroma block of a video and a bitstream of the video, that the current chroma block is coded with a geometric partitioning mode;

determine a first motion information and a second motion information;

determine chroma weights used for determining a final chroma prediction for the current chroma block by a blending process; and

perform the conversion based on the first motion information, the second motion information and the chroma weights, wherein the conversion comprises applying the blending process to generate the final chroma prediction based on a weighted sum of prediction samples derived from the first motion information and the second motion information using the chroma weights,

wherein the chroma weights are determined based on a chroma format of the current chroma block indicating a chroma subsampling ratio relative to a collocated luma block of the current chroma block; and

wherein a chroma weight, WeightC[x][y], is equal to WeightY[f(x)][g(y)], wherein x is an integer between 0 and W/subWidthC−1, y is an integer between 0 and H/subHeightC−1, W and H are a width and a height of the collocated luma block, subWidthC and subHeightC denote chroma subsampling ratios in width and height directions, respectively, and WeightY[a][b] denotes a luma weight, a is an integer between 0 and W−1 and b is an integer between 0 and H−1.

18. The non-transitory computer-readable storage medium of claim 17 , wherein for a 4:4:4 chroma format, the chroma weights are same as luma weights applied to the collocated luma block for each position inside the current chroma block;

wherein for a 4:2:0 or 4:2:2: chroma format, the chroma weights are a subset of luma weights applied to the collocated luma block;

wherein f(x) is based on x*subWidthC+offsetX, g(y) is based on y*subHeightC+OffsetY, where offsetX and OffsetY are integers;

wherein the chroma weights are same for two chroma components;

wherein the chroma weights and the luma weights are integers, and wherein both odd integer and even integer weights are allowed;

wherein the chroma weights and/or the luma weights are clipped to a range [M, N], wherein M=0 and N=8;

wherein the geometric partitioning mode is enabled or disabled based on a differences obtained as Abs(Log2(W)−Log2(H)), wherein Abs is absolute function, W and H are a width and a height of the collocated luma block;

wherein the geometric partitioning mode is disabled due to the collocated luma block having a height greater than N and/or a width greater that M, wherein N=M=64; or due to the collocated luma block having a height equal to S and/or a width equal to T, wherein S=T=4;

wherein when a syntax element descriptive of a partitioning mode or a first merging candidate index of a geometric partitioning based motion compensation candidate list or a second merging candidate index of the geometric partitioning based motion compensation candidate list is not included in the bitstream, and the syntax element is inferred to be 0; and

wherein the chroma weights and/or the luma weights are calculated from computing equations.

19. A non-transitory computer-readable recording medium storing a bitstream of a video which is generated by a method performed by a video processing apparatus, wherein the method comprises:

determining that a current chroma block of the video is coded with a geometric partitioning mode;

determining a first motion information and a second motion information;

determining chroma weights used for determining a final chroma prediction for the current chroma block by a blending process; and

generating the bitstream based on the first motion information, the second motion information and the chroma weights, wherein the generating comprises applying the blending process to generate the final chroma prediction based on a weighted sum of prediction samples derived from the first motion information and the second motion information using the chroma weights,

wherein the chroma weights are determined based on a chroma format of the current chroma block indicating a chroma subsampling ratio relative to a collocated luma block of the current chroma block; and

wherein a chroma weight, WeightC[x][y], is equle to WeightY[f(x)][g(y)], wherein x is an integer between 0 and W/subWidthC−1, y is an integer between 0 and H/subHeightC−1, W and H are a width and a height of the collocated luma block, subWidthC and subHeightC denote chroma subsampling ratios in width and height directions, respectively, and WeightY[a][b] denotes a luma weight, a is an integer between 0 and W−1 and b is an integer between 0 and H−1.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 2, 2022
From: DENG, ZHIPIN; LIU, HONGBIN; WANG, YUE
To: BEIJING BYTEDANCE NETWORK TECHNOLOGY CO., LTD.
Reel/Frame 059152/0799 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 2, 2022
From: ZHANG, LI; ZHANG, KAI; XU, JIZHENG
To: BYTEDANCE INC.
Reel/Frame 059152/0835 →
Priority Claims (2)
WO PCT/CN2019/103903 · Sep 1, 2019 · international
WO PCT/CN2019/110490 · Oct 10, 2019 · international
Continuity (2)
Continuation PCTCN2020112779 · Sep 1, 2020
Related Publication 20220210460A1 · Jun 30, 2022