Deblocking filter selection in video or image coding
AssigneeTelefonaktiebolaget LM Ericsson (publ)
InventorsKenneth Andersson, Jack Enhorn
Life of this patent
Estimating the term…
Abstract
The long filter decision in VVC is modified by adding at least one gradient check that at least includes sample p6 or q6. This makes it possible to avoid using the long filters when there is some natural structure at sample p6 or q6. In one specific embodiment at least two gradient checks including both q6 and p6 are added. In another embodiment, the dpq threshold is modified from beta>>2 to beta>>4. This threshold change embodiment may be used in conjunction with or instead of the embodiment in which a gradient check that includes p6 and/or q6 is added to the long filter decision.
Claims19
A method for deblocking filtering of vertical and/or horizontal block boundaries, the method being performed by an image or video encoder or an image or video decoder, the method comprising:
- obtaining a first set of sample values comprising a first block of sample values and a second block of sample values, wherein the first block of sample values comprises a set of sample values B1_i,k for i=0-7 and k=0-3, the second block of sample values comprises a set of sample values B2_j,k for j=0-7 and k=0-3 and the second block has a maximum filter length, maxFilterLengthQ;
- deciding whether or not to use a long filter to filter at least a subset of the first set of sample values, wherein deciding whether or not to use a long filter to filter at least a subset of the first set of sample values comprises:
- calculating a first gradient value, maxGradB1_6,0 as Abs(B1_7,0−B1_6,0−B1_5,0+B1_4,0);
- calculating a first pq value, pq1_0, using maxGradB1_6,0, wherein pq1_0=(sp+sq), wherein sp=(Abs(B1_0,0−B1_3,0)+Abs(B1_3,0−B1_7,0)+maxGradB1_6,0+1)>>1 and wherein:
- if maxFilterLengthQ is equal to 7, then sq=(Abs(B2_0,0−B2_3,0)+Abs(B2_3,0−B2_7,0)+maxGradB2_6,0+1)>>1, where maxGradB2_6,0 is a third gradient value,
- if maxFilterLengthQ is equal to 5, then sq=(Abs(B2_0,0−B2_3,0)+Abs(B2_3,0−B2_5,0)+1)>>1, and
- if maxFilterLengthQ is not equal to 7 and is not equal to 5, then sq=Abs(B2_0,0−B2_3,0);
- comparing pq1_0 to a threshold, wherein the threshold is based on a value β that is selected from a set of predetermined beta values based on a quantization parameter value, Q;
- calculating a second gradient value, maxGradB1_6,3, using sample value B1_6,3;
- calculating a second pq value, pq1_3, using maxGradB1_6,3;
- and
- comparing pq1_3 to the threshold;
- and
- applying the long filter to filter at least the subset of the first set of sample values, as a result of deciding to use the long filter.
An apparatus for deblocking filtering of vertical and/or horizontal block boundaries, the apparatus comprising:
- memory;
- and
- processing circuitry coupled to the memory, wherein the apparatus is configured to perform a method comprising:
- obtaining a first set of sample values comprising a first block of sample values and a second block of sample values, wherein the first block of sample values comprises a set of sample values B1_i,k for i=0-7 and k=0-3, the second block of sample values comprises a set of sample values B2_j,k for j=0-7 and k=0-3 and the second block has a maximum filter length, maxFilterLengthQ;
- deciding whether or not to use a long filter to filter at least a subset of the first set of sample values, wherein deciding whether or not to use a long filter to filter at least a subset of the first set of sample values comprises:
- calculating a first gradient value, maxGradB1_6,0 as Abs(B1_7,0−B1_6,0−B1_5,0+B1_4,0);
- calculating a first pq value, pq1_0, using maxGradB1_6,0, wherein pq1_0=(sp+sq), wherein sp=(Abs(B1_0,0−B1_3,0)+Abs(B1_3,0−B1_7,0)+maxGradB1_6,0+1)>>1 and wherein:
- if maxFilterLengthQ is equal to 7, then sq=(Abs(B2_0,0−B2_3,0)+Abs(B2_3,0−B2_7,0)+maxGradB2_6,0+1)>>1, where maxGradB2_6,0 is a third gradient value,
- if maxFilterLengthQ is equal to 5, then sq=(Abs(B2_0,0−B2_3,0)+Abs(B2_3,0−B2_5,0)+1)>>1, and
- if maxFilterLengthQ is not equal to 7 and is not equal to 5, then sq=Abs(B2_0,0−B2_3,0);
- comparing pq1_0 to a threshold, wherein the threshold is based on a value β that is selected from a set of predetermined beta values based on a quantization parameter value, Q;
- calculating a second gradient value, maxGradB1_6,3, using sample value B1_6,3;
- calculating a second pq value, pq1_3, using maxGradB1_6,3;
- and
- comparing pq1_3 to the threshold;
- and
- applying the long filter to filter at least the subset of the first set of sample values, as a result of deciding to use the long filter.
Dependencies are inferred from the claim text.