IP Library Granted Patent US 11,647,231
Granted Patent B2
US 11,647,231 · App. 17/324,110 · Granted May 9, 2023

Image processing device and image processing method

Inventor: Masaru Ikeda (Kanagawa, JP)
Assignee: SONY GROUP CORPORATION
H04N19/80H04N19/117H04N19/124H04N19/136H04N19/182H04N19/42H04N19/82H04N19/86H04N19/176
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 11,647,231
App. No.
17/324,110
Granted
May 9, 2023
Kind
B2
Abstract

The present technology relates to an image processing device and an image processing method which allow a deblocking filtering process to apply filtering appropriately. A pixel (p0 i ) of which the value is 255 (solid line) before a deblocking process changes greatly to 159 (dot line) after a conventional deblocking process. Therefore, a clipping process having a clipping value of 10 is performed in strong filtering, whereby the pixel (p0 i ) of which the value is 255 (solid line) before the deblocking process becomes 245 (bold line). THUS, a change in the pixel value occurring in the conventional technique can be suppressed as much as possible. This disclosure can be applied to an image processing device, for example.

Claims (3836)

1. An image processing device comprising:

circuitry configured to

decode an encoded stream to generate a decoded image,

apply a deblocking filter including a first deblocking filter or a second deblocking filter having a stronger filter strength than the first deblocking filter to pixels neighboring a block boundary within the decoded image, and

control, when the second deblocking filter is applied as the deblocking filter, the second deblocking filter so as to apply a clipping process to a difference value that changes with a filtering process performed by the second deblocking filter using a second clipping value, which is larger than a first clipping value, which is used in case that a clipping process is applied to a difference value that changes with a filtering process performed by the first deblocking filter.

2. The image processing device according to claim 1 , wherein

the circuitry is configured to control the second deblocking filter so as to apply the clipping process according to the following expressions:

p

0

=

p

0

+

Clip

(

-

pv

)

-

(

pv

)

(

(

p

2

+

2

*

p

1

-

6

*

p

0

+

2

*

q

0

+

q

1

+

4

)

>>

3

)

;

=

Clip

(

p

0

-

pv

)

-

(

p

0

+

pv

)

(

(

p

2

+

2

*

p

1

+

2

*

p

0

+

2

*

q

0

+

q

1

+

4

)

>>

3

)

=

Clip

3

(

p

0

-

pv

,

p

0

+

pv

,

(

p

2

+

2

*

p

1

+

2

*

p

0

+

2

*

q

0

+

q

1

+

4

)

>>

3

)

;

p

1

=

p

1

+

Clip

(

-

pv

)

-

(

pv

)

(

(

p

2

-

3

*

p

1

+

p

0

+

q

0

+

2

)

>>

2

)

;

=

Clip

(

p

1

-

pv

)

-

(

p

1

+

pv

)

(

(

p

2

+

p

1

+

p

0

+

q

0

+

2

)

>>

2

)

;

=

Clip

3

(

p

1

-

pv

,

p

1

+

pv

,

(

p

2

+

p

1

+

p

0

+

q

0

+

2

)

>>

2

)

;

p

2

=

p

2

+

Clip

(

-

pv

)

-

(

pv

)

(

(

2

*

p

3

-

5

*

p

2

+

p

1

+

p

0

+

q

0

+

4

)

>>

3

)

;

=

Clip

(

p

2

-

pv

)

-

(

p

2

+

pv

)

(

(

2

*

p

3

+

3

*

p

2

+

p

1

+

p

0

+

q

0

+

4

)

>>

3

)

;

=

Clip

3

(

p

2

-

pv

,

p

2

+

pv

,

(

2

*

p

3

+

3

*

p

2

+

p

1

+

p

0

+

q

0

+

4

)

>>

3

)

;

q

0

=

q

0

+

Clip

(

-

pv

)

-

(

pv

)

(

(

p

1

+

2

*

p

0

-

6

*

q

0

+

2

*

q

1

+

q

2

+

4

)

>>

3

)

;

=

Clip

(

q

0

-

pv

)

-

(

q

0

+

pv

)

(

(

p

1

+

2

*

p

0

+

2

*

q

0

+

2

*

q

1

+

q

2

+

4

)

>>

3

)

;

=

Clip

3

(

q

0

-

pv

,

q

0

+

pv

,

(

p

1

+

2

*

p

0

+

2

*

q

0

+

2

*

q

1

+

q

2

+

4

)

>>

3

)

