IP Library › Granted Patent US 11,882,274
Granted Patent B2
US 11,882,274 · App. 17/585,741 · Granted Jan 23, 2024

Position based mode derivation in reduced secondary transforms for video

Inventors: Li Zhang (San Diego, CA); Kai Zhang (San Diego, CA); Hongbin Liu (Beijing, CN); Yue Wang (Beijing, CN)
Assignees: BEIJING BYTEDANCE NETWORK TECHNOLOGY CO., LTD; BYTEDANCE INC.
H04N19/11H04N19/12H04N19/124H04N19/159H04N19/176H04N19/186H04N19/46H04N19/593H04N19/61H04N19/132
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,882,274
App. No.
17/585,741
Granted
Jan 23, 2024
Kind
B2
Abstract

A method of video processing is described. The method includes determining, for a conversion between a current video block of a video unit of a video and a coded representation of the video, a default intra prediction mode for the video unit coded using a certain intra prediction mode such that a prediction block of the current video block is generated without extrapolating neighboring pixels of the current video block along a direction; and performing the conversion based on the determining.

Claims (358)

1. A method of processing video data, comprising:

making a determination, during a conversion between a current chroma block of a video unit of a video and a bitstream of the video, whether a coding mode of a luma block covering a luma sample located to correspond to a chroma sample only at a center of the current chroma block is a specific coding mode;

deriving, for a derivation process of a chroma intra prediction mode for the current chroma block, a variable denoted as lumaIntraPredMode based on the determination, wherein the variable lumaIntraPredMode is equal to a default intra prediction mode in a case that the luma block is coded with the specific coding mode, and the variable lumaIntraPredMode is equal to a luma intra prediction mode of the luma block in a case that the luma block is not coded with the specific coding mode;

deriving the chroma intra prediction mode for the current chroma block, wherein the chroma intra prediction mode is derived using a first flag indicating whether a cross-component linear model prediction mode is applied to the current chroma block (cclm_mode_flag), a second flag indicating which one of INIRA_LT_CCLM, INTRA_L_CCLM and INTRA_T_CCLM chroma intra prediction modes is applied to the current chroma block (cclm_mode_idx), a third flag indicating an intra prediction mode for chroma samples of the current chroma block (intra_chroma_pred_mode), and the variable lumaIntraPredMode; and

performing the conversion based on the chroma intra prediction mode;

wherein when the current chroma block is coded with the cross-component linear model prediction mode, the default intra prediction mode is utilized in a secondary transform process for the current chroma block in a case that the coding mode of the luma block is the specific coding mode, wherein a transform set for the secondary transform process is determined based on the default intra prediction mode;

wherein in a case that the specific coding mode of the luma block is a matrix based intra prediction (MIP) mode that generates prediction samples of the luma block using a matrix vector multiplication, the default intra prediction mode is determined as a planar intra prediction mode;

wherein in a case that the specific coding mode of the luma block is an intra block copy (IBC) mode that generates prediction samples of the luma block are derived from blocks of sample values of a same video region as determined by block vectors, the default intra prediction mode is determined as a DC intra prediction mode; and

wherein in a case that the specific coding mode of the luma block is a palette mode that allows to represent or reconstruct the luma block using a palette of representative sample values, the default intra prediction mode is determined as the DC intra prediction mode.

2. The method of claim 1 , wherein in a case that the coding mode of the luma block is neither a matrix based intra prediction (MIP) mode, nor an intra block copy (IBC) mode, nor a palette mode, the luma intra prediction mode of the luma block is utilized in the derivation process of the chroma intra prediction mode for the current chroma block.

3. The method of claim 1 , wherein the chroma intra prediction mode is derived using cclm_mode_flag, cclm_mode_idx, intra_chroma_pred_mode and lumaIntraPredMode as specified in a following Table 1:

TABLE 1

lumaIntraPredMode

X ( 0 <=

cclm_mode_flag

cclm_mode_idx

intra_chroma_pred_mode

0

50

18

1

X <= 66 )

0

—

0

66

0

0

0

 0

0

—

1

50

66

50

50

50

0

—

2

