IP Library Granted Patent US 12,470,751
Granted Patent B2
US 12,470,751 · App. 17/982,979 · Granted Nov 11, 2025

Signaling of downsampling filters for chroma from luma intra prediction mode

Inventors: Jing Ye (San Jose, CA); Xin Zhao (San Jose, CA); Liang Zhao (Sunnyvale, CA); Shan Liu (San Jose, CA)
Assignee: TENCENT AMERICA LLC
H04N19/70H04N19/117H04N19/132H04N19/176H04N19/186H04N19/593
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,470,751
App. No.
17/982,979
Granted
Nov 11, 2025
Kind
B2
Abstract

Methods and apparatuses for performing cross-component intra prediction, including: receiving a coded bitstream; obtaining, from the coded bitstream, a syntax element indicating a downsampling filter used for a cross-component intra prediction mode; obtaining a plurality of reconstructed sample values of a first component which are associated with a pixel of a second component based on the downsampling filter; determining a pixel value of a downsampled pixel of the first component, based on the plurality of reconstructed sample values; determining a pixel value of the pixel of the second component based on the pixel value of the downsampled pixel of the first component; and reconstructing a picture based on the pixel value of the pixel of the second component.

Claims (1407)

1 . A method for video encoding, the method being performed by at least one processor and comprising:

determining a current chroma block to be coded;

determining that a cross-component intra prediction mode is selected for video coding;

based on determining that the cross-component mode is selected and based on multi-tap downsampling filter being supported, determining pixel values of a plurality of downsampled luma samples for a plurality of chroma samples using a first equation that is associated with the multi-tap downsampling filter being supported in combination with one or more AOMedia Video 1 (“AV1”) filters, wherein the first equation is based on the multi-tap filter being used, pixel values at specific positions, and a rounding value; and

encoding the current chroma block based on at least the plurality of downsampled luma samples.

2 . The method of claim 1 , wherein the multi-tap downsampling filter is one of: (1) a 6-tap filter, (2) a 5-tap filter, (3) a 4-tap filter in which the plurality of luma samples comprise a block co-located with the current chroma block or to one of a left direction, a down direction, and right direction of the current chroma block, (4) a 4-tap filter in which the plurality of luma samples comprise the block co-located with the current chroma block or to one of the right direction, the down direction, or a diagonal direction of the current chroma block; and (5) a 3-tap filter.

3 . The method of claim 1 , wherein when the multi-tap downsampling filter comprises a 6-tap filter, then a pixel value of each downsampled luma sample is determined according to the first equation below:

rec

L

(

i

,

j

)

=

[

rec

L

(

2

i

-

1

,

2

j

-

1

)

+

2

·

rec

L

(

2

i

,

2

j

-

1

)

+

rec

L

(

2

i

+

1

,

2

j

-

1

)

+

rec

L

(

2

i

-

1

,

2

j

)

+

2

·

rec

L

(

2

i

,

2

j

)

+

rec

L

(

2

i

+

1

,

2

j

)

+

R

]

3

where the current chroma block is located at a position (i,j), rec′ L indicates the pixel value of the each downsampled luma sample, rec L (x,y) indicates a luma sample located at a luma sample position (x,y), and R indicates the rounding value.

4 . The method of claim 1 , wherein when the multi-tap downsampling filter comprises a 5-tap filter, then the first equation is one of:

rec

L

(

i

,

j

)

=

[

rec

L

(

2

i

,

2

j

-

1

)

+

rec

L

(

2

i

-

1

,

2

j

)

+

4

·

rec

L

(

2

i

,

2

j

)

+

rec

L

(

2

i

+

1

,

2

j

)

+

rec

L

(

2

i

,

2

j

+

1

)

+

R

]

3

or

rec

L

(

i

,

j

)

=

[

rec

L

(

2

i

,

2

j

-

1

)

+

rec

L

(

2

i

-

1

,

2

j

)

+

12

·

rec

L

(

2

i

,

2

j

)

+

rec

L

(

2

i

+

1

,

2

j

)

+

rec

L

(

2

i

,

2

j

+

1

)

+

R

]

4

where the current chroma block is located at a position (i,j), rec′ L indicates the pixel value of the each downsampled luma sample, rec L (x,y) indicates a luma sample located at a luma sample position (x,y), and R indicates the rounding value.

5 . The method of claim 1 , wherein when the downsampling filter comprises a 4-tap filter, then one luma sample is co-located with the current chroma block.

6 . The method of claim 5 , wherein when the downsampling filter comprises a 4-tap filter, the first equation is one of:

rec

L

(

i

,

j

)

=

[

rec

L

(

2

i

-

1

,

2

j

)

+

5

·

rec

L

(

2

i

,

2

j

)

+

rec

L

(

2

i

+

1

,

2

j

)

+

rec

L

(

2

i

,

2

j

+

1

)

+

R

]

3

or

rec

L

(

i

,

j

)

=

[

rec

L

(

2

i

-

1

,

2

j

)

+

13

·

rec

L

(

2

i

,

2

j

)

+

rec

L

(

2

i

+

1

,

2

j

)

+

rec

L

(

2

i

,

2

j

+

1

)

+

R

]

4

where the current chroma block is located at a position (i,j), rec′ L indicates the pixel value of the each downsampled luma sample, rec L (x,y) indicates a luma sample located at a luma sample position (x,y), and R indicates the rounding value.

7 . The method of claim 5 , wherein when the downsampling filter comprises a 4-tap filter, the first equation is one of:

rec

L

(

i

,

j

)

=

[

rec

L

(

2

i

+

1

,

2

j

)

+

5

·

rec

L

(

2

i

,

2

j

)

+

rec

L

(

2

i

+

1

,

2

j

+

1

)

+

rec

L

(

2

i

,

2

j

+

1

)

+

R

]

3

or

rec

L

(

i

,

j

)

=

[

rec

L

(

2

i

+

1

,

2

j

)

+

13

·

rec

L

(

2

i

,

2

j

)

+

rec

L

(

2

i

+

1

,

2

j

+

1

)

+

rec

L

(

2

i

,

2

j

+

1

)

+

R

]

4

where the current chroma block is located at a position (i,j), rec′ L indicates the pixel value of the each downsampled luma sample, rec L (x,y) indicates a luma sample located at a luma sample position (x,y), and R indicates the rounding value.

8 . The method of claim 1 , when the downsampling filter comprises a 3-tap filter, then first equation is one of:

rec

L

(

i

,

j

)

=

[

rec

L

(

2

i

-

1

,

2

j

)

+

6

·

rec

L

(

2

i

,

2

j

)

+

rec

L

(

2

i

+

1

,

2

j

)

+

R

]

3

or

rec

L

(

i

,

j

)

=

[

rec

L

(

2

i

-

1

,

2

j

)

+

14

·

rec

L

(

2

i

,

2

j

)

+

rec

L

(

2

i

+

1

,

2

j

)

+

R

]

4

where the current chroma block is located at a position (i,j), rec′ L indicates the pixel value of the each downsampled luma sample, rec L (x,y) indicates a luma sample located at a luma sample position (x,y), and R indicates the rounding value.

9 . The method of claim 1 , wherein a syntax element is signaled in at least one from among a sequence header, a sequence parameter set, a picture parameter set, an adaptive parameter set, a video parameter set, a slice header, a picture header, a frame header, a tile header, a coding tree unit header, a superblock header, or a block having a predetermined block size, the syntax element comprising an indication of the multi-tap downsampling filter used in the cross-component intra prediction mode.

10 . A device for performing cross-component intra prediction, the device comprising:

at least one memory configured to store program code; and

at least one processor configured to access the program code and operate as instructed by the program code, the program code including:

obtaining code configured to cause the at least one processor to obtain a current chroma block from a coded bitstream;

determining code configured to cause the at least one processor to determine, from the coded bitstream, that a cross-component intra prediction mode is selected for video decoding;

selecting code configured to cause the at least one processor to determine, based on determining that the cross-component mode is selected and based on multi-tap downsampling filter being supported, pixel values of a plurality of downsampled luma samples for a plurality of chroma samples using a first equation that is associated with the multi-tap downsampling filter being supported in combination with one or more AOMedia Video 1 (′AV1″) filters, wherein the first equation is based on the multi-tap filter being used, pixel values at specific positions, and a rounding value; and

reconstructing code configured to cause the at least one processor to reconstruct the current chroma block based on at least the plurality of downsampled luma samples.

11 . The device of claim 10 , wherein when the multi-tap downsampling filter is one of: (1) a 6-tap filter, (2) a 5-tap filter, (3) a 4-tap filter in which the plurality of luma samples comprise a block co-located with the current chroma block or to one of a left direction, a down direction, and right direction of the current chroma block, (4) a 4-tap filter in which the plurality of luma samples comprise the block co-located with the current chroma block or to one of the right direction, the down direction, or a diagonal direction of the current chroma block; and (5) a 3-tap filter.