;

q

1

=

q

1

+

Clip

(

-

pv

)

-

(

pv

)

(

(

p

0

+

q

0

-

3

*

q

1

+

q

2

+

2

)

>>

2

)

;

=

Clip

(

q

1

-

pv

)

-

(

q

1

+

pv

)

(

(

p

0

+

q

0

+

q

1

+

q

2

+

2

)

>>

2

)

;

=

Clip

3

(

q

1

-

pv

,

q

1

+

pv

,

(

p

0

+

q

0

+

q

1

+

q

2

+

2

)

>>

2

)

;

q

2

=

q

2

+

Clip

(

-

pv

)

-

(

pv

)

(

(

p

0

+

q

0

+

q

1

-

5

*

q

2

+

2

*

q

3

+

4

)

>>

3

)

;

=

Clip

(

q

2

-

pv

)

-

(

q

2

+

pv

)

(

(

p

0

+

q

0

+

q

1

+

3

*

q

2

+

2

*

q

3

+

4

)

>>

3

)

;

=

Clip

3

(

q

2

-

pv

,

q

2

+

p

v

,

(

p

0

+

q

0

+

q

1

+

3

*

q

2

+

2

*

q

3

+

4

)

>>

3

)

;

wherein the pv is the second clipping value,

p0′, p1′, p2′, q0′, q1′, q2′ are the pixel values after applying the second deblocking filter, and p0, p1, p2, q0, q1, q2 are the pixel values before applying the second deblocking filter.

3. The image processing device according to claim 2 , wherein

the circuitry is configured to control the second deblocking filter so as to apply the clipping process according to the following expressions:

p

0

=

p

0

+

Clip

(

-

2

*

tc

)

-

(

2

*

tc

)

(

(

p

2

+

2

*

p

1

-

6

*

p

0

+

2

*

q

0

+

q

1

+

4

)

>>

3

)

;

=

Clip

(

p

0

-

2

*

tc

)

-

(

p

0

+

2

*

tc

)

(

(

p

2

+

2

*

p

1

+

2

*

p

0

+

2

*

q

0

+

q

1

+

4

)

>>

3

)

=

Clip

3

(

p

0

-

2

*

tc

,

p

0

+

2

*

tc

,

(

p

2

+

2

*

p

1

+

2

*

p

0

+

2

*

q

0

+

q

1

+

4

)

>>

3

)

;

p

1

=

p

1

+

Clip

(

-

2

*

tc

)

-

(

2

*

tc

)

(

(

p

2

-

3

*

p

1

+

p

0

+

q

0

+

2

)

>>

2

)

;

=

Clip

(

p

1

-

2

*

tc

)

-

(

p

1

+

2

*

tc

)

(

(

p

2

+

p

1

+

p

0

+

q

0

+

2

)

>>

2

)

;

=

Clip

3

(

p

1

-

2

*

tc

,

p

1

+

2

*

tc

,

(

p

2

+

p

1

+

p

0

+

q

0

+

2

)

>>

2

)

p

2

=

p

2

+

Clip

(

-

2

*

tc

)

-

(

2

*

tc

)

(

(

2

*

p

3

-

5

*

p

2

+

p

1

+

p

0

+

q

0

+

4

)

>>

3

)

;

=

Clip

(

p

2

-

2

*

tc

)

-

(

p

2

+

2

*

tc

)

(

(

2

*

p

3

+

3

*

p

2

+

p

1

+

p

0

+

q

0

+

4

)

>>

3

)

;

=

Clip

3

(

p

2

-

2

*

tc

,

p

2

+

2

*

tc

,

(

2

*

p

3

+

3

*

p

2

+

p

1

+

p

0

+

q

0

+

4

)

>>

3

)

;

q

0

=

q

0

+

Clip

(

-

2

*

tc

)

-

(

2

*

tc

)

(

(

p

1

+

2

*

p

0

-

6

*

q

0

+

2

*

q

1

+

q

2

+

4

)

>>

3

)

;

=

Clip

(

q

0

-

2

*

tc

)

-

(

q

0

+

2

*

tc

)

(

(

p

1

+

2

*

p

0

+

2

*

q

0

+

2

*

q

1

+

q

2

+

4

)

>>

3

)

;

=

Clip

3