18

18

66

18

18

0

—

3

1

1

1

66

 1

0

—

4

0

50

18

1

X

1

0

—

81

81

81

81

81

1

1

—

82

82

82

82

82

1

2

—

83

83

83

83

 83.

4. The method of claim 3 , wherein when a chroma format of the video unit is 4:2:2, chroma intra prediction mode X in Table 1 is mapped to a chroma intra prediction mode Y according to a pre-defined mapping table, and the chroma intra prediction mode X in Table 1 is set equal to the chroma intra prediction mode Y afterwards.

5. The method of claim 1 , wherein the default intra prediction mode is not assigned to inter coded blocks.

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

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

8. 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:

make a determination, during a conversion between a current chroma block of a video unit of a video and a bitstream of the video, whether a coding mode of a luma block covering a luma sample located to correspond to a chroma sample only at a center of the current chroma block is a specific coding mode;

derive, for a derivation process of a chroma intra prediction mode for the current chroma block, a variable denoted as lumaIntraPredMode based on the determination, wherein the variable lumaIntraPredMode is equal to a default intra prediction mode in a case that the luma block is coded with the specific coding mode, and the variable lumaIntraPredMode is equal to a luma intra prediction mode of the luma block in a case that the luma block is not coded with the specific coding mode;

derive the chroma intra prediction mode for the current chroma block, wherein the chroma intra prediction mode is derived using a first flag indicating whether a cross-component linear model prediction mode is applied to the current chroma block (cclm_mode_flag), a second flag indicating which one of INTRA_LT_CCLM, INTRA_L_CCLM and INTRA_T_CCLM chroma intra prediction modes is applied to the current chroma block (cclm_mode_idx), a third flag indicating an intra prediction mode for chroma samples of the current chroma block (intra_chroma_pred_mode), and the variable lumaIntraPredMode; and

perform the conversion based on the chroma intra prediction mode;

wherein when the current chroma block is coded with the cross-component linear model prediction mode, the default intra prediction mode is utilized in a secondary transform process for the current chroma block in a case that the coding mode of the luma block is the specific coding mode, wherein a transform set for the secondary transform process is determined based on the default intra prediction mode;

wherein in a case that the specific coding mode of the luma block is a matrix based intra prediction (MIP) mode that generates prediction samples of the luma block using a matrix vector multiplication, the default intra prediction mode is determined as a planar intra prediction mode;

wherein in a case that the specific coding mode of the luma block is an intra block copy (IBC) mode that generates prediction samples of the luma block are derived from blocks of sample values of a same video region as determined by block vectors, the default intra prediction mode is determined as a DC intra prediction mode; and

wherein in a case that the specific coding mode of the luma block is a palette mode that allows to represent or reconstruct the luma block using a palette of representative sample values, the default intra prediction mode is determined as the DC intra prediction mode.

9. The apparatus of claim 8 , wherein in a case that the coding mode of the luma block is neither a matrix based intra prediction (MIP) mode, nor an intra block copy (IBC) mode, nor a palette mode, the luma intra prediction mode of the luma block is utilized in the derivation process of the chroma intra prediction mode for the current chroma block.

10. The apparatus of claim 8 ,

wherein the chroma intra prediction mode is derived using cclm_mode_flag, cclm_mode_idx, intra_chroma_pred_mode and lumaIntraPredMode as specified in a following Table 1:

TABLE 1

lumaIntraPredMode

X ( 0 <=

cclm_mode_flag

cclm_mode_idx

intra_chroma_pred_mode

0

50

18

1

X <= 66 )

0

—

0

66

0

0

0

 0

0

—

1

50

66

50

50

50

0

—

2

18

18

66

18

18

0

—

3

1

1

1

66

 1

0

—

4

0

50

18

1

X

1

0

—

81

81

81

81

81

1

1

—

82

82

82

82

82

1

2

—

83

83

83

83

 83;

wherein when a chroma format of the video unit is 4:2:2, chroma intra prediction mode X in Table 1 is mapped to a chroma intra prediction mode Y according to a pre-defined mapping table, and the chroma intra prediction mode X in Table 1 is set equal to the chroma intra prediction mode Y afterwards; and