12 . The device of claim 10 , wherein when the downsampling filter comprises a 6-tap filter, then a pixel value of each downsampled luma sample is determined according to the first equation below:

rec

L

(

i

,

j

)

=

[

rec

L

(

2

i

-

1

,

2

j

-

1

)

+

2

·

rec

L

(

2

i

,

2

j

-

1

)

+

rec

L

(

2

i

+

1

,

2

j

-

1

)

+

rec

L

(

2

i

-

1

,

2

j

)

+

2

·

rec

L

(

2

i

,

2

j

)

+

rec

L

(

2

i

+

1

,

2

j

)

+

R

]

3

where the current chroma block is located at a position (i,j), rec′ L indicates the pixel value of the each downsampled luma sample, rec L (x,y) indicates a luma sample located at a luma sample position (x,y), and R indicates the rounding value.

13 . The device of claim 10 , wherein when the downsampling filter comprises a 5-tap filter, then the first equation is one of:

rec

L

(

i

,

j

)

=

[

rec

L

(

2

i

,

2

j

-

1

)

+

rec

L

(

2

i

-

1

,

2

j

)

+

4

·

rec

L

(

2

i

,

2

j

)

+

rec

L

(

2

i

+

1

,

2

j

)

+

rec

L

(

2

i

,

2

j

+

1

)

+

R

]

3

or

rec

L

(

i

,

j

)

=

[

rec

L

(

2

i

,

2

j

-

1

)

+

rec

L

(

2

i

-

1

,

2

j

)

+

12

·

rec

L

(

2

i

,

2

j

)

+

rec

L

(

2

i

+

1

,

2

j

)

+

rec

L

(

2

i

,

2

j

+

1

)

+

R

]

4

where the current chroma block is located at a position (i,j), rec′ L indicates the pixel value of the each downsampled luma sample, rec L (x,y) indicates a luma sample located at a luma sample position (x,y), and R indicates the rounding value.

14 . The device of claim 10 , wherein when the downsampling filter comprises a 4-tap filter, then one luma sample is co-located with the current chroma block.

15 . The device of claim 14 , wherein the first equation is one of:

rec

L

(

i

,

j

)

=

[

rec

L

(

2

i

-

1

,

2

j

)

+

5

·

rec

L

(

2

i

,

2

j

)

+

rec

L

(

2

i

+

1

,

2

j

)

+

rec

L

(

2

i

,

2

j

+

1

)

+

R

]

3

or

rec

L

(

i

,

j

)

=

[

rec

L

(

2

i

-

1

,

2

j

)

+

13

·

rec

L

(

2

i

,

2

j

)

+

rec

L

(

2

i

+

1

,

2

j

)

+

rec

L

(

2

i

,

2

j

+

1

)

+

R

]

4

where the current chroma block is located at a position (i,j), rec′ L indicates the pixel value of the each downsampled luma sample, rec L (x,y) indicates a luma sample located at a luma sample position (x,y), and R indicates the rounding value.

16 . The device of claim 14 , wherein the first equation is one of:

rec

L

(

i

,

j

)

=

[

rec

L

(

2

i

+

1

,

2

j

)

+

5

·

rec

L

(

2

i

,

2

j

)

+

rec

L

(

2

i

+

1

,

2

j

+

1

)

+

rec

L

(

2

i

,

2

j

+

1

)

+

R

]

3

or

rec

L

(

i

,

j

)

=

[

rec

L

(

2

i

+

1

,

2

j

)

+

13

·

rec

L

(

2

i

,

2

j

)

+

rec

L

(

2

i

+

1

,

2

j

+

1

)

+

rec

L

(

2

i

,

2

j

+

1

)

+

R

]

4

where the current chroma block is located at a position (i,j), rec′ L indicates the pixel value of the each downsampled luma sample, rec L (x,y) indicates a luma sample located at a luma sample position (x,y), and R indicates the rounding value.

17 . The device of claim 10 , wherein when the downsampling filter comprises a 3-tap filter, then the first equation is one of:

rec

L

(

i

,

j

)

=

[

rec

L

(

2

i

-

1

,

2

j

)

+

6

·

rec

L

(

2

i

,

2

j

)

+

rec

L

(

2

i

+

1

,

2

j

)

+

R

]

3

or

rec

L

(

i

,

j

)

=

[

rec

L

(

2

i

-

1

,

2

j

)

+

14

·

rec

L

(

2

i

,

2

j

)

+

rec

L

(

2

i

+

1

,

2

j

)

+

R

]

4