(

q

0

-

2

*

tc

,

q

0

+

2

*

tc

,

(

p

1

+

2

*

p

0

+

2

*

q

0

+

2

*

q

1

+

q

2

+

4

)

>>

3

)

;

q

1

=

q

1

+

Clip

(

-

2

*

tc

)

-

(

2

*

tc

)

(

(

p

0

+

q

0

-

3

*

q

1

+

q

2

+

2

)

>>

2

)

;

=

Clip

(

q

1

-

2

*

tc

)

-

(

q

1

+

2

*

tc

)

(

(

p

0

+

q

0

+

q

1

+

q

2

+

2

)

>>

2

)

;

=

Clip

3

(

q

1

-

2

*

tc

,

q

1

+

2

*

tc

,

(

p

0

+

q

0

+

q

1

+

q

2

+

2

)

>>

2

)

;

q

2

=

q

2

+

Clip

(

-

2

*

tc

)

-

(

2

*

tc

)

(

(

p0

+

q

0

+

q

1

-

5

*

q

2

+

2

*

q

3

+

4

)

>>

3

)

;

=

Clip

(

q

2

-

2

*

tc

)

-

(

q

2

+

2

*

tc

)

(

(

p

0

+

q

0

+

q

1

+

3

*

q

2

+

2

*

q

3

+

4

)

>>

3

)

;

=

Clip

3

(

q

2

-

2

*

tc

,

q

2

+

2

*

tc

,

(

p

0

+

q

0

+

q

1

+

3

*

q

2

+

2

*

q

3

+

4

)

>>

3

)

;

wherein the tc is the first clipping value and a parameter used in case that a strength of the deblocking filter is selected,

the second clipping value pv equals 2*tc,

p0′, p1′, p2′, q0′, q1′, q2′ are the pixel values after applying the second deblocking filter, and p0, p1, p2, q0, q1, q2 are the pixel values before applying the second deblocking filter.

4. The image processing device according to claim 3 , wherein

the circuitry is configured to apply the second deblocking filter to luminance components of the pixels neighboring the block boundary within the decoded image.

5. The image processing device according to claim 4 , wherein

the first deblocking filter is a weak filter applied to four pixels neighboring the block boundary; and

the second deblocking filter is a strong filter applied to six pixels neighboring the block boundary.

6. The image processing device according to claim 4 , wherein

the block boundary is a boundary of a transform unit as a unit of orthogonal transformation or a boundary of a prediction unit as a unit of prediction process.

7. The image processing device according to claim 6 , wherein

the circuitry comprises:

an arithmetic decoder configured to decode the encoded stream to generate quantized data;

an inverse quantizer configured to perform inverse quantization on the quantized data generated by the arithmetic decoder to generate transform coefficient data; and

an inverse orthogonal transformer configured to perform inverse orthogonal transformation on the transform coefficient data generated by the inverse quantizer.

8. An image processing method comprising:

decoding an encoded stream to generate a decoded image;

applying a deblocking filter including a first deblocking filter or a second deblocking filter having a stronger filter strength than the first deblocking filter to pixels neighboring a block boundary within the decoded image; and

controlling, when the second deblocking filter is applied as the deblocking the second deblocking filter so as to apply a clipping process to a difference value that changes with a filtering process performed by the second deblocking filter using a second clipping value, which is larger than a first clipping value,

which is used in case that a clipping process is

applied to a difference value that changes with a filtering process performed by the first deblocking filter.

9. The image processing method according to claim 8 , wherein

the second deblocking filter applies the clipping process to the difference value according to the following expressions:

p

0

=

p

0

+

Clip

(

-

pv

)

-

(

pv

)

(

(

p

2

+

2

*

p

1

-

6

*

p

0

+

2

*

q

0

+

q

1

+

4

)

>>

3

)

;

=

Clip

(

p

0

-

pv

)

-

(

p

0

+

pv

)

(

(

p

2

+

2

*

p

1

+

2

*

p

0

+

2

*

q

0

+

q

1

+

4

)

>>

3

)

=

Clip

3

(

p

0

-

pv

,

p

0

+

pv

,

(

p

2

+

2

*

p

1

+

2

*

p

0

+

2

*

q

0

+

q

1

+

4

)

>>

3

)

;

p

1

=

p

1

+

Clip

(

-

pv

)

-

(

pv

)

(

(

p

2

-

3

*

p

1

+

p

0

+

q

0

+

2

)

>>

2

)

;

=

Clip