wherein the default intra prediction mode is not assigned to inter coded blocks.

11. A non-transitory computer-readable storage medium storing instructions that, upon execution by a processor, cause the processor to:

make a determination, during a conversion between a current chroma block of a video unit of a video and a bitstream of the video, whether a coding mode of a luma block covering a luma sample located to correspond to a chroma sample only at a center of the current chroma block is a specific coding mode;

derive, for a derivation process of a chroma intra prediction mode for the current chroma block, a variable denoted as lumaIntraPredMode based on the determination, wherein the variable lumaIntraPredMode is equal to a default intra prediction mode in a case that the luma block is coded with the specific coding mode, and the variable lumaIntraPredMode is equal to a luma intra prediction mode of the luma block in a case that the luma block is not coded with the specific coding mode;

derive the chroma intra prediction mode for the current chroma block, wherein the chroma intra prediction mode is derived using a first flag indicating whether a cross-component linear model prediction mode is applied to the current chroma block (cclm_mode_flag), a second flag indicating which one of INTRA_LT_CCLM, INTRA_L_CCLM and INTRA_T_CCLM chroma intra prediction modes is applied to the current chroma block (cclm_mode_idx), a third flag indicating an intra prediction mode for chroma samples of the current chroma block (intra_chroma_pred_mode), and the variable lumaIntraPredMode; and

perform the conversion based on the chroma intra prediction mode;

wherein when the current chroma block is coded with the cross-component linear model prediction mode, the default intra prediction mode is utilized in a secondary transform process for the current chroma block in a case that the coding mode of the luma block is the specific coding mode, wherein a transform set for the secondary transform process is determined based on the default intra prediction mode;

wherein in a case that the specific coding mode of the luma block is a matrix based intra prediction (MIP) mode that generates prediction samples of the luma block using a matrix vector multiplication, the default intra prediction mode is determined as a planar intra prediction mode;

wherein in a case that the specific coding mode of the luma block is an intra block copy (IBC) mode that generates prediction samples of the luma block are derived from blocks of sample values of a same video region as determined by block vectors, the default intra prediction mode is determined as a DC intra prediction mode; and

wherein in a case that the specific coding mode of the luma block is a palette mode that allows to represent or reconstruct the luma block using a palette of representative sample values, the default intra prediction mode is determined as the DC intra prediction mode.

12. The non-transitory computer-readable storage medium of claim 11 , wherein in a case that the coding mode of the luma block is neither a matrix based intra prediction (MIP) mode, nor an intra block copy (IBC) mode, nor a palette mode, the luma intra prediction mode of the luma block is utilized in the derivation process of the chroma intra prediction mode for the current chroma block.

13. The non-transitory computer-readable storage medium of claim 11 ,

wherein the chroma intra prediction mode is derived using cclm_mode_flag, cclm_mode_idx, intra_chroma_pred_mode and lumaIntraPredMode as specified in a following Table 1:

TABLE 1

lumaIntraPredMode

X ( 0 <=

cclm_mode_flag

cclm_mode_idx

intra_chroma_pred_mode

0

50

18

1

X <= 66 )

0

—

0

66

0

0

0

 0

0

—

1

50

66

50

50

50

0

—

2

18

18

66

18

18

0

—

3

1

1

1

66

 1

0

—

4

0

50

18

1

X

1

0

—

81

81

81

81

81

1

1

—

82

82

82

82

82

1

2

—

83

83

83

83

 83;

wherein when a chroma format of the video unit is 4:2:2, chroma intra prediction mode X in Table 1 is mapped to a chroma intra prediction mode Y according to a pre-defined mapping table, and the chroma intra prediction mode X in Table 1 is set equal to the chroma intra prediction mode Y afterwards; and

wherein the default intra prediction mode is not assigned to inter coded blocks.

14. A method of storing a bitstream of a video to a non-transitory computer-readable medium, comprising:

making a determination, during a conversion between a current chroma block of a video unit of the video and the bitstream of the video, whether a coding mode of a luma block covering a luma sample located to correspond to a chroma sample only at a center of the current chroma block is a specific coding mode;

