IP Library › Granted Patent US 12,477,109
Granted Patent B2
US 12,477,109 · App. 18/497,223 · Granted Nov 18, 2025

Method and apparatus for intra sub-partitions coding mode

Inventors: Roman Igorevich Chernyak (Moscow, RU); Timofey Mikhailovich Solovyev (Munich, DE); Yin Zhao (Hangzhou, CN); Sergey Yurievich Ikonin (Moscow, RU); Jianle Chen (San Diego, CA)
Assignee: HUAWEI TECHNOLOGIES CO., LTD.
H04N19/119H04N19/159H04N19/176H04N19/186H04N19/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 12,477,109
App. No.
18/497,223
Granted
Nov 18, 2025
Kind
B2
Abstract

Apparatuses and methods for Intra Sub-Partitions (ISP) are provided. The method includes: obtaining information of ISP, and determining a size of a chroma transform block (TB) of the coding unit based on SubWidthC and SubHeightC when at least a first condition is fulfilled. The first condition includes the information of ISP indicates that ISP is used for splitting the luma coding block. SubWidthC and SubHeightC are variables depending on chroma format information. The chroma format information indicates a chroma format of a picture the coding unit belongs to. The method can apply to all chroma format. The chroma format includes at least one of: 4:2:0, or 4:2:2, or 4:4:4. An accurate and versatile way to determine the size of the chroma transform block for the ISP is achieved.

Claims (66)

1 . A method of coding implemented by an encoding apparatus, comprising:

determining a size of a chroma transform block of a coding unit based on SubWidthC and SubHeightC when at least a first condition is fulfilled, wherein SubWidthC and SubHeightC are variables depending on chroma format information, wherein the chroma format information indicates a chroma format of a picture the coding unit belongs to, the chroma format includes at least one of: 4:2:2, or 4:4:4, and wherein the first condition comprises: 1) a single tree being used to partition the coding unit, 2) information of intra sub-partitions (ISP) indicating ISP is used for splitting a luma coding block of the coding unit, and 3) subTuIndex being equal to NumIntraSubPartitions−1, and

encoding a bitstream, wherein the bitstream includes a value of a flag, the flag includes at least one of a mode flag or a split flag, the mode flag specifies whether the coding unit is partitioned into rectangular transform block subpartitions, the split flag specifies whether an ISP split type is horizontal or vertical.

2 . The method of claim 1 , wherein the size of the chroma transform block also depends on a size of the luma coding block.

3 . The method of claim 2 , wherein the size of the chroma transform block satisfies:

wC =CbWidth[ x 0 ][y 0]/SubWidth C ; and

hC =CbHeight[ x 0 ][y 0]/SubHeight C;

wherein wC represents a width of the chroma transform block, hC represents a height of the chroma transform block, CbWidth represents a width of the luma coding block, and CbHeight represents a height of the luma coding block.

4 . The method of claim 1 , wherein the mode flag is intra_subpartitions_mode_flag:

intra_subpartitions_mode_flag equal to 1 specifies that a current intra coding unit is partitioned into NumIntraSubPartitions rectangular transform block subpartitions;

intra_subpartitions_mode_flag equal to 0 specifies that the current intra coding unit is not partitioned into rectangular transform block subpartitions;

when intra_subpartitions_mode_flag is not present, it is inferred to be equal to 0.

5 . The method of claim 1 , wherein the split flag is intra_subpartitions_split_flag:

when intra_subpartitions_split_flag is not present, it is inferred as follows:

if cbHeight is greater than MaxTbSizeY, intra_subpartitions_split_flag is inferred to be equal to 0;

otherwise (cbWidth is greater than MaxTbSizeY), intra_subpartitions_split_flag is inferred to be equal to 1.

6 . The method of claim 2 , wherein a size of the chroma transform block is determined according to following rule:

if the chroma format equals to 4:4:4, the size of the chroma transform block equals to the size of the luma coding block; and

otherwise, the size of the chroma transform block is determined as a function of the size of the luma coding block and the chroma format.

7 . The method of claim 1 , wherein the information of ISP is indicated by

IntraSubPartitionsSplitType; and

when IntraSubPartitionsSplitType !=ISP_NO_SPLIT, ISP is used for splitting the luma coding block of the coding unit.

8 . A decoding apparatus for intra sub-partitions (ISP), comprising:

one or more processors; and

a non-transitory computer-readable storage medium coupled to the one or more processors and storing instructions, which when executed by the one or more processors, cause the apparatus to:

receive a bitstream, wherein the bitstream includes a flag, the flag includes at least one of a mode flag or a split flag, the mode flag specifies whether a coding unit is partitioned into rectangular transform block subpartitions, the split flag specifies whether an intra sub-partitions (ISP) split type is horizontal or vertical;

obtain information of ISP based on the flag, wherein the information of ISP indicates whether ISP is used for splitting a luma coding block of the coding unit;

determine a size of a chroma transform block (TB) of the coding unit based on SubWidthC and SubHeightC when at least a first condition is fulfilled, wherein SubWidthC and SubHeightC are variables depending on chroma format information, wherein the chroma format information indicates a chroma format of a picture the coding unit belongs to, the chroma format includes at least one of: 4:2:2, or 4:4:4, and

wherein the first condition comprises: 1) a single tree being used to partition the coding unit, 2) the information of ISP indicating that ISP is used for splitting the luma coding block, and 3) subTuIndex being equal to NumIntraSubPartitions−1.

9 . The apparatus of claim 8 , wherein the size of the chroma transform block also depends on a size of the luma coding block.

10 . The apparatus of claim 8 , wherein the size of the chroma transform block is determined according to:

wC =CbWidth[ x 0 ][y 0]/SubWidth C ; and

hC =CbHeight[ x 0 ][y 0]/SubHeight C;

wherein wC represents a width of the chroma transform block, hC represents a height of the chroma transform block, and CbWidth represents a width of the luma coding block, and CbHeight represents a height of the luma coding block.

11 . The apparatus of claim 8 , wherein the mode flag is intra_subpartitions_mode_flag:

intra_subpartitions_mode_flag equal to 1 specifies that a current intra coding unit is partitioned into NumIntraSubPartitions rectangular transform block subpartitions;

intra_subpartitions_mode_flag equal to 0 specifies that the current intra coding unit is not partitioned into rectangular transform block subpartitions;

when intra_subpartitions_mode_flag is not present, it is inferred to be equal to 0.

12 . The apparatus of claim 8 , wherein the split flag is intra_subpartitions_split_flag:

when intra_subpartitions_split_flag is not present, it is inferred as follows:

if cbHeight is greater than MaxTbSizeY, intra_subpartitions_split_flag is inferred to be equal to 0;

otherwise (cbWidth is greater than MaxTbSizeY), intra_subpartitions_split_flag is inferred to be equal to 1.

13 . The apparatus of claim 9 , wherein a size of the chroma transform block is determined according to following rule:

if the chroma format equals to 4:4:4, the size of the chroma transform block equals to the size of the luma coding block;

otherwise, the size of the chroma transform block is determined as a function of the size of the luma coding block and the chroma format.

14 . The apparatus of claim 8 , wherein information of ISP is indicated by IntraSubPartitionsSplitType; and

when IntraSubPartitionsSplitType !=ISP_NO_SPLIT, ISP is used for splitting the luma coding block of the coding unit.

15 . A non-transitory computer readable medium storing instructions which, when executed by a processing circuitry, cause the processing circuitry to:

determine a size of a chroma transform block of a coding unit based on SubWidthC and SubHeightC when at least a first condition is fulfilled, wherein SubWidthC and SubHeightC are variables depending on chroma format information, wherein the chroma format information indicates a chroma format of a picture the coding unit belongs to, the chroma format includes at least one of: 4:2:2, or 4:4:4, and wherein the first condition comprises: 1) a single tree being used to partition the coding unit, 2) information of intra sub-partitions (ISP) indicating ISP is used for splitting a luma coding block of the coding unit, and 3) sub TuIndex being equal to NumIntraSubPartitions−1, and

encode a bitstream, wherein the bitstream includes a value of a flag, the flag includes at least one of a mode flag or a split flag, the mode flag specifies whether the coding unit is partitioned into rectangular transform block subpartitions, the split flag specifies whether an ISP split type is horizontal or vertical.

16 . The non-transitory computer readable medium of claim 15 , wherein the size of the chroma transform block also depends on a size of the luma coding block.

17 . The non-transitory computer readable medium of claim 16 , wherein the size of the chroma transform block satisfies:

wC =CbWidth[ x 0 ][y 0]/SubWidth C ; and

hC =CbHeight[ x 0 ][y 0]/SubHeight C;

wherein wC represents a width of the chroma transform block, hC represents a height of the chroma transform block, CbWidth represents a width of the luma coding block, and CbHeight represents a height of the luma coding block.

18 . The non-transitory computer readable medium of claim 15 , wherein the mode flag is intra_subpartitions_mode_flag:

intra_subpartitions_mode_flag equal to 1 specifies that a current intra coding unit is partitioned into NumIntraSubPartitions rectangular transform block subpartitions;

intra_subpartitions_mode_flag equal to 0 specifies that the current intra coding unit is not partitioned into rectangular transform block subpartitions;

when intra_subpartitions_mode_flag is not present, it is inferred to be equal to 0.

19 . The non-transitory computer readable medium of claim 15 , wherein the split flag is intra_subpartitions_split_flag:

when intra_subpartitions_split_flag is not present, it is inferred as follows:

if cbHeight is greater than MaxTbSizeY, intra_subpartitions_split_flag is inferred to be equal to 0;

otherwise (cbWidth is greater than MaxTbSizeY), intra_subpartitions_split_flag is inferred to be equal to 1.

20 . The non-transitory computer readable medium of claim 15 , wherein the information of ISP is indicated by

IntraSubPartitionsSplitType; and

when IntraSubPartitionsSplitType !=ISP_NO_SPLIT, ISP is used for splitting the luma coding block of the coding unit.

Continuity (6)
Continuation 17724841 · Apr 20, 2022
Continuation 17399679 · Aug 11, 2021
Continuation PCTRU2020050039 · Mar 5, 2020
Provisional Application 62837698 · Apr 23, 2019
Provisional Application 62814270 · Mar 5, 2019
Related Publication 20240163433A1 · May 16, 2024
References Cited (21)
US 11750807B2 · Chernyak · 2023 [cited by examiner]
US 11831871B2 · Chernyak · 2023 [cited by examiner]
US 20140092965A1 · Joshi et al. · 2014 [cited by applicant]
US 20170272748A1 · Seregin et al. · 2017 [cited by applicant]
US 20200260070A1 · Yoo et al. · 2020 [cited by applicant]
US 20210289197A1 · Ko et al. · 2021 [cited by applicant]
US 20220109875A1 · Koo et al. · 2022 [cited by applicant]
CN 104685875A · 2015 [cited by applicant]
CN 108781282A · 2018 [cited by applicant]
JP 2011109397A · 2011 [cited by applicant]
JP 2021513755A · 2021 [cited by applicant]
WO 2020149648A1 · 2020 [cited by applicant]
JVET-M1001-v3, Benjamin Bross et al, Versatile Video Coding (Draft 4), Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IECJTC 1/SC 29/WG 11 13th Meeting: Marrakech, MA, Jan. 9-18, 2019 (Year: 2019). [cited by examiner]
JVET-M1001-v5, Benjamin Bross et al, Versatile Video Coding (Draft 4), Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IECJTC 1/SC 29/WG 11 13 Meeting: Marrakech, MA,Jan. 9-18, 2019 (Year: 2019). [cited by examiner]
ITU-T H.264(Apr. 2017), Series H: Audiovisual and Multimedia Systems, Infrastructure of audiovisual services—Coding of moving video, Advanced video coding for generic audiovisual services, total 812 pages. [cited by applicant]
ITU-T H.265(Feb. 2018), Series H: Audiovisual and Multimedia Systems Infrastructure of audiovisual services—Coding of moving video, High efficiency video coding, total 692 pages. [cited by applicant]
Document: JVET-M0102-v2, Santiago De-Luxan-Hemandez et al, CE3: Intra Sub-Partitions Coding Mode (Tests 1.1.1 and 1.1.2), Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG11, 13th Meeting: M… [cited by applicant]
Document: JVET-M1001-v3, Benjamin Bross et al, Versatile Video Coding (Draft 4), Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and 1S0/IEC JTC 1/SC 29/WG 11 13th Meeting: Marrakech, MA, Jan. 9-18, 2019, total 252 … [cited by applicant]
Document: JVET-M1001-v5, Benjamin Bross et al, Versatile Video Coding (Draft 4), Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11, 13th Meeting: Marrakech, MA, Jan. 9-18, 2019, 287 pages. [cited by applicant]
Document: JVET-N0224-v1, Ling Li et al, CE3-related: ISP support for 4:2:2 and 4:4:4, Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IECJTC 1/SC 29/WGII 14th Meeting: Geneva, CH, Mar. 19-27, 2019, total 7 p… [cited by applicant]
Document: JVET-N0392-v3, Alexey Filippov et al, 4:4:4 and 4:2:2 chroma formats support for VVC, Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IECJTC 1/SC 29/WGII 14th Meeting: Geneva, CH, Mar. 19-27, 2019,… [cited by applicant]