IP Library Granted Patent US 12,556,721
Granted Patent B2
US 12,556,721 · App. 18/374,168 · Granted Feb 17, 2026

Device and method for decoding video data

Inventors: Chih-Yu Teng (Taipei, TW); Yu-Chiao Yang (Taipei, TW)
Assignee: SHARP KABUSHIKI KAISHA
H04N19/186H04N19/107H04N19/117H04N19/132H04N19/139H04N19/172H04N19/176H04N19/513H04N19/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,556,721
App. No.
18/374,168
Granted
Feb 17, 2026
Kind
B2
Abstract

A method of decoding video data performed by an electronic device is provided. The method receives the video data and determines a block unit from a current frame included in the video data. The method further determines a plurality of luma reconstructed samples in a luma block of the block unit based on the video data and determines a prediction model filter of a prediction model mode for a chroma block of the block unit based on the video data. The method then determines a prediction model filter of a prediction model mode for a chroma block of the block unit based on the video data and reconstruct the chroma block of the block unit by applying the plurality of luma square values and the plurality of luma gradient values to the prediction model filter.

Claims (95)

1 . A method of decoding video data performed by an electronic device, the method comprising:

receiving the video data;

determining a block unit from a current frame included in the video data;

determining a plurality of luma reconstructed samples in a luma block of the block unit based on the video data;

determining a prediction model filter of a prediction model mode for a chroma block of the block unit based on the video data;

determining a plurality of luma square values and a plurality of luma gradient values based on the plurality of luma reconstructed samples; and

reconstructing the chroma block of the block unit by applying the plurality of luma square values and the plurality of luma gradient values to the prediction model filter.

2 . The method according to claim 1 , wherein:

the plurality of luma reconstructed samples is applied to a down-sampling filter to generate a plurality of luma down-sampled values,

each of the plurality of luma down-sampled values is applied to a gradient filter to generate the plurality of luma gradient values, and

each of the plurality of luma down-sampled values is squared to generate the plurality of luma square values.

3 . The method according to claim 2 , wherein the gradient filter comprises one of a vertical gradient filter and a horizontal gradient filter.

4 . The method according to claim 1 , further comprising:

determining a reference region neighboring the block unit;

determining a plurality of luma neighboring samples and a plurality of chroma neighboring samples of the reference region;

determining a first filter parameter and a second filter parameter of the prediction model filter based on the plurality of luma neighboring samples and the plurality of chroma neighboring samples; and

applying the plurality of luma square values and the plurality of luma gradient values to the prediction model filter by multiplying the plurality of luma square values by the first filter parameter and multiplying the plurality of luma gradient values by the second filter parameter.

5 . The method according to claim 1 , wherein:

the prediction model mode comprises a plurality of non-linear model filters,

the prediction model filter comprises one of the plurality of non-linear model filters, and

each of the plurality of non-linear model filters comprises a first filter parameter and a second filter parameter.

6 . The method according to claim 5 , further comprising:

determining a reference region neighboring the block unit;

determining a plurality of luma neighboring samples and a plurality of chroma neighboring samples of the reference region;

determining a plurality of neighboring down-sampled values based on the plurality of luma neighboring samples;

categorizing the plurality of neighboring down-sampled values into a plurality of model groups based on one or more luma threshold values;

categorizing the plurality of chroma neighboring samples into the plurality of model groups based on a distribution of the plurality of neighboring down-sampled values in the plurality of model groups; and

determining the first filter parameter and the second filter parameter for each of the plurality of non-linear model filters based on the plurality of neighboring down-sampled values and the plurality of chroma neighboring samples in a corresponding one of the plurality of model groups.

7 . The method according to claim 6 , wherein:

a number of the plurality of model groups is equal to a number of the plurality of non-linear model filters, and

a number of the one or more threshold values is equal to a value generated by subtracting one from the number of the plurality of model groups.

8 . The method according to claim 6 , wherein:

the one or more luma threshold values are one of a first average of the plurality of neighboring down-sampled values and a second average of a plurality of gradient neighboring values when the number of the plurality of model groups is equal to two, and

each of the plurality of neighboring down-sampled values is applied to a gradient filter to generate the plurality of gradient neighboring values.

9 . The method according to claim 6 , further comprising:

determining a plurality of luma down-sampled values by applying the plurality of luma reconstructed samples to a down-sampling filter;

comparing a specific one of the luma down-sampled values with the one or more threshold values to determine whether a sample value of the specific one of the luma down-sampled values is included in a specific one of the plurality of model groups;

determining a specific one of the plurality of luma square values and a specific one of the plurality of luma gradient values based on the specific one of the luma down-sampled values; and

applying the specific one of the plurality of luma square values and the specific one of the plurality of luma gradient values to a specific one of the plurality of non-linear model filters corresponding to the specific one of the plurality of model groups.

10 . An electronic device for decoding video data, the electronic device comprising:

one or more processors; and

one or more non-transitory computer-readable media coupled to the one or more processors and storing one or more computer-executable instructions that, when executed by at least one of the one or more processors, cause the electronic device to:

receive the video data;

determine a block unit from a current frame included in the video data;

determine a plurality of luma reconstructed samples in a luma block of the block unit based on the video data;

determine a prediction model filter of a prediction model mode for a chroma block of the block unit based on the video data;

determine a plurality of luma square values and a plurality of luma gradient values based on the plurality of luma reconstructed samples; and

reconstruct the chroma block of the block unit by applying the plurality of luma square values and the plurality of luma gradient values to the prediction model filter.

11 . The electronic device according to claim 10 , wherein:

the plurality of luma reconstructed samples is applied to a down-sampling filter to generate a plurality of luma down-sampled values;

each of the plurality of luma down-sampled values is applied to a gradient filter to generate the plurality of luma gradient values, and

each of the plurality of luma down-sampled values is squared to generate the plurality of luma square values.

12 . The electronic device according to claim 10 , wherein the one or more computer-executable instructions, when executed by the at least one of the one or more processors, further cause the electronic device to:

determine a reference region neighboring the block unit;

determine a plurality of luma neighboring samples and a plurality of chroma neighboring samples of the reference region;

determine a first filter parameter and a second filter parameter of the prediction model filter based on the plurality of luma neighboring samples and the plurality of chroma neighboring samples; and

apply the plurality of luma square values and the plurality of luma gradient values to the prediction model filter by multiplying the plurality of luma square values by the first filter parameter and multiplying the plurality of luma gradient values by the second filter parameter.

13 . The method according to claim 10 , wherein:

the prediction model mode comprises a plurality of non-linear model filters,

the prediction model filter comprises one of the plurality of non-linear model filters, and

each of the plurality of non-linear model filters comprises a first filter parameter and a second filter parameter.

14 . A method of decoding video data performed by an electronic device, the method comprising:

receiving the video data;

determining a block unit from a current frame included in the video data;

determining a plurality of luma reconstructed values in a luma block of the block unit based on the video data;

determining a prediction model filter of a prediction model mode for a chroma block of the block unit based on the video data;

determining a first value set including a plurality of first luma values and a second value set including a plurality of second luma values based on the plurality of luma reconstructed values, wherein:

at least one of the first value set and the second value set is generated by applying the plurality of luma reconstructed values to a corresponding one of a plurality of gradient filters, and

at least one of the first value set and the second value set is generated by squaring the plurality of luma reconstructed values or a plurality of luma intermediate values generated from the plurality of luma reconstructed values; and

reconstructing the chroma block of the block unit by applying the plurality of first luma values and the plurality of second luma values to the prediction model filter.

15 . The method according to claim 14 , wherein:

the plurality of first luma values comprises a plurality of luma squared gradient values generated by applying the plurality of luma reconstructed values to the one of the plurality of gradient filters to generate the plurality of luma intermediate values and further squaring the plurality of luma intermediate values, and

the plurality of second luma values is equal to the plurality of luma reconstructed values.

16 . The method according to claim 14 , wherein:

the plurality of first luma values is a plurality of luma squared gradient values generated by applying the plurality of luma reconstructed values to the one of the plurality of gradient filters to generate the plurality of luma intermediate values and further squaring the plurality of luma intermediate values, and

the plurality of second luma values is equal to the plurality of luma intermediate values.

17 . The method according to claim 14 , wherein:

the plurality of first luma values comprises a plurality of luma squared values generated by squaring the plurality of luma reconstructed values, and

