IP Library Granted Patent US 12,028,519
Granted Patent B2
US 12,028,519 · App. 18/071,370 · Granted Jul 2, 2024

System and method for video coding

Inventors: Jing Ya Li (Singapore, SG); Chong Soon Lim (Singapore, SG); Hai Wei Sun (Singapore, SG); Han Boon Teo (Singapore, SG); Che Wei Kuo (Singapore, SG); Chu Tong Wang (Singapore, SG); Kiyofumi Abe (Osaka, JP); Takahiro Nishi (Nara, JP); Tadamasa Toma (Osaka, JP); Yusuke Kato (Osaka, JP)
Assignee: PANASONIC INTELLECTUAL PROPERTY CORPORATION OF AMERICA
H04N19/117H04N19/105H04N19/119H04N19/124H04N19/13H04N19/18H04N19/186H04N19/82
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,028,519
App. No.
18/071,370
Granted
Jul 2, 2024
Kind
B2
Abstract

An encoder includes circuitry and memory. The circuitry, in operation, generates a first coefficient value by applying a CCALF (cross component adaptive loop filtering) process to a first reconstructed image sample of a luma component. The circuitry generates a second coefficient value by applying an ALF (adaptive loop filtering) process to a second reconstructed image sample of a chroma component. The circuitry generates a third coefficient value by adding the first coefficient value to the second coefficient value, and encodes a third reconstructed image sample of the chroma component using the third coefficient value. In the CCALF process, in response to a coordinate of the second reconstructed image sample being (x, y), coordinates of the first reconstructed image samples are (2x, 2y−1), (2x−1, 2y), (2x, 2y), (2x+1, 2y), (2x−1, 2y+1), (2x, 2y+1), (2x+1, 2y+1), and (2x, 2y+2).

Claims (61)

1. An encoder, comprising:

circuitry; and

memory coupled to the circuitry;

wherein the circuitry, in operation:

generates a first coefficient value by applying a CCALF (cross component adaptive loop filtering) filter to first reconstructed image samples of a luma component;

generates a second coefficient value by applying an ALF (adaptive loop filtering) process to a second reconstructed image sample of a chroma component;

generates a third coefficient value by adding the first coefficient value to the second coefficient value, and

encodes a third reconstructed image sample of the chroma component using the third coefficient value:

wherein in applying the CCALF filter,

in response to a coordinate of the second reconstructed image sample being (x, y), coordinates of the first reconstructed image samples are (2x, 2y−2), (2x−1, 2y−1), (2x, 2y−1), (2x+1, 2y−1), (2x−2, 2y), (2x−1, 2y), (2x, 2y), (2x+1, 2y), (2x+2, 2y), (2x−2, 2y+1), (2x−1, 2y+1), (2x, 2y+1), (2x+1, 2y+1), (2x+2, 2y+1), (2x−1, 2y+2), (2x, 2y+2), (2x+1, 2y+2), and (2x, 2y+3).

2. The encoder of claim 1 , wherein,

the CCALF filter is 16 taps filter having a 5×6 diamond shape.

3. The encoder of claim 1 , wherein,

the first coefficient value is generated by multiplying a filter coefficient value of the CCALF filter to a result of subtraction of a value of one of the first reconstructed image samples (2x, 2y−2), (2x−1, 2y−1), (2x, 2y−1), (2x+1, 2y−1), (2x−2, 2y), (2x−1, 2y), (2x, 2y), (2x+1, 2y), (2x+2, 2y), (2x−2, 2y+1), (2x−1, 2y+1), (2x, 2y+1), (2x+1, 2y+1), (2x+2, 2y+1), (2x−1, 2y+2), (2x, 2y+2), (2x+1, 2y+2), and (2x, 2y+3) and a value of the first reconstructed image sample located at (2x, 2y).

4. An encoding apparatus, comprising:

a block splitter, which, in operation, splits a first image into a plurality of blocks;

an intra predictor, which, in operation, predicts blocks included in the first image, using reference blocks included in the first image;

an inter predictor, which, in operation, predicts blocks included in the first image, using reference blocks included in a second image different from the first image;

a loop filter, which, in operation, filters blocks included in the first image;

a transformer, which, in operation, transforms a prediction error between an original signal and a prediction signal generated by the intra predictor or the inter predictor, to generate transform coefficients;

a quantizer, which, in operation, quantizes the transform coefficients to generate quantized coefficients; and

an entropy encoder, which, in operation, variably encodes the quantized coefficients to generate an encoded bitstream including the encoded quantized coefficients and control information,

wherein the loop filter performs:

generating a first coefficient value by applying a CCALF (cross component adaptive loop filtering) filter to first reconstructed image samples of a luma component;

generating a second coefficient value by applying an ALF (adaptive loop filtering) process to a second reconstructed image sample of a chroma component;

generating a third coefficient value by adding the first coefficient value to the second coefficient value, and

encoding a third reconstructed image sample of the chroma component using the third coefficient value:

wherein in applying the CCALF filter,

in response to a coordinate of the second reconstructed image sample being (x, y), coordinates of the first reconstructed image samples are (2x, 2y−2), (2x−1, 2y−1), (2x, 2y−1), (2x+1, 2y−1), (2x−2, 2y), (2x−1, 2y), (2x, 2y), (2x+1, 2y), (2x+2, 2y), (2x−2, 2y+1), (2x−1, 2y+1), (2x, 2y+1), (2x+1, 2y+1), (2x+2, 2y+1), (2x−1, 2y+2), (2x, 2y+2), (2x+1, 2y+2), and (2x, 2y+3).