deriving, for a derivation process of a chroma intra prediction mode for the current chroma block, a variable denoted as lumaIntraPredMode based on the determination, wherein the variable lumaIntraPredMode is equal to a default intra prediction mode in a case that the luma block is coded with the specific coding mode, and the variable lumaIntraPredMode is equal to a luma intra prediction mode of the luma block in a case that the luma block is not coded with the specific coding mode;

deriving the chroma intra prediction mode for the current chroma block, wherein the chroma intra prediction mode is derived using a first flag indicating whether a cross-component linear model prediction mode is applied to the current chroma block (cclm_mode_flag), a second flag indicating which one of INTRA_LT_CCLM, INTRA_L_CCLM and INTRA_T_CCLM chroma intra prediction modes is applied to the current chroma block (cclm_mode_idx), a third flag indicating an intra prediction mode for chroma samples of the current chroma block (intra_chroma_pred_mode), and the variable lumaIntraPredMode; and

generating the bitstream based on the chroma intra prediction mode; and

storing the bitstream to the non-transitory computer-readable medium;

wherein when the current chroma block is coded with the cross-component linear model prediction mode, the default intra prediction mode is utilized in a secondary transform process for the current chroma block in a case that the coding mode of the luma block is the specific coding mode, wherein a transform set for the secondary transform process is determined based on the default intra prediction mode;

wherein in a case that the specific coding mode of the luma block is a matrix based intra prediction (MIP) mode that generates prediction samples of the luma block using a matrix vector multiplication, the default intra prediction mode is determined as a planar intra prediction mode;

wherein in a case that the specific coding mode of the luma block is an intra block copy (IBC) mode that generates prediction samples of the luma block are derived from blocks of sample values of a same video region as determined by block vectors, the default intra prediction mode is determined as a DC intra prediction mode; and

wherein in a case that the specific coding mode of the luma block is a palette mode that allows to represent or reconstruct the luma block using a palette of representative sample values, the default intra prediction mode is determined as the DC intra prediction mode.

15. The method of claim 14 , wherein in a case that the coding mode of the luma block is neither a matrix based intra prediction (MIP) mode, nor an intra block copy (IBC) mode, nor a palette mode, the luma intra prediction mode of the luma block is utilized in the derivation process of the chroma intra prediction mode for the current chroma block.

16. The method of claim 14 ,

wherein the chroma intra prediction mode is derived using cclm_mode_flag, cclm_mode_idx, intra_chroma_pred_mode and lumaIntraPredMode as specified in a following Table 1:

TABLE 1

lumaIntraPredMode

X ( 0 <=

cclm_mode_flag

cclm_mode_idx

intra_chroma_pred_mode

0

50

18

1

X <= 66 )

0

—

0

66

0

0

0

 0

0

—

1

50

66

50

50

50

0

—

2

18

18

66

18

18

0

—

3

1

1

1

66

 1

0

—

4

0

50

18

1

X

1

0

—

81

81

81

81

81

1

1

—

82

82

82

82

82

1

2

—

83

83

83

83

 83;

wherein when a chroma format of the video unit is 4:2:2, chroma intra prediction mode X in Table 1 is mapped to a chroma intra prediction mode Y according to a pre-defined mapping table, and the chroma intra prediction mode X in Table 1 is set equal to the chroma intra prediction mode Y afterwards; and

wherein the default intra prediction mode is not assigned to inter coded blocks.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 27, 2022
From: ZHANG, LI; ZHANG, KAI
To: BYTEDANCE INC.
Reel/Frame 058797/0771 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 27, 2022
From: LIU, HONGBIN; WANG, YUE
To: BEIJING BYTEDANCE NETWORK TECHNOLOGY CO., LTD.
Reel/Frame 058797/0799 →
Priority Claims (1)
WO PCT/CN2019/099158 · Aug 3, 2019 · international
Continuity (2)
Continuation PCTCN2020106551 · Aug 3, 2020
Related Publication 20220150502A1 · May 12, 2022
Cited By (1)
US 12,323,625