US-12621449-B2 - Cross-component adaptive loop filter for chroma
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.
Inventors
- JONATHAN TAQUET
- Christophe Gisquet
- Guillaume Laroche
- Patrice Onno
Assignees
- CANON KABUSHIKI KAISHA
Dates
- Publication Date
- 20260505
- Application Date
- 20241007
- Priority Date
- 20190820
Claims (14)
- 1 . A method of filtering an image portion using Cross-Component Adaptive Loop Filter, the method comprising: acquiring filter coefficients and first component sample values corresponding to samples surrounding a reference sample; and using said filter coefficients and first component sample values for the Cross-Component Adaptive Loop Filter to produce an output of the Cross-Component Adaptive Loop Filter for a second component, wherein the method comprises restricting a possible value of each filter coefficient, wherein possible values of said filter coefficients are restricted to a range represented by values of powers of two defined by a restricted number of bits, wherein the possible value of each filter coefficient is restricted to any one of zero and values of powers of two represented by the restricted number of bits, wherein said restricted number of bits is lower than a number of bits defined by bit depth, and 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.
- 2 . The method according to claim 1 , wherein a restricted 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 , wherein restricting a possible value comprises determining an absolute value for a filter coefficient from said restricted number of bits used to represent said filter coefficient.
- 4 . The method according to claim 1 , wherein said restricting comprises using a reduced fixed-point decimal precision of the filter coefficient value.
- 5 . The method according to claim 4 , wherein the reduced fixed-point decimal precision is 7 bits.
- 6 . 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.
- 7 . The method according to claim 1 , further comprising: determining if Cross-Component Adaptive Loop Filter (CCALF) is indicated for a given component; and decoding said filter coefficients from a bitstream.
- 8 . The method according to claim 1 , further comprising: determining if Cross-Component Adaptive Loop Filter (CCALF) is indicated for a given component; and encoding said filter coefficients into a bitstream.
- 9 . The method according to claim 7 , wherein said determining if CCALF is indicated for a given component comprises decoding a flag.
- 10 . The method according to claim 8 , wherein said determining if CCALF is indicated for a given component comprises encoding a flag into said slice header.
- 11 . The method according to claim 8 , wherein said CCALF coefficients are directly encoded in a parameter set.
- 12 . The method according to claim 11 , wherein the parameter set is an Adaptive Parameter Set (APS).
- 13 . A device for filtering an image portion using Cross-Component Adaptive Loop Filter, comprising: means for acquiring filter coefficients and first component sample values corresponding to samples surrounding a reference sample; and means for using said filter coefficients and first component sample values for the Cross-Component Adaptive Loop Filter to produce an output of the Cross-Component Adaptive Loop Filter for a second component, wherein the device is configured to restrict a possible value of each filter coefficient, wherein possible values of said filter coefficients are restricted to a range represented by values of powers of two defined by a restricted number of bits, wherein the possible value of each filter coefficient is restricted to any one of zero and values of powers of two represented by the restricted number of bits, wherein said restricted number of bits is lower than a number of bits defined by bit depth, and wherein the device is configured to input a difference value between said first component sample value and a reference sample value into the Cross-Component Adaptive Loop Filter.
- 14 . A non-transitory computer readable storage medium storing a program for causing a computer to execute a method of filtering an image portion using Cross-Component Adaptive Loop Filter, the method comprising: acquiring filter coefficients and first component sample values corresponding to samples surrounding a reference sample; and using said filter coefficients and first component sample values for the Cross-Component Adaptive Loop Filter to produce an output of the Cross-Component Adaptive Loop Filter for a second component, wherein the method comprises restricting a possible value of each filter coefficient, wherein possible values of said filter coefficients are restricted to a range represented by values of powers of two defined by a restricted number of bits, wherein the possible value of each filter coefficient is restricted to any one of zero and values of powers of two represented by the restricted number of bits, wherein said restricted number of bits is lower than a number of bits defined by bit depth, and 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.
Description
CROSS REFERENCE TO RELATED APPLICATION This application is a continuation of U.S. application Ser. No. 17/636,806, filed on Feb. 18, 2022, which is the National Phase application of PCT Application No. PCT/EP2020/073122, filed on Aug. 18, 2020. This application claims the benefit under 35 U.S.C. § 119(a)-(d) of United Kingdom Patent Application No. 1911952.8, filed on Aug. 20, 2019. The above cited patent applications are incorporated herein by reference in their entirety. FIELD OF INVENTION The present invention relates to encoding or decoding of blocks of a video component. Embodiments of the invention find particular, but not exclusive, use when controlling a filter for filtering samples of such component. In particular, but not exclusively, controlling an adaptive loop filter. BACKGROUND Video coding includes image coding (an image is equivalent to a single frame of a video). In video coding, some coding tools such as a quantization of transform coefficients or motion compensation (which is often performed using interpolation filters) often introduce distortion biases/effects (distortions that seem systematic or at least that are not random in a given context). In order to compensate for those biases/artefacts, and to improve (or at least maintain a good level of) coding efficiency some specific coding tools, called post-filters or in-loop filters, are used. A Deblocking filter (DBF), a sample adaptive offset (SAO) filter or an adaptive loop filter (ALF) are some examples of such coding tools. In-loop filters are applied within a coding loop so that the image quality increase they provide for a current frame enables an increased coding efficiency for subsequent frames which are coded based on the current one. For instance, quantisation of DCT coefficients is efficient for video compression but it often introduces blocking artefacts (biases) on the boundaries of compressed blocks of samples. The Deblocking filter reduces undesirable effects arising from such artefacts. Deblocking (using the DBF) a decoded frame within the coding loop (before it serves as a reference frame for the motion compensation for another frame) increases the coding efficiency of motion compensation significantly compared to deblocking the frame out of the coding loop (e.g. just before displaying it for instance). The present invention relates particularly to the adaptive loop filter (ALF), which is also applied as an in-loop filter to reduce undesirable compression artefacts in decoded frames/images. ALF has been studied by the Video Coding Experts Group/Moving Picture Experts Group (VCEG/MPEG) standardisation groups, and it is being considered for use in the Versatile Video Coding (VVC) standard, for example in the fifth version of the VVC Test Model software (VTM-5.0 or VVC Draft version 5). Cross Component ALF (CCALF) was suggested in JVET-O0636, Joint Video Experts Team (JVET), 15th Meeting: Gothenburg, SE, 3-12 Jul. 2019, which is a supplementary filter for ALF, which uses sample values of the Luma channel to estimate an additional error correction of the artefacts made on the sample values of a Chroma channel. CCALF may be applied on each Chroma channel. SUMMARY OF THE INVENTION The present invention relates to improving the coding performance of a portion of the CCALF process by simplifying the cross-component filter. Embodiments of the invention relates to using a reduced bitdepth representation (compared to an internal bitdepth) of either or both of the filter coefficients or the cross-component input samples. This restricting may be performed by a bitshift operation and/or ignoring certain bits of the filter coefficients/input samples. In one aspect of the present invention there is provided a method of filtering an image portion, 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. In such a way, the filter calculation is simplified and the majority of the CCALF coding improvement is surprisingly maintained. Optionally, said restricted number of bits is lower than the number of bits defined by an internal bitdepth. For efficient implementation, said restricted number of bits to represent said filter coefficients and/or first component sample values is so that the filter output can be represented on 16 or fewer bits. Optionally, the method further comprises combining said cross component filter output with an output of a filter corresponding to a different component. Optionally, said first component is Luma and the different component is a Chroma component. For efficient implementation, the method comprises performi