A method of coding a moving picture reduces blocking artifacts. The method includes defining pixel sets S0, S1, S2 around a block boundary, selectively determining a deblocking mode as a default mode or a dc offset mode depending on the degree of blocking artifacts. If the default mode is selected, frequency information is obtained around the block boundary per pixel using a 4-point DCT kernel, for example, a magnitude of a discontinuous component belonging to the block boundary is replaced with a minimum magnitude of discontinuous components belonging to the surroundings of the block boundary in the frequency domain and the replacing step is applied to the spatial domain. If the dc offset mode is selected and a determination is made to perform dc offset mode, the blocking artifacts in a smooth region are removed in the dc offset mode.

Patent
   RE45135
Priority
Sep 09 1997
Filed
Jul 06 2011
Issued
Sep 16 2014
Expiry
Apr 24 2018
Assg.orig
Entity
Large
0
49
EXPIRED
0. 20. A method for removing blocking artifacts in a coding system of a moving picture, the method comprising:
determining a plurality of pixel sets around a block boundary;
selecting one of a first mode and a second mode as a deblockinq mode based on a degree of blocking artifacts;
performing an analysis, if the first mode is selected, the analysis including,
obtaining frequency information for each of the plurality of pixel sets,
replacing a magnitude of at least one discontinuous component in the frequency domain of a selected pixel set of the plurality of pixel sets belonging to the block boundary with a magnitude of at least one corresponding discontinuous component belonging to a replacement pixel set of the plurality of pixel sets near the block boundary if the magnitude of the at least one discontinuous component is less than a quantization parameter, and
applying the replaced frequency information of the selected pixel set to the spatial domain to remove the blocking artifacts; and
removing the blocking artifacts in the second mode, if the second mode is selected and a second mode condition is satisfied.
0. 33. A method for removing blocking artifacts in a coding system comprising:
determining at least pixel sets S0, S1, S2 around a block boundary;
selecting one of a default mode and a dc offset mode as a deblocking mode based on an amount of blocking artifacts;
deblocking filtering of pixels adjacent the block boundary based on frequency information of the pixels adjacent to the block boundry, if the default mode is selected; and
removing artifacts in the dc offset mode, if the dc offset mode is selected and a dc offset mode condition is satisfied, wherein the artifacts are removed in the dc offset mode according to the following equation:

{bk; −4≦k≦4}={1,1,2,2,4,2,2,1,1}//16
wherein v0-v9 are boundary pixels, QP is the quantization parameter of a block adjacent the block boundary, and vn is an adjusted pixel value,
wherein bk and pn+k are variables used to calculate the adjusted pixel value vn where n is an integer among 1, 2, 3, 4, 5, 6, 7, and 8,
wherein bk changes according to a value of k where k is one of −4, −3, −2, −1, 0, 1, 2, 3, 4,
wherein pn+1 is decided according to pm where m=n+1 and m is an integer,
wherein Pm is one of boundary pixels values v0 to v9 according to given conditions of (|v1−v0|<QP) and (|v8−v9|<QP) and a value of m.
0. 1. A method for removing blocking artifacts in a coding system of a moving picture comprising the steps of:
determining a plurality of pixel sets around a block boundary;
selecting one of a first mode and a second mode as a deblocking mode based on a degree of blocking artifacts;
performing an analysis, if the first mode is selected, comprising,
obtaining frequency information for each of the plurality of pixel sets,
replacing a magnitude of at least one discontinuous component in the frequency domain of a selected pixel set of the plurality of pixel sets belonging to the block boundary with a magnitude of at least one corresponding discontinuous component belonging to a replacement pixel set of the plurality of pixel sets near the block boundary, and
applying the replaced frequency information of the selected pixel set to the spatial domain to remove the blocking artifacts; and
removing the blocking artifacts in the second mode, if the second mode is selected and a second mode condition is satisfied.
0. 2. The method as claimed in claim 1, wherein the magnitude of the discontinuous component of the selected pixel set is replaced with a minimum value of a magnitude of discontinuous components of one of a first pixel set and a second pixel set when the selected pixel set is located across the block boundary and the first and second pixel sets are located within a block adjacent the block boundary.
0. 3. The method of claim 1, further comprising determining a mode decision value, wherein the second mode is selected if the mode decision value is greater than a first threshold value.
0. 4. The method as claimed in claim 3, wherein mode decision value is determined based on the following equation:

mode decision value=φ(v0−v1)+φ(v1−v2)+φ(v2−v3)+φ(v3−v4)+φ(v4−v5)+φ(v5−v1)+φ(v7−v8)+φ(v8−v9),
wherein φ(γ)=1 when |γ|≦ a second threshold value and φ(γ)=0 otherwise, and wherein v0−v9 are boundary pixel values.
0. 5. The method as claimed in claim 1, wherein the second mode condition is satisfied when an absolute value of a maximum data value minus a minimum data value in block boundary pixels is smaller than 2QP, wherein the maximum data value=MAX(v1, v2, v3, v4, v5, v6, v7, v8), the minimum data value=MIN(v1, v2, v3, v4, v5, v6, v7, v8), QP is the quantization parameter of a block adjacent the block boundary and v1−v8 are pixels.
0. 6. The method as claimed in claim 1, wherein the second mode performs low pass filtering to remove the blocking artifacts.
0. 7. The method as claimed in claim 1, wherein the deblocking filtering in the default mode is performed by replacing the magnitude of the discontinuous component of pixels v4 and v5 that sandwich the block boundary with v4′ and v5′, according to the following equation:
v4′=v4−d
v5′=v5+d
d=CLIP(c2.(a3,0′−a3,0)//c3,0,(v4−v5)/2)*δ(|a3,0|<QP)
a3,0′=SIGN(a3,0)*MIN(|a3,0|,|a3,1|,|a3,2|)
a3,0=([c1−c2 c2−c1]*[v3v4v5v6]T)//c3
a3,1=([c1−c2 c2−c1]*[v1v2v3v4]T)//c3
a3,2=([c1−c2 c2−c1]*[v5v6v7v8]T)//c3,
where QP is the quantization parameter of the block containing the pixel v5, values c1, c2, c3 are kernel constants used in a DCT, and values of a3,0, a3,1, a3,2 are the discontinuous component in each of the plurality of pixel sets, respectively.
0. 8. The method as claimed in claim 7, wherein c1 and c2 are approximated to an integer and c3 is approximated to a multiple of 2, wherein the DCT is a 4-point DCT used to determine the frequency information, and wherein a3,0, a3,1, a3,2 are evaluated from an inner product of the DCT kernel and the selected pixel set being S0, a first pixel set S1 and a second pixel set S2.
0. 9. The method as claimed in claim 7, wherein |a3,0|<QP prevents over-smoothing.
0. 10. The method as claimed in claim 1, further comprising performing the deblocking filtering process around horizontal and vertical block boundaries in a frame.
0. 11. The method of claim 1, wherein the removing blocking artifacts in the second mode satisfies the following equation:
v n = 4 k = - 4 b k · p n + k , 1 n 8

Pm=(|v1−v0<QP)?v0:v1,
if m<1;
vm, if 1≦m≦8;
(|v8−v9|<QP) v9:v8, if m>8;
{bk:−4≦k≦4}={1,1,2,2,4,2,2,1,1}//16,
where v0−v9 are boundary pixels, QP is the quantization parameter of a block adjacent the block boundary, and vm is an adjusted pixel value.
0. 12. The method of claim 1, wherein the replacement pixel set contains a minimum magnitude of the at least one corresponding discontinuous component.
0. 13. The method of claim 1, wherein the first mode is the default mode and the second mode is the dc offset mode, and wherein each of the plurality of pixel sets has four pixels.
0. 14. A method for removing blocking artifacts in a coding system comprising:
determining at least pixel sets S0, Sl, S2 around a block boundary;
selecting one of a default mode and a dc offset mode as a deblocking mode based on an amount of blocking artifacts;
deblocking filtering of pixels adjacent the block boundary if the default mode is selected; and
removing artifacts in the dc offset mode, if the dc offset mode is selected and a dc offset mode condition is satisfied, wherein the artifacts are removed in the dc offset mode according to the following equation:
v n = 4 k = - 4 b k · p n + k , 1 n 8
Pm=(|v1−v0|<QP)?v0:v1,
if m<1;
vm, if 1≦m≦8;
(|v8−v9|<QP) v9:v8, if m>8;
{bk:−4≦k≦4}={1,1,2,2,4,2,2,1,1}//16,
wherein v0−v9 are boundary pixels, QP is the quanatation parameter of a block adjacent the block boundary, and vn is an adjusted pixel value.
0. 15. The method of claim 14, wherein the deblocking filtering step comprises:
obtaining frequency information for each of the plurality of pixel sets S0, S1, S2;
replacing a magnitude of at least one discontinuous component in the frequency domain of a selected pixel set S0 of the plurality of pixel sets belonging to the block boundary with a magnitude of at least one corresponding discontinuous component belonging to a replacement pixel set S1, S2 of the plurality of pixel sets near the block boundary; and
applying the replaced frequency information of the selected pixel set S0 to the spatial domain to remove the blocking artifacts.
0. 16. The method of claim 14, further comprising determining a mode decision value, wherein the dc offset mode is selected if the mode decision value is greater than a first threshold value, wherein mode decision value is determined based on the following equation:

mode decision value=φ(v0−v1)+φ(v1−v2)+φ(v2−v3)+φ(v3−v4)+φ(v4−v5)+φ(v5−v1)+φ(v7−v8)+φ(v8−v9),
wherein φ(γ)=1 when |γ|≦ a second threshold value and φ(γ)=0 otherwise, and wherein v0−v9 are boundary pixel values.
0. 17. The method of claim 14, wherein the dc offset mode condition is satisfied when an absolute value of a maximum data value minus a minimum data value in block boundary pixels is smaller than 2QP, wherein the maximum data value=MAX(v1, v2, v3, v4, v5, v6, v7, v8), the minimum data value=MIN(v1, v2, v3, v4, v5, v6, v7, v8), QP is the quantization parameter of a block adjacent the block boundary and v1−v8 are the block boundary pixels.
0. 18. The method of claim 14, wherein the deblocking filtering in the default mode is performed by replacing the magnitude of the discontinuous component of pixels v4 and v5 sandwiching the block boundary with v4′ and v5′, according to the following equation:
v4′=v4−d
v5′=v5+d
d=CLIP(c2.(a3,0′−a3,0)//c3,0,(v4−v5)/2)*δ(|a3,0|<QP)
a3,0′=SIGN(a3,0)*MIN(|a3,0|,|a3,1|,|a3,2|)
a3,0=([c1−c2 c2−c1]*[v3v4v5v6]T)//c3
a3,1=([c1−c2 c2−c1]*[v1v2v3v4]T)//c3
a3,2=([c1−c2 c2−c1]*[v5v6v7v8]T)//c3,
where QP is the quantization parameter of the block containing the pixel v5, values c1, c2, c3 are kernel constants used in a 4-point DCT, and values a3,0, a3,1,a3,2 are based on a simple inner product of the DCT kernel and the selected pixel set S0, a first pixel set S1 and the second pixel set S2.
0. 19. The method of claim 14, further comprising performing the determining through removing steps for each horizontal and vertical block boundaries in a frame.
0. 21. The method of claim 20, wherein the magnitude of the discontinuous component of the selected pixel set is replaced with a minimum value of a magnitude of discontinuous components of one of a first pixel set and a second pixel set when the selected pixel set is located across the block boundary and the first and second pixel sets are located within a block adjacent the block boundary.
0. 22. The method of claim 20, further comprising determining a mode decision value, wherein the second mode is selected if the mode decision value is greater than a first threshold value.
0. 23. The method of claim 22, wherein mode decision value is determined based on the following equation:

mode decision value=φ(v0−v1)+φ(v1−v2)+φ(v2−v3)+φ(v3−v4)+φ(v4−v5)+φ(v5−v1)+φ(v7−v8)+φ(v8−v9),
wherein φ(γ)=1 when |γ|≦ a second threshold value and φ(γ)=0 otherwise,
wherein v0−v9 are boundary pixel values, and
wherein φ(γ) is a function generating 1 or 0 according to |γ| and γ is a variable denoting a result of substraction of two given boundary pixel values.
0. 24. The method of claim 20, wherein:
the second mode condition is satisfied when an absolute value of a maximum data value minus a minimum data value in block boundary pixels is smaller than 2QP; and
the maximium data value=MAX(v1, v2, v3, v4, v5, v6, v7, v8), the minimum data value=MIN(v1, v2, v3, v4, v5, v6, v7, v8), QP is the quantization parameter of a block adjacent the block boundary and v1−v8 are pixels.
0. 25. The method of claim 20, wherein the second mode performs low pass filtering to remove the blocking artifacts.
0. 26. The method of claim 20, wherein the deblocking filtering in the default mode is performed by replacing the magnitude of the discountinuous component of pixels v4 and v5 that sandwich the block boundary with v4′ and v5′, according to the following equation:

v4′=v4−d

v5′=v5+d

d=CLIP(c2·(a3,0′−a3,0)//c3,0,(v4−v5)/2)*δ(|a3,0|<QP)

a3,0′=SIGN(a3,0)*MIN(|a3,0|,|a3,1|,|a3,2|)

a3,0=([c1−c2 c2−c1]*[v3v4v5v6]T)//c3

a3,1=([c1−c2 c2−c1]*[v1v2v3v4]T)//c3

a3,2=([c1−c2 c2−c1]*[v5v6v7v8]T)//c3
where QP is the quantization parameter of the block containing the pixel v5, values c1, c2, c3 are kernel constants used in a DCT, and values of a3,0, a3,1, a3,2 are the discontinous component in each of the plurality of pixel sets, respectviely, and
wherein d is a variable used to calculate v4′ and v5′ and denotes a result of a function CLIP (x, p, q) where x, p, and q are integers,
wherein the function CLIP (x, p, q) clips x to a value between p and q,
wherein δ(condition) is a function generating 1 if the “condition” is true and generating 0 if the “condition” is not true,
wherein T denotes a transpose of vector matrix, and
wherein v1, v2, v6, and v7 denote boundary pixel values.
0. 27. The method of claim 26, wherein:
c1 and c2 are approximated to an intenger and c3 is approximated to a multiple of 2;
the DCT is a 4-point DCT used to determine the frequency information; and
a3,0, a3,1, a3,2 are evaluated from an inner product of the DCT kernel and the selected pixel set being S0, a first pixel set S1 and a second pixel set S2.
0. 28. The method of claim 26, wherein |a3,0|<QP prevents over-smoothing.
0. 29. The method as claimed in claim 20, further comprising performing the deblocking filtering process around horizontal and vertical block boundaries in a frame.
0. 30. The method of claim 20, wherein the removing blocking artifacts in the second mode satisfies the following equation:

{bk; −4≦k≦4}={1,1,2,2,4,2,2,1,1}//16
where v0-v9 are boundary pixels, QP is the quantization parameter of a block adjacent the block boundary, and vn is an adjusted pixel value,
wherein bk and pn+k are variables used to calculate the adjusted pixel value vn where n is an integer among 1, 2, 3, 4, 5, 6, 7, and 8,
wherein bk changes according to a value of k where k is one of −4, −3, −2, −1, 0, 1, 2, 3, 4,
wherein pn+k is decided according to pm where m=n+k and m is an integer,
wherein Pm is one of boundary pixels values v0 to v9 according to given conditions of (|v1−v0|<QP) and (|v8−v9|<QP) and a value of m.
0. 31. The method of claim 20, wherein the replacement pixel set contains a minimum magnitude of the at least one corresponding discontinuous component.
0. 32. The method of claim 20, wherein:
the first mode is the default mode and the second mode is the dc offset mode; and
each of the plurality of pixel sets has four pixels.
0. 34. The method of claim 33, wherein the deblocking filtering step comprises:
obtaining frequency information for each of the plurality of pixel sets S0, S1, S2;
replacing a magnitude of at least one discontinuous component in the frequency domain of a selected pixel set S0 of the plurality of pixel sets belonging to the block boundary with a magnitude of at least one corresponding discontinuous component belonging to a replacement pixel set S1, S2 of the plurality of pixel sets near the block boundary; and
applying the replaced frequency information of the selected pixel set S0 to the spatial domain to remove the blocking artifacts.
0. 35. The method of claim 33, further comprising determining a mode decision value, wherein the dc offset mode is selected if the mode decision value is greater than a first threshold value, wherein mode decision value is determined based on the following equation:

mode decision value=φ(v0−v1)+φ(v1−v2)+φ(v2−v3)+φ(v3−v4)+φ(v4−v5)+φ(v5−v1)+φ(v7−v8)+φ(v8−v9),
wherein φ(γ)=1 when |γ|≦ a second threshold value and φ(γ)=0 otherwise,
wherein v0-v9 are boundary pixel values, and
wherein φ(γ) is a function generating 1 or 0 according to |γ| and γ is a variable denoting a result of substraction of two given boundary pixel values.
0. 36. The method of claim 33, wherein:
the dc offset mode condition is satisfied when an absolute value of a maximum data value minus a minimum data value in block boundary pixels is smaller than 2QP; and
the maximum data value=MAX(v1, v2, v3, v4, v5, v6, v7, v8), the minimum data value=MIN(v1, v2, v3, v4, v5, v6, V7, v8), QP is the quantization parameter of a block adjacent the block boundary and v1-v8 are the block boundary pixels.
0. 37. The method of claim 33, wherein the deblocking filtering in the default mode is performed by replacing the magnitude of the discontinuous component of pixels v4 and v5 sandwiching the block boundary with v4′ and v5′, according to the following equation:

v4′=v4−d

v5′=v5+d

d=CLIP(c2·(a3,0′−a3,0)//c3,0,(v4−v5)/2)*δ(|a3,0|<QP)

a3,0′=SIGN(a3,0)*MIN(|a3,0|,|a3,1|,|a3,2|)

a3,0=([c1−c2 c2−c1]*[v3v4v5v6]T)//c3

a3,1=([c1−c2 c2−c1]*[v1v2v3v4]T)//c3

a3,2=([c1−c2c2−c1]*[v5v6v7v8]T)//c3,
where QP is the quantization parameter of the block containing the pixel v5, values c1, c2, c3 are kernel constants used in a 4-point DCT, and values of a3,0, a3,1, a3,2, are based on a simple inner product of the DCT kernel and the selected pixel set S0, a first pixel set S1 and the second pixel set S2, and
wherein d is a variable used to calculate v4′ and v5′ and denotes a result of a function CLIP (x, p, q) where x, p, and q are integers,
wherein the function CLIP (x, p, q) clips x to a value between p and q,
wherein δ(condition) is a function generating 1 if the “condition” is true and generating 0 if the “condition” is not true,
wherein T denotes a transpose of vector matrix, and
wherein v1, v2, v6, and v7 denote boundary pixel values.
0. 38. The method of claim 33, further comprising performing the determining through removing steps for each horizontal and vertical block boundaries in a frame.
0. 39. The method of claim 20, wherein the method is performed by a smart phone.
0. 40. The method of claim 33, wherein the method is performed by a smart phone.

If m<1;

vm, if 1≦m≦8;

(|v8−v9|<QP) v9:v8, if m>8;

{bk:−4≦k≦4}={1,1,2,2,4,2,2,1,1}//16,

wherein v0−v9 are boundary pixels, QP is the quantitation parameter of a block adjacent the block boundary, and vm is an adjusted pixel value.

To further achieve the above advantages and in accordance with the purpose of the present invention, as embodied and broadly described, a method of removing blocking artifacts in a coding system of a moving picture according to the present invention includes the steps of defining pixel sets S0, S1, S2 around block boundary, selectively determining a deblocking mode as a default mode or a DC offset mode depending on the degree of blocking artifacts after obtaining a mode decision value, obtaining frequency information around the block boundary per pixel using 4-point DCT kernel if the default mode is determined, replacing a magnitude of a discontinuous component belonging to the block boundary with a minimum magnitude of discontinuous components belonging to the surroundings of the block boundary in the frequency domain and applying this replacing step to the spatial domain, judging whether or not it is necessary to perform DC offset mode if the DC offset mode is determined, and removing the blocking artifacts in a smooth region when the judgment is to perform the DC offset mode.

The invention will be described in detail with reference to the following drawings in which like reference numerals refer to like elements wherein:

FIG. 1 is a diagram showing a pixel matrix illustrating a related art method of removing blocking artifacts;

FIG. 2 is a diagram showing a pixel matrix illustrating block boundaries in horizontal and vertical directions;

FIG. 3 is a schematic diagram showing a 4-point DCT basis;

FIG. 4 is a flow chart showing a preferred embodiment of a method of removing blocking artifacts according to the present invention; and

FIG. 5 is a table showing exemplary results of a preferred embodiment of a method of removing blocking artifacts according to the present invention.

In a preferred embodiment of the present invention, blocking artifacts at a block boundary are removed in a frequency domain not a spatial domain. Frequency features around the block boundary are preferably obtained using a 4-point DCT kernel, which can be easily calculated. Thus, a complex region at the block boundary can effectively be processed by extending the smoothness of a picture from the frequency domain to the spatial domain.

Using the 4-point DCT kernel has advantages that frequency analysis is possible and deblocking can easily be processed. Therefore, the 4-point DCT Kernel can efficiently remove the blocking artifacts of a real time moving picture.

The blocking artifacts appear at the block boundary between fixed block patterns in the form of a line of discontinuity. Accordingly, removal of the blocking artifacts involves transformation of the discontinuity of the block boundary region to continuity.

FIG. 2 shows a block boundary region in a horizontal or a vertical direction. In one-dimensional images consisting of four pooints such as S0, S1 and S2 located around the block boundary, S1 and S2 are individually processed with a block-unit compression method. Thus, S1 and S2 are not influenced by the blocking artifacts. However, S0 is located across a block boundary. Thus, S0 is directly influenced by the blocking artifacts.

In the preferred embodiment according to the present invention, frequency information in S1 and S2 is used to reduce the blocking artifacts from S0. When images change smoothly, image features of S0, S1 and S2 are similar to one another. This means that image features of S0, S1 and S2 are also similar to one another in the frequency domain.

Since the frequency features of S0, S1 and S2 are similar, the frequency component of S0 influenced by the blocking artifacts is adjusted considering the frequency components of S1, S2, which can remove the blocking artifacts. Here, DCT, which is widely applied as an image compression technique, is used as a frequency analysis tool.

The blocking artifacts may appear in both horizontal and vertical block boundaries. In the preferred embodiment according to the present invention, after the blocking artifacts at the horizontal block boundary are removed, the blocking artifacts at the vertical block boundary are removed.

Pixel sets S0, S1 and S2, which overlap, can be defined around the horizontal block boundary. S0 is a 4-point pixel set arranged across the block boundary while S1 and S2 are 4-point pixel sets that adjoin the block boundary.

That is to say, the pixel set S0 contains a discontinuity. The discontinuity in S0 is removed in the preferred embodiment using common information (e.g., between S0 and S2), which are not directly influenced by the discontinuity of the block boundary.

The 4-point DCT basis is used to get information around the block boundary and is shown in FIG. 3. The 4-point DCT basis vectors have symmetric and anti-symmetric properties. In other words, assuming the 4-point DCT coefficients of S0 are defined as a0,0(DC), a1,0, a2,0, a3,0, although both a2,0 and a3,0 are the high frequency components, a2,0 is symmetric and a3,0 is anti-symmetric around the center.

As shown in FIG. 2, since the center of S0 is coincident with the block boundary, a factor directly affecting the block discontinuity is not the symmetric component but the anti-symmetric component. Thus, in the preferred embodiment the magnitude of a3,0 in the frequency domain is adjusted based on the anti-symmetric component so that the block discontinuity can be adjusted. An appropriate adjustment of a3,0 in the frequency domain is directly related to the removal of the block discontinuity in the spatial domain.

Operations for reduction or removal of the block discontinuity will now be described. In the preferred embodiment, the magnitude of a3,0 is replaced with the minimum value of the magnitudes of a3,1 and a3,2. By doing this, a large blocking artifact, which appears when one side of the block boundary to be processed is smooth, can be removed. For a complex region where both S1 and S2 are the objects of motion (i.e., all the values of the magnitudes of a3,0, a3,1 and a3,2 are large), there is little influence on the block boundary.

A method for removing the blocking artifacts in a default mode in the preferred embodiment is as follows:

v4′=v4−d;

v5′=v5+d; and

d=CLIP(c2.(a3,0′−a3,0)//c3,0,(v4−v5)/2)*δ(|a3,0|<QP),

where a3,0′=SIGN(a3,0)*MIN(|a3,0|,|a3,1|,|a3,2|),

a3,0=([c1−c2 c2−c1]*[v3v4v5v6]T)//c3,

a3,1=([c1−c2 c2−c1]*[v1v2v3v4]T)//c3, and

a3,2=([c1−c2 c2−c1]*[v5v6v7v8]T)//c3.

Thus, boundary pixels v4 and v5 that adjoin the boundary are replaced with v4′ and v5′, respectively. QP is the quantization parameter of the macroblock where pixel v5 belongs. Values c1, c2, c3 are kernel constants used in the 4-point DCT. The values of c1 and c2 are approximated to an integer, and the value of c3 is approximated to a multiple of 2. The values of a3,0, a3,1, a3,2 are evaluated from the simple inner product of the DCT kernel and the pixel sets S0, S 1 and S2.

The condition |a3,0|<QP is used to count the influence of the quantization parameter on the blocking artifacts. The condition |a3,0|<QP also prevents over-smoothing when the blocking artifacts are not very serious. The clipping operation on the compensated value is performed to prevent the direction of the gradient at the block boundary from being enlarged or changed in an opposite direction.

This filtering process is performed in both horizontal and vertical block boundaries. In this manner, the blocking artifacts in the whole frame can be removed.

In the default mode, only the boundary pixel values v4 and v5 are compensated. Thus, the default mode is not sufficient to remove the blocking artifacts in a very smooth region, such as a setting in a picture. Therefore, in the preferred embodiment the blocking artifacts in the smooth region are removed by a DC offset mode.

A method for removing the blocking artifacts in the DC offset mode in the preferred embodiment is as follows:

max=MAX(v1, v2, v3, v4, v5, v6, v7, v8),

min=MIN(v1, v2, v3, v4, v5, v6, v7, v8),

if(|max−min|<2QP), /*low pass filtering*/

v n = 4 k = - 4 b k · p n + k , 1 n 8
Pm=(|v1−v0|<QP)?v0:v1,

if m<1;

vm, if 1≦m≦8;

(|v8−v9|<QP) v9:v8, if m>8;

{bk:−4≦k≦4}={1,1,2,2,4,2,2,1,1}//16.

If the absolute value of the maximum data value minus minimum data value in the block boundary pixels is smaller than twice the quantization parameter (i.e., if deblocking is required), the blocking artifacts in the smooth region are removed by the DC offset mode.

The decision to use the default mode or to use the DC offset mode is preferably made based on the following condition:
Mode decision value(eq_cnt)−φ(v0−v1)+φ(v1−v2)+φ(v2−v3)+φ(v3−v4)+φ(v4−v5)+φ(v5−v1)+φ(v7−v8)+φ(v8−v9),

If the mode decision value eq_cnt≧THR2(i.e., a second threshold value), the DC offset mode is applied. In the remaining cases, default mode is applied.

A method for removing the blocking artifacts to code a moving picture at low-rate-bit according to the preferred embodiment of the present invention will be described with reference to FIG. 4. After beginning in FIG. 4, control continues to step 401S. In step 401S, three pixel sets S0, S1, S2 are defined based on the horizontal block boundary. From step 401S, control continues to step 402S.

In step 402S, the mode decision value (e.g., eq_cnt) is determined and control continues to step 403S. In step 403S, the mode decision value is compared with a decision value (e.g., a second threshold value THR2 preferably set by a user) to perform deblocking filtering process by selecting the mode depending on the degree of the blocking artifacts in the picture.

If the determination in step 403S is negative, control continues to step 404S where the default mode is set. From step 404S, control continues to step 405S where frequency information around the block boundary on each of the pixel is determined, for example, using the 4-point DCT kernel. From step 405S, control continues to step 406S.

In step 406S, the magnitude of the discontinuous component belonging to the block boundary is replaced with the minimum magnitude of the discontinuous components belonging to the surroundings of the block boundary in the frequency domain. This adjusting operation is applied to the spatial domain. That is, the magnitude of the discontinuous component belonging to the block boundary is replaced with the minimum magnitude of the discontinuous components belonging to the surroundings of the block boundary in the spatial domain.

In the default mode of the preferred embodiment, the blocking artifacts are removed in step 406S using the method as described below:

v4′=v4−d;

v5′=v5+d; and

d=CLIP(c2.(a3,0′−a3,0)//c3,0,(v4−v5)/2)*δ(|a3|<QP),

where a3,0′=SIGN(a3,0)*MIN(|a3,0|,|a3,1|,|a3,2|),

If the determination in step 403S is affirmative, control continues to step 407S where the DC offset mode is set to remove the blocking artifacts. From step 407S, control continues to step 408S where the minimum and maximum data values (min, max) are determined. From step 408S, control continues to step 409S where a determination is made to remove the blocking artifacts in the default mode. If the determination in step 409S is negative, the process ends. If the determination in step 409S is affirmative, control continues to step 410S.

In the DC offset mode according to the preferred embodiment, in step 410S, the blocking artifacts are removed using the following algorithm.

max=MAX(v1, v2, v3, v4, v5, v6, v7, v8),

min=MIN(v1, v2, v3, v4, v5, v6, v7, v8),

if(|max−min|<2QP), /*low pass filtering*/

v n = 4 k = - 4 b k · p n + k , 1 n 8
Pm=(|v1−v0|<QP)?v0:v1,

if m<1;

vm, if 1≦m≦8;

(|v8−v9|<QP) v′9:v8, if m>8;

{bk:−4≦k≦4}={1,1,2,2,4,2,2,1,1}//16.

The maximum data value and the minimum data value in the block boundary pixels are obtained in step 408S. Then, if the absolute value of the maximum data value minus the minimum data value is smaller than 2QP (i.e., if deblocking is required), the blocking artifacts in the smooth region are removed by the DC offset mode in steps 409S and 410S.

From step 406S and 410S, control continues to step 411S. If the deblocking filtering process around the horizontal block boundary is completed, the deblocking filtering process around the vertical block boundary is performed in step 411S. From step 411S, control continues to step 412S.

In step 412S, the deblocking filtering processes around the horizontal and vertical block boundaries repeat over the whole frame. From step 412S, the process ends.

FIG. 5 is a table illustrating exemplary PSNR properties according to the method of removing the blocking artifacts of the preferred embodiment. The conditions yielding the exemplary results of FIG. 5 are as follows:

300 frames (only the initial frame was coded in intra.);

Fixed QP;

H.263 quantization;

F_code=1;

Enable DC/AC prediction; and

Rectangular shape VOP.

As shown in FIG. 5, the method for removing the blocking artifacts of the preferred embodiment improves results relative to VM (no filtering) of MPEG-4.

As described above, the method for removing the blocking artifacts according to the preferred embodiments of the present invention has various advantages. The deblocking filtering process is performed using features of the frequency domain so that the blocking artifacts are effectively removed. Further, the blocking artifacts are removed in both the complex and smooth regions. Thus, an excellent image or picture quality is provided. In addition, amount of bits does not increase.

The foregoing embodiments are merely exemplary and are not to be construed as limiting the present invention. The present teaching can be readily applied to other types of apparatuses. The description of the present invention is intended to be illustrative, and not to limit the scope of the claims. Many alternatives, modifications, and variations will be apparent to those skilled in the art.

Kim, Hyun Mun, Ra, Jong Beom, Kim, Sung Deuk, Lee, Young Su

Patent Priority Assignee Title
Patent Priority Assignee Title
5229864, Apr 16 1990 FUJIFILM Corporation Device for regenerating a picture signal by decoding
5262854, Feb 21 1992 RCA Thomson Licensing Corporation Lower resolution HDTV receivers
5367385, May 07 1992 Polycom, Inc Method and apparatus for processing block coded image data to reduce boundary artifacts between adjacent image blocks
5436666, May 21 1993 HEATHWAY HOLDINGS, LLC Limited-domain motion estimation/compensation for video encoding/decoding
5526295, Dec 30 1994 HEATHWAY HOLDINGS, LLC Efficient block comparisons for motion estimation
5539664, Jun 20 1994 Intel Corporation Process, apparatus, and system for two-dimensional caching to perform motion estimation in video processing
5565921, Mar 16 1993 Olympus Optical Co., Ltd. Motion-adaptive image signal processing system
5585852, Jun 16 1993 Intel Corporation Processing video signals for scalable video playback using independently encoded component-plane bands
5590064, Oct 26 1994 Intel Corporation Post-filtering for decoded video signals
5596659, Sep 01 1992 Apple Inc Preprocessing and postprocessing for vector quantization
5608652, May 12 1995 Intel Corporation Reducing blocking effects in block transfer encoders
5614952, Oct 11 1994 Hitachi America, Ltd Digital video decoder for decoding digital high definition and/or digital standard definition television signals
5629778, May 15 1995 Intellectual Ventures I LLC Method and apparatus for reduction of image data compression noise
5635985, Oct 11 1994 Hitachi America, Ltd.; Hitachi America, Ltd Low cost joint HD/SD television decoder methods and apparatus
5646686, Oct 11 1994 Hitachi America, Ltd.; Hitachi America, Ltd Methods and apparatus for reducing drift in video decoders
5677736, Aug 06 1993 Minolta Co., Ltd. Data processor
5680129, Jul 18 1995 HEWLETT-PACKARD DEVELOPMENT COMPANY, L P System and method for lossless image compression
5740283, Jul 06 1995 PHILIP A RUBIN & ASSOCIATES, INC Digital video compression utilizing mixed vector and scalar outputs
5764374, Aug 30 1996 HEWLETT-PACKARD DEVELOPMENT COMPANY, L P System and method for lossless image compression having improved sequential determination of golomb parameter
5767907, Oct 11 1994 Hitachi America, Ltd. Drift reduction methods and apparatus
5777677, Feb 09 1996 MEDIATEK INC Approximate MPEG decoder with compressed reference frames
5808683, Oct 26 1995 Sony Corporation Subband image coding and decoding
5818530, Jun 19 1996 Thomson Consumer Electronics, Inc MPEG compatible decoder including a dual stage data reduction network
5825424, Jun 19 1996 Thomson Consumer Electronics, Inc MPEG system which decompresses and recompresses image data before storing image data in a memory and in accordance with a resolution of a display device
5903679, Apr 15 1996 Korea Telecommunication Authority Method for decoding signal vector-quantized by blocks
5911008, Apr 30 1996 Nippon Telegraph and Telephone Corporation Scheme for detecting shot boundaries in compressed video data using inter-frame/inter-field prediction coding and intra-frame/intra-field coding
6000000, Oct 13 1995 ACCESS CO , LTD Extendible method and apparatus for synchronizing multiple files on two different computer systems
6028967, Jul 30 1997 LG Electronics Inc Method of reducing a blocking artifact when coding moving picture
6040879, Apr 21 1997 SAMSUNG ELECTRONICS CO , LTD Method for decoding video data corrupted by channel noise
6104434, Oct 24 1996 Fujitsu Limited Video coding apparatus and decoding apparatus
6130911, Nov 21 1997 RAKUTEN, INC Method and apparatus for compressing reference frames in an interframe video codec
6314209, Jul 08 1996 PANTECH INC Video information coding method using object boundary block merging/splitting technique
8265149, Oct 29 2007 Samsung Electronics Co., Ltd. Method and apparatus encoding and/or decoding image by using diffusion properties of the image
8270474, Jul 18 2003 Samsung Electronics Co., Ltd. Image encoding and decoding apparatus and method
8300689, Mar 05 2004 Samsung Electronics Co., Ltd.; SAMSUNG ELECTRONICS CO , LTD Apparatus and method for encoding and decoding image containing gray alpha channel image
8306342, Feb 05 2008 Samsung Electronics Co., Ltd. Method and apparatus to encode/decode image efficiently
8325805, Jul 16 2003 Samsung Electronics Co., Ltd. Video encoding/decoding apparatus and method for color image
8331433, Aug 31 2006 SAMSUNG ELECTRONICS CO , LTD Video encoding apparatus and method and video decoding apparatus and method
8345748, Jul 18 2003 Samsung Electronics Co., Ltd. Image encoding and decoding apparatus and method
8355589, Mar 18 2008 Samsung Electronics Co., Ltd. Method and apparatus for field picture coding and decoding
8374248, Jan 21 2008 Samsung Electronics Co., Ltd. Video encoding/decoding apparatus and method
8406291, Oct 11 2007 SAMSUNG ELECTRONICS CO , LTD Method, medium, and apparatus for encoding and/or decoding video
8406545, Mar 10 2008 Samsung Electronics Co., Ltd. Apparatus for encoding image and apparatus for decoding image
8451893, Sep 09 2005 SAMSUNG ELECTRONICS CO , LTD Apparatus and method for coding and decoding image
8472733, Jul 15 2005 Samsung Electronics Co., Ltd. Method and apparatus for encoding and decoding image
8472734, Jul 15 2005 Samsung Electronics Co., Ltd. Method and apparatus for encoding and decoding image
8509310, Mar 28 2006 SAMSUNG ELECTRONICS CO , LTD Method, medium, and system encoding and/or decoding an image
20120258699,
20130011058,
//
Executed onAssignorAssigneeConveyanceFrameReelDoc
Jul 06 2011LG Electronics Inc.(assignment on the face of the patent)
Sep 27 2012Video Enhancement Solutions LLCLG Electronics IncASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS 0317440542 pdf
Date Maintenance Fee Events
Dec 03 2014ASPN: Payor Number Assigned.


Date Maintenance Schedule
Sep 16 20174 years fee payment window open
Mar 16 20186 months grace period start (w surcharge)
Sep 16 2018patent expiry (for year 4)
Sep 16 20202 years to revive unintentionally abandoned end. (for year 4)
Sep 16 20218 years fee payment window open
Mar 16 20226 months grace period start (w surcharge)
Sep 16 2022patent expiry (for year 8)
Sep 16 20242 years to revive unintentionally abandoned end. (for year 8)
Sep 16 202512 years fee payment window open
Mar 16 20266 months grace period start (w surcharge)
Sep 16 2026patent expiry (for year 12)
Sep 16 20282 years to revive unintentionally abandoned end. (for year 12)