IP Library Granted Patent US 12666020
Granted Patent B2
US 12666020 · App. 18/908,573 · Granted Jun 23, 2026

Cross-component adaptive loop filter for chroma

Inventors: Jonathan Taquet (Talensac, FR); Christophe Gisquet (Acigne, FR); Guillaume Laroche (Saint Aubin d'Aubigné, FR); Patrice Onno (Rennes, FR)
Assignee: Canon Kabushiki Kaisha
H04N19/117H04N19/105H04N19/132H04N19/184H04N19/80
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 12666020
App. No.
18/908,573
Granted
Jun 23, 2026
Kind
B2
Abstract

A method of filtering an image is disclosed, the method comprising: receiving filter coefficients and first component sample values corresponding to samples surrounding a reference sample, and inputting said filter coefficients and first component sample values into a cross component filter to produce a cross component filter output; wherein said cross-component filter uses a restricted number of bits to represent said filter coefficients and/or first component sample values to produce said filter output.

Claims (42)

1 . A method of decoding an image portion encoded using Cross-Component Adaptive Loop Filter (CCALF), the method comprising:

determining if CCALF is indicated for a given component;

decoding CCALF coefficients from a bitstream; and

decoding said image portion using said CCALF coefficients,

wherein said CCALF coefficients are each represented by a fixed number of bits in the bitstream,

wherein possible values of said filter coefficients are restricted to a range represented by values of powers of two defined by the fixed number of bits,

wherein a possible value of each filter coefficient has been restricted to any one of zero and values of powers of two represented by the fixed number of bits, and

wherein the fixed number of bits is lower than the number of bits defined by bit depth.

2 . The method according to claim 1 , wherein a fixed number of bits to represent each filter coefficient and/or first component sample value is so that the filter output can be represented on 16 or fewer bits.

3 . The method according to claim 1 , further comprising combining said cross-component filter output with an output of a filter corresponding to a different component.

4 . The method according to claim 3 , wherein said first component is Luma and the different component is a Chroma component.

5 . The method according to claim 1 , wherein the method comprises inputting a difference value between said first component sample value and a reference sample value into the Cross-Component Adaptive Loop Filter.

6 . The method according to claim 1 , wherein restricting a possible value comprises determining an absolute value for a filter coefficient from a fixed number of bits used to represent said filter coefficient.

7 . The method according to claim 1 , wherein a possible value of each filter coefficient has been restricted using a reduced fixed-point decimal precision of the filter coefficient value.

8 . The method according to claim 7 , wherein the reduced fixed-point decimal precision is 7 bits.

9 . The method according to claim 1 , wherein a filter operation comprises a multiplication of sample values and a filter coefficient, and said multiplication is implemented via a bitwise shift and/or combination with another filter coefficient so as to replace said multiplication operation by bitwise shift and addition operations.

10 . The method according to claim 1 , wherein said determining if CCALF is indicated for a given component comprises decoding a flag.

11 . The method according to claim 1 , wherein each fixed number of bits comprises:

a bit indicating the sign of a coefficient; and

a series of bits indicating an amplitude of the coefficient.

12 . The method according to claim 1 , wherein each fixed number of bits comprises:

at least one bit in the bitstream indicating if a coefficient is zero or not, and if the coefficient is not zero a bit indicating the sign of the coefficient.

13 . The method according to claim 12 , wherein each fixed number of bits comprises:

if the coefficient is not zero, a sequence of bits equal to one indicating an amplitude of the coefficient.

14 . The method according to claim 12 , wherein said at least one bit being equal to one indicates that the coefficient is zero.

15 . The method according to claim 12 , the sign bit equal to one indicates that the coefficient is negative.

16 . A decoder for decoding an image portion encoded using Cross-Component Adaptive Loop Filter (CCALF), the decoder comprising:

means for determining if CCALF is indicated for a given component;

means for decoding CCALF coefficients from a bitstream; and

means for decoding said image portion using said CCALF coefficients,

wherein said CCALF coefficients are each represented by a fixed number of bits in the bitstream,

wherein possible values of said filter coefficients are restricted to a range represented by values of powers of two defined by the fixed number of bits,

wherein a possible value of each filter coefficient has been restricted to any one of zero and values of powers of two represented by the fixed number of bits, and

wherein the fixed number of bits is lower than the number of bits defined by bit depth.

17 . A non-transitory computer readable storage medium storing a program for causing a computer to execute a method of decoding an image portion encoded using Cross-Component Adaptive Loop Filter (CCALF), the method comprising:

determining if CCALF is indicated for a given component;

decoding CCALF coefficients from a bitstream; and

decoding said image portion using said CCALF coefficients,

wherein said CCALF coefficients are each represented by a fixed number of bits in the bitstream,

wherein possible values of said filter coefficients are restricted to a range represented by values of powers of two defined by the fixed number of bits,

wherein a possible value of each filter coefficient has been restricted to any one of zero and values of powers of two represented by the fixed number of bits, and

wherein the fixed number of bits is lower than the number of bits defined by bit depth.