where the current chroma block is located at a position (i,j), rec′ L indicates the pixel value of the each downsampled luma sample, rec L (x,y) indicates a luma sample located at a luma sample position (x,y), and R indicates the rounding value.

18 . A non-transitory computer-readable medium storing instructions, the instructions comprising: one or more instructions that, when executed by one or more processors of a device for performing cross-component intra prediction, cause the one or more processors to:

perform a conversion between a visual media file and a bitstream of a visual media data according to a format rule,

wherein the bitstream comprises a first syntax element indicating that a cross-component intra prediction mode is selected for video coding; and

wherein the format rule comprises determining pixel values of a plurality of downsampled luma samples for a plurality of chroma samples using a first equation that is associated with the multi-tap downsampling filter being supported based on determining that the cross-component mode is selected and based on multi-tap downsampling filter being supported in combination with one or more AOMedia Video 1 (“AV1”) filters, wherein the first equation is based on the multi-tap filter being used, pixel values at specific positions, and a rounding value.

19 . The non-transitory computer-readable medium of claim 18 , wherein the multi-tap downsampling filter is one of: (1) a 6-tap filter, (2) a 5-tap filter, (3) a 4-tap filter in which the plurality of luma samples comprise a block co-located with the current chroma block or to one of a left direction, a down direction, and right direction of the current chroma block, (4) a 4-tap filter in which the plurality of luma samples comprise the block co-located with the current chroma block or to one of the right direction, the down direction, or a diagonal direction of the current chroma block; and (5) a 3-tap filter.

20 . The non-transitory computer-readable medium of claim 18 , wherein the bitstream comprises the first syntax element in at least one from among a sequence header, a sequence parameter set, a picture parameter set, an adaptive parameter set, a video parameter set, a slice header, a picture header, a frame header, a tile header, a coding tree unit header, a superblock header, or a block having a predetermined block size, and wherein the bitstream further comprises a second syntax element that indicates the multi-tap downsampling filter used in the cross-component intra prediction mode.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 8, 2022
From: YE, JING; ZHAO, XIN; ZHAO, LIANG; LIU, SHAN
To: TENCENT AMERICA LLC
Reel/Frame 061695/0004 →
Continuity (2)
Provisional Application 63356820 · Jun 29, 2022
Related Publication 20240007676A1 · Jan 4, 2024
References Cited (24)
US 10455249B2 · Zhang · 2019 [cited by examiner]
US 11381820B2 · Li · 2022 [cited by examiner]
US 11616987B2 · Jeong · 2023 [cited by examiner]
US 11677956B2 · Zhang · 2023 [cited by examiner]
US 11736730B2 · Bay · 2023 [cited by examiner]
US 11758142B2 · Koo · 2023 [cited by examiner]
US 11930185B2 · Zhang · 2024 [cited by examiner]
US 11979576B2 · Park · 2024 [cited by examiner]
US 12003745B2 · Xu · 2024 [cited by examiner]
US 20120287995A1 · Budagavi · 2012 [cited by applicant]
US 20130136174A1 · Xu et al. · 2013 [cited by applicant]
US 20160198190A1 · Budagavi · 2016 [cited by applicant]
US 20190306516A1 · Misra · 2019 [cited by examiner]
US 20210067802A1 · Jin et al. · 2021 [cited by applicant]
US 20220124341A1 · Zhang · 2022 [cited by examiner]
US 20220191526A1 · Aggarwal et al. · 2022 [cited by applicant]
US 20220295056A1 · Lim · 2022 [cited by examiner]
US 20230050376A1 · Filippov · 2023 [cited by examiner]
Peter De Rivaz et al., “AV1 Bitstream & Decoding Process Specification”, Jan. 8, 2019, 681 pages. [cited by applicant]
Luc N. Trudeau et al., “Predicting Chroma from Luma in AV1”, Data Compression Conference, IEEE, 2018, pp. 374-382. [cited by applicant]
Yue Chen et al., “An Overview of Core Coding Tools in the AV1 Video Codec”, PCS 2018, pp. 41-45. [cited by applicant]
International Search Report dated Mar. 14, 2023 in Application No. PCT/US2022/049387. [cited by applicant]
Written Opinion of the International Searching Authority dated Mar. 14, 2023 in Application No. PCT/US2022/049387. [cited by applicant]
Zhang et al. “Enhanced Cross-Component Linear Model for Chroma Intra-Prediction in Video Coding.” IEEE Transactions on Image Processing, vol. 27, No. 8 (Aug. 2018), pp. 3983-3997 (15 total pages). [cited by applicant]