(

p

1

-

pv

)

-

(

p

1

+

pv

)

(

(

p

2

+

p

1

+

p

0

+

q

0

+

2

)

>>

2

)

;

=

Clip

3

(

p

1

-

pv

,

p

1

+

pv

,

(

p

2

+

p

1

+

p

0

+

q

0

+

2

)

>>

2

)

;

p

2

=

p

2

+

Clip

(

-

pv

)

-

(

pv

)

(

(

2

*

p

3

-

5

*

p

2

+

p

1

+

p

0

+

q

0

+

4

)

>>

3

)

;

=

Clip

(

p

2

-

pv

)

-

(

p

2

+

pv

)

(

(

2

*

p

3

+

3

*

p

2

+

p

1

+

p

0

+

q

0

+

4

)

>>

3

)

;

=

Clip

3

(

p

2

-

pv

,

p

2

+

pv

,

(

2

*

p

3

+

3

*

p

2

+

p

1

+

p

0

+

q

0

+

4

)

>>

3

)

;

q

0

=

q

0

+

Clip

(

-

pv

)

-

(

pv

)

(

(

p

1

+

2

*

p

0

-

6

*

q

0

+

2

*

q

1

+

q

2

+

4

)

>>

3

)

;

=

Clip

(

q

0

-

pv

)

-

(

q

0

+

pv

)

(

(

p

1

+

2

*

p

0

+

2

*

q

0

+

2

*

q

1

+

q

2

+

4

)

>>

3

)

;

=

Clip

3

(

q

0

-

pv

,

q

0

+

pv

,

(

p

1

+

2

*

p

0

+

2

*

q

0

+

2

*

q

1

+

q

2

+

4

)

>>

3

)

;

q

1

=

q

1

+

Clip

(

-

pv

)

-

(

pv

)

(

(

p

0

+

q

0

-

3

*

q

1

+

q

2

+

2

)

>>

2

)

;

=

Clip

(

q

1

-

pv

)

-

(

q

1

+

pv

)

(

(

p

0

+

q

0

+

q

1

+

q

2

+

2

)

>>

2

)

;

=

Clip

3

(

q

1

-

pv

,

q

1

+

pv

,

(

p

0

+

q

0

+

q

1

+

q

2

+

2

)

>>

2

)

;

q

2

=

q

2

+

Clip

(

-

pv

)

-

(

pv

)

(

(

p

0

+

q

0

+

q

1

-

5

*

q

2

+

2

*

q

3

+

4

)

>>

3

)

;

=

Clip

(

q

2

-

pv

)

-

(

q

2

+

pv

)

(

(

p

0

+

q

0

+

q

1

+

3

*

q

2

+

2

*

q

3

+

4

)

>>

3

)

;

=

Clip

3

(

q

2

-

pv

,

q

2

+

p

v

,

(

p

0

+

q

0

+

q

1

+

3

*

q

2

+

2

*

q

3

+

4

)

>>

3

)

;

wherein the pv is the second clipping value,

p0′, p1′, p2′, q0′, q1′, q2′ are the pixel values after applying the second deblocking filter, and p0, p1, p2, q0, q1, q2 are the pixel values before applying the second deblocking filter.

10. The image processing method according to claim 9 , wherein

the second deblocking filter applies the clipping process to the difference value according to the following expressions:

p

0

=

p

0

+

Clip

(

-

2

*

tc

)

-

(

2

*

tc

)

(

(

p

2

+

2

*

p

1

-

6

*

p

0

+

2

*

q

0

+

q

1

+

4

)

>>

3

)

;

=

Clip

(

p

0

-

2

*

tc

)

-

(

p

0

+

2

*

tc

)

(

(

p

2

+

2

*

p

1

+

2

*

p

0

+

2

*

q

0

+

q

1

+

4

)

>>

3

)

=

Clip

3

(

p

0

-

2

*

tc

,

p

0

+

2

*

tc

,

(

p

2

+

2

*

p

1

+

2

*

p

0

+

2

*

q

0

+

q

1

+

4

)

>>

3

)

;

p

1

=

p

1

+

Clip

(

-

2

*

tc

)

-

(

2

*

tc

)

(

(

p

2

-

3

*

p

1

+

p

0

+

q

0

+

2

)

>>

2

)

;

=

Clip

(

p

1

-

2

*

tc

)

-

(

p

1

+

2

*

tc

)

