IP Library Granted Patent US 12707058
Granted Patent B2
US 12707058 · App. 18/850,946 · Granted Aug 11, 2026

Apparatus, a method and a computer program for video coding and decoding

Inventors: Pekka Astola (Tampere, FI); Jani Lainema (Tampere, FI); Ramin Ghaznavi Youvalari (Tampere, FI)
Assignee: Nokia Technologies Oy
H04N19/132H04N19/105H04N19/176H04N19/186
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 12707058
App. No.
18/850,946
Granted
Aug 11, 2026
Kind
B2
Abstract

A method comprising: receiving an image block unit of a frame, the image block unit comprising samples in color channels comprising at least one chrominance channel and one luminance channel ( 900 ); reconstructing samples of said luminance channel of the image block unit ( 902 ); determining a reference area for predicting samples of at least one color channel of the image block unit, wherein said reference area comprises one or more of reference samples in a neighboring block in current color channel/frame, in the neighboring of a co-located block in reference color channel/frame; and/or inside the co-located block in reference color channel/frame ( 904 ); determining filter coefficients of a filter for said predicting based on the reference samples and a shape of the filter ( 906 ); and predicting samples of at least one color channel of the image block unit by performing a convolution between the samples of said luminance channel and the filter coefficients ( 908 ).

Claims (53)

1 . An apparatus comprising at least one processor and at least one memory, said at least one memory comprising code thereon, which when executed by said at least one processor, causes the apparatus to at least:

receive an image block unit of a frame, the image block unit comprising samples in color channels comprising at least one chrominance channel and a luma channel;

reconstruct samples of said luma channel of the image block unit;

determine a reference area for predicting samples of at least one color channel of the image block unit, wherein said reference area comprises one or more reference samples in one or more of

a neighboring block in a current color channel or the frame,

a neighboring block of a co-located block in a reference color channel or a frame, and

the co-located block in the reference color channel or the reference frame;

determine filter coefficients of a filter for said predicting samples of at least one color channel of the image block unit based on the one or more reference samples and a shape of the filter; and

predict the samples of the at least one color channel of the image block unit by performing a convolution between one or more samples of said luma channel and the filter coefficients,

wherein to determine the filter coefficients, the apparatus is configured to:

obtain statistics from one or more of the one or more reference samples for a linear regression based on the shape of the filter; and

obtain the filter coefficients by applying a linear regression method on the obtained statistics,

wherein said statistics comprise an auto-correlation matrix and a cross-correlation vector.

2 . The apparatus according to claim 1 , wherein the apparatus is further configured to downsample at least some samples of said luma channel to correspond to a size of the samples of the at least one chrominance channels prior to determining the filter coefficients.

3 . The apparatus according to claim 1 , wherein the shape of the filter is represented by a one dimensional (1D) vector of the filter coefficients or a two dimensional (2D) array of the filter coefficients.

4 . The apparatus according to claim 1 , wherein the apparatus is further configured to:

apply auxiliary parameters from outside of the shape of the filter into said convolution.

5 . The apparatus according to claim 1 , wherein the apparatus is further configured to input values associated with following to the filter:

a luma sample co-located with an output chroma sample;

at least one luma sample above the co-located luma sample;

at least one luma sample below the co-located luma sample;

at least one luma sample left of the co-located luma sample;

at least one luma sample right of the co-located luma sample; and

a bias term.

6 . The apparatus according to claim 5 , wherein the apparatus is further configured to input to the filter a value determined by applying a non-linear function to the luma sample co-located with the output chroma sample.

7 . The apparatus according to claim 1 , wherein the apparatus is further configured to store the filter coefficients in a memory.

8 . The apparatus according to claim 1 , wherein the apparatus is further configured to:

determine samples outside the reference area;

obtain statistics from the samples outside the reference area for a linear regression based on the shape of the filter;

obtain the filter coefficients by applying a linear regression method on the obtained statistics; and

store the filter coefficients in a memory.

9 . The apparatus according to claim 2 , wherein the apparatus is further configured to replace a missing sample from the downsampled samples of said luma channel with a zero-valued sample.

10 . The apparatus according to claim 1 , wherein the apparatus is further configured to:

determine one or more samples not belonging to an object or texture inside said image block unit; and

remove said one or more samples from the reference area.

11 . A method comprising

receiving an image block unit of a frame, the image block unit comprising samples in color channels comprising at least one chrominance channel and a luma channel;

reconstructing samples of said luma channel of the image block unit;

determining a reference area for predicting samples of at least one color channel of the image block unit, wherein said reference area comprises one or more reference samples in one or more of a neighboring block in a current color channel or the frame, a neighboring block of a co-located block in a reference color channel or a reference frame, and the co-located block in the reference color channel or the reference frame;

determining filter coefficients of a filter for said predicting samples of at least one color channel of the image block unit based on the one or more reference samples and a shape of the filter; and

predicting the samples of the at least one color channel of the image block unit by performing a convolution between one or more samples of said luma channel and the filter coefficients,

wherein said determining the filter coefficients comprises:

obtaining statistics from one or more of the one or more reference samples for a linear regression based on the shape of the filter; and

obtaining the filter coefficients by applying a linear regression method on the obtained statistics,

wherein said statistics comprise an auto-correlation matrix and a cross-correlation vector.

12 . The method according to claim 11 , comprising

downsampling at least some samples of said luma channel to correspond to a size of the samples of the at least one chrominance channels prior to determining the filter coefficients.

13 . The method according to claim 11 , wherein the shape of the filter is represented by a one dimensional (1D) vector of the filter coefficients or a two dimensional (2D) array of the filter coefficients.

14 . The method according to claim 11 , comprising:

applying auxiliary parameters from outside of the shape of the filter into said convolution.

15 . The method according to claim 11 , comprising inputting values associated with following to the filter: a luma sample co-located with an output chroma sample, at least one luma sample above the co-located luma sample, at least one luma sample below the co-located luma sample, at least one luma sample left of the co-located luma sample, at least one luma sample right of the co-located luma sample, and a bias term.

16 . The method according to claim 15 , comprising:

inputting to the filter a value determined by applying a non-linear function to the luma sample co-located with the output chroma sample.