the plurality of second luma values comprises a plurality of luma gradient values generated by applying the plurality of luma reconstructed values to the one of the plurality of gradient filters.

18 . The method according to claim 14 , further comprising:

determining a reference region neighboring the block unit;

determining a plurality of luma neighboring samples and a plurality of chroma neighboring samples of the reference region;

determining a first filter parameter and a second filter parameter of the prediction model filter based on the plurality of luma neighboring samples and the plurality of chroma neighboring samples; and

applying the plurality of first luma values and the plurality of second luma values to the prediction model filter by multiplying the plurality of first luma values by the first filter parameter and multiplying the plurality of second luma values by the second filter parameter.

19 . The method according to claim 14 , wherein:

the prediction model mode comprises a plurality of non-linear model filters,

the prediction model filter comprises one of the plurality of non-linear model filters, and

each of the plurality of non-linear model filters comprises a first filter parameter and a second filter parameter.

20 . The method according to claim 19 , further comprising:

determining a reference region neighboring the block unit;

determining a plurality of luma neighboring samples and a plurality of chroma neighboring samples of the reference region;

determining a plurality of neighboring down-sampled values based on the luma neighboring samples;

categorizing the plurality of neighboring down-sampled values into a plurality of model groups based on one or more luma threshold values;

categorizing the plurality of chroma neighboring samples into the plurality of model groups based on a distribution of the plurality of neighboring down-sampled values in the plurality of model groups; and

determining the first filter parameter and the second filter parameter for each of the plurality of non-linear model filters based on the plurality of neighboring down-sampled values and the plurality of chroma neighboring samples in a corresponding one of the plurality of model groups.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 23, 2024
From: FG INNOVATION COMPANY LIMITED
To: SHARP KABUSHIKI KAISHA
Reel/Frame 068656/0188 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 28, 2023
From: TENG, CHIH-YU; YANG, YU-CHIAO
To: FG INNOVATION COMPANY LIMITED
Reel/Frame 065060/0777 →
Continuity (2)
Provisional Application 63415431 · Oct 12, 2022
Related Publication 20240137533A1 · Apr 25, 2024
References Cited (12)
US 20250080764A1 · Jhu · 2025 [cited by examiner]
US 20250220156A1 · Lim · 2025 [cited by examiner]
US 20250227239A1 · Astola · 2025 [cited by examiner]
Youvalari R G et al: “Non-EE2: Gradient and location based convolutional cross-component model (GL-CCCM) for intra prediction”, JVET-AB0119-v1, Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29… [cited by applicant]
Li (Alibaba-Inc) X et al: “EE2-related: On Gradient Linear Model (GLM)”, JVET-AA0138-v1, Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29, 27th Meeting, by teleconference, Jul. 13-22, 2022 (Ju… [cited by applicant]
Astola (Nokia) P et al: “EE2-1.1 a: Convolutional cross-component intra prediction model”, JVET-AA0057-v1, Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29, 27th Meeting, by teleconference, Ju… [cited by applicant]
Series H: Audiovisual and Multimedia Systems Infrastructure of audiovisual services—Coding of moving video, Recommendation ITU-T H.266(Apr. 2022) Versatile video coding. [cited by applicant]
Muhammed Coban et al., “Algorithm description of Enhanced Compression Model 6 (ECM 6)”, Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29, 27th Meeting, by teleconference, Jul. 13-22, 2022, [JV… [cited by applicant]
Adrian Browne et al., “Algorithm description for Versatile Video Coding and Test Model 17 (VTM17)”, Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29, 26th Meeting, by teleconference, Apr. 20-2… [cited by applicant]
Pekka Astola et al., “AHG12: Convolutional cross-component model (CCCM) for intra prediction”, Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29, 26th Meeting, by teleconference, Apr. 20-29, 20… [cited by applicant]
Che-Wei Kuo et al., “AHG12: Enhanced CCLM”, Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29, 26th Meeting, by teleconference, Apr. 20-29, 2022, [JVET-Z0140-v2]. [cited by applicant]
Benjamin Bross et al., “Versatile Video Coding (Draft 10)”, Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11, 19th Meeting: by teleconference, Jun. 22-Jul. 1, 2020, [JVET-S2001-vG]. [cited by applicant]