(

(

p

2

+

p

1

+

p

0

+

q

0

+

2

)

>>

2

)

;

=

Clip

3

(

p

1

-

2

*

tc

,

p

1

+

2

*

tc

,

(

p

2

+

p

1

+

p

0

+

q

0

+

2

)

>>

2

)

p

2

=

p

2

+

Clip

(

-

2

*

tc

)

-

(

2

*

tc

)

(

(

2

*

p

3

-

5

*

p

2

+

p

1

+

p

0

+

q

0

+

4

)

>>

3

)

;

=

Clip

(

p

2

-

2

*

tc

)

-

(

p

2

+

2

*

tc

)

(

(

2

*

p

3

+

3

*

p

2

+

p

1

+

p

0

+

q

0

+

4

)

>>

3

)

;

=

Clip

3

(

p

2

-

2

*

tc

,

p

2

+

2

*

tc

,

(

2

*

p

3

+

3

*

p

2

+

p

1

+

p

0

+

q

0

+

4

)

>>

3

)

;

q

0

=

q

0

+

Clip

(

-

2

*

tc

)

-

(

2

*

tc

)

(

(

p

1

+

2

*

p

0

-

6

*

q

0

+

2

*

q

1

+

q

2

+

4

)

>>

3

)

;

=

Clip

(

q

0

-

2

*

tc

)

-

(

q

0

+

2

*

tc

)

(

(

p

1

+

2

*

p

0

+

2

*

q

0

+

2

*

q

1

+

q

2

+

4

)

>>

3

)

;

=

Clip

3

(

q

0

-

2

*

tc

,

q

0

+

2

*

tc

,

(

p

1

+

2

*

p

0

+

2

*

q

0

+

2

*

q

1

+

q

2

+

4

)

>>

3

)

;

q

1

=

q

1

+

Clip

(

-

2

*

tc

)

-

(

2

*

tc

)

(

(

p

0

+

q

0

-

3

*

q

1

+

q

2

+

2

)

>>

2

)

;

=

Clip

(

q

1

-

2

*

tc

)

-

(

q

1

+

2

*

tc

)

(

(

p

0

+

q

0

+

q

1

+

q

2

+

2

)

>>

2

)

;

=

Clip

3

(

q

1

-

2

*

tc

,

q

1

+

2

*

tc

,

(

p

0

+

q

0

+

q

1

+

q

2

+

2

)

>>

2

)

;

q

2

=

q

2

+

Clip

(

-

2

*

tc

)

-

(

2

*

tc

)

(

(

p0

+

q

0

+

q

1

-

5

*

q

2

+

2

*

q

3

+

4

)

>>

3

)

;

=

Clip

(

q

2

-

2

*

tc

)

-

(

q

2

+

2

*

tc

)

(

(

p

0

+

q

0

+

q

1

+

3

*

q

2

+

2

*

q

3

+

4

)

>>

3

)

;

=

Clip

3

(

q

2

-

2

*

tc

,

q

2

+

2

*

tc

,

(

p

0

+

q

0

+

q

1

+

3

*

q

2

+

2

*

q

3

+

4

)

>>

3

)

;

wherein the tc is the first clipping value and a parameter used in case that a strength of the deblocking filter is selected,

the second clipping value pv equals 2*tc,

p1′, p2′, q0′, q1′, q2′ are the pixel values after applying the second deblocking filter, and p0, p1, p2, q0, q1, q2 are the pixel values before applying the second deblocking filter.

11. The image processing method according to claim 10 , further comprising

applying the second deblocking filter to luminance components of the pixels neighboring the block boundary within the decoded image.

12. The image processing method according to claim 11 , wherein

the first deblocking filter is a weak filter applied to four pixels neighboring the block boundary; and

the second deblocking filter is a strong filter applied to six pixels neighboring the block boundary.

13. The image processing method according to claim 11 , wherein

the block boundary is a boundary of a transform unit as a unit of orthogonal transformation or a boundary of a prediction unit as a unit of prediction process.

14. The image processing method according to claim 13 , the decoding includes:

decoding the encoded stream to generate quantized data;

performing inverse quantization on the quantized data to generate transform coefficient data; and

performing inverse orthogonal transformation on the transform coefficient data.

Assignments (1)
CHANGE OF NAME Recorded Jun 11, 2021
From: SONY CORPORATION
To: SONY GROUP CORPORATION
Reel/Frame 056677/0860 →