5. The encoding apparatus of claim 4 , wherein,

the CCALF filter is 16 taps filter having a 5×6 diamond shape.

6. The encoding apparatus of claim 4 , wherein,

the first coefficient value is generated by multiplying a filter coefficient value of the CCALF filter to a result of subtraction of a value of one of the first reconstructed image samples (2x, 2y−2), (2x−1, 2y−1), (2x, 2y−1), (2x+1, 2y−1), (2x−2, 2y), (2x−1, 2y), (2x, 2y), (2x+1, 2y), (2x+2, 2y), (2x−2, 2y+1), (2x−1, 2y+1), (2x, 2y+1), (2x+1, 2y+1), (2x+2, 2y+1), (2x−1, 2y+2), (2x, 2y+2), (2x+1, 2y+2), and (2x, 2y+3) and a value of the first reconstructed image sample located at (2x, 2y).

7. An encoding method, comprising:

generating a first coefficient value by applying a CCALF (cross component adaptive loop filtering) filter to first reconstructed image samples of a luma component;

generating a second coefficient value by applying an ALF (adaptive loop filtering) process to a second reconstructed image sample of a chroma component;

generating a third coefficient value by adding the first coefficient value to the second coefficient value, and

encoding a third reconstructed image sample of the chroma component using the third coefficient value:

wherein in applying the CCALF filter, in response to a coordinate of the second reconstructed image sample being (x, y),

coordinates of the first reconstructed image samples are (2x, 2y−2), (2x−1, 2y−1), (2x, 2y−1), (2x+1, 2y−1), (2x−2, 2y), (2x−1, 2y), (2x, 2y), (2x+1, 2y), (2x+2, 2y), (2x−2, 2y+1), (2x−1, 2y+1), (2x, 2y+1), (2x+1, 2y+1), (2x+2, 2y+1), (2x−1, 2y+2), (2x, 2y+2), (2x+1, 2y+2), and (2x, 2y+3).

8. A decoding method, comprising:

generating a first coefficient value by applying a CCALF (cross component adaptive loop filtering) filter to first reconstructed image samples of a luma component;

generating a second coefficient value by applying an ALF (adaptive loop filtering) process to a second reconstructed image sample of a chroma component;

generating a third coefficient value by adding the first coefficient value to the second coefficient value, and

decoding a third reconstructed image sample of the chroma component using the third coefficient value:

wherein in applying the CCALF filter,

in response to a coordinate of the second reconstructed image sample being (x, y), coordinates of the first reconstructed image samples are (2x, 2y−2), (2x−1, 2y−1), (2x, 2y−1), (2x+1, 2y−1), (2x−2, 2y), (2x−1, 2y), (2x, 2y), (2x+1, 2y), (2x+2, 2y), (2x−2, 2y+1), (2x−1, 2y+1), (2x, 2y+1), (2x+1, 2y+1), (2x+2, 2y+1), (2x−1, 2y+2), (2x, 2y+2), (2x+1, 2y+2), and (2x, 2y+3).

9. A decoder, comprising:

circuitry; and

memory coupled to the circuitry;

wherein the circuitry, in operation:

generates a first coefficient value by applying a CCALF (cross component adaptive loop filtering) filter to first reconstructed image samples of a luma component;

generates a second coefficient value by applying an ALF (adaptive loop filtering) process to a second reconstructed image sample of a chroma component;

generates a third coefficient value by adding the first coefficient value to the second coefficient value, and

decodes a third reconstructed image sample of the chroma component using the third coefficient value:

wherein in applying the CCALF filter,

in response to a coordinate of the second reconstructed image sample being (x, y), coordinates of the first reconstructed image samples are (2x, 2y−2), (2x−1, 2y−1), (2x, 2y−1), (2x+1, 2y−1), (2x−2, 2y), (2x−1, 2y), (2x, 2y), (2x+1, 2y), (2x+2, 2y), (2x−2, 2y+1), (2x−1, 2y+1), (2x, 2y+1), (2x+1, 2y+1), (2x+2, 2y+1), (2x−1, 2y+2), (2x, 2y+2), (2x+1, 2y+2), and (2x, 2y+3).

10. The decoder of claim 9 , wherein,

the CCALF filter is 16 taps filter having a 5×6 diamond shape.

11. The decoder of claim 9 , wherein,

the first coefficient value is generated by multiplying a filter coefficient value of the CCALF filter to a result of subtraction of a value of one of the first reconstructed image samples (2x, 2y−2), (2x−1, 2y−1), (2x, 2y−1), (2x+1, 2y−1), (2x−2, 2y), (2x−1, 2y), (2x, 2y), (2x+1, 2y), (2x+2, 2y), (2x−2, 2y+1), (2x−1, 2y+1), (2x, 2y+1), (2x+1, 2y+1), (2x+2, 2y+1), (2x−1, 2y+2), (2x, 2y+2), (2x+1, 2y+2), and (2x, 2y+3) and a value of the first reconstructed image sample located at (2x, 2y).

Continuity (4)
Continuation 17667871 · Feb 9, 2022
Continuation PCTJP2020034381 · Sep 10, 2020
Provisional Application 62898845 · Sep 11, 2019
Related Publication 20230119758A1 · Apr 20, 2023
Cited By (2)
US 12,407,828 US 12,457,332