IP Library Patent Application 12802382
Patent Application
App. No. 12/802,382

System and process for image rescaling using adaptive interpolation kernel with sharpness and de-ringing control

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 None
App. No.
12/802,382
Abstract

A digital video rescaling system is provided. The system includes an image data input configured to receive input support pixels y 1 to y n and a sharpness control module configured to generate a sharpness control parameter Kshp. The system further includes an interpolated pixel generator configured to use an adaptive interpolation kernel to generate an interpolated pixel y s based on the input support pixels, and adjust a sharpness of the interpolated pixel y s based at least partly upon the sharpness control parameter Kshp. The system also includes a de-ringing control unit to adjust the ringing effect of the interpolated pixel based on a local image feature Kfreq, and an output module configured to output the adjusted interpolated pixel for display.

Claims (798)

1 . A digital video rescaling system comprising:

an image data input configured to receive input support pixels y 1 to y n ;

a sharpness control module configured to generate a sharpness control parameter Kshp;

an interpolated pixel generator configured to use an 8-tap filter to

generate an interpolated pixel y s based on the input support pixels, and

adjust a sharpness of the interpolated pixel y s based at least partly upon the sharpness control parameter Kshp; and

an output module configured to output the adjusted interpolated pixel y s for display.

2 . A system in accordance with claim 1 wherein the interpolated pixel generator is configured to generate the interpolated pixel y s using third order polynomial functions based at least partly upon eight input support pixels y 1 to y 8 .

3 . A system in accordance with claim 1 wherein the interpolated pixel y s is generated as follows:

y

s

(

s

)

=

n

=

1

8

y

n

*

f

n

(

s

,

Kshp

)

,

where y n , n=(1 . . . 8) are eight support pixels. S is the phase of the interpolation which is the distance from interpolation position to the position of the support pixel y 4 . f n (s,Kshp) (n=1 . . . 8) are eight control synthesis functions that can be expressed as follows:

f 1 ( s,K shp)=( a (0,0)+ K shp* b (0,0))* s 3 +( a (0,1)+ K shp* b (0,1))* s 2 +( a (0,2)+ K shp* b (0,2)* s +( a (0,3)+ K shp* b (0,3))

f 2 ( s,K shp)=( a (1,0)+ K shp* b (1,0))* s 3 +( a (1,1)+ K shp* b (1,1))* s 2 +( a (1,2)+ K shp* b (1,2)* s +( a (0,3)+ K shp* b (1,3))

f 3 ( s,K shp)=( a (2,0)+ K shp* b (2,0))* s 3 +( a (2,1)+ K shp* b (2,1))* s 2 +( a (2,2)+ K shp* b (2,2)* s +( a (2,3)+ K shp* b (2,3))

f 4 ( s,K shp)=( a (3,0)+ K shp* b (3,0))* s 3 +( a (3,1)+ K shp* b (3,1))*s 2 +( a (3,2)+ K shp* b (3,2)* s +( a (3,3)+ K shp* b (3,3))

f 5 ( s,K shp)= f 4 ((1 −s ), K shp),

f 6 ( s,K shp)= f 3 ((1 −s ), K shp),

f 7 ( s,K shp)= f 2 ((1 −s ), K shp), and

f 8 ( s,K shp)= f 1 ((1 −s ), K shp).

A

=

[

a

(

0

,

0

)

a

(

0

,

1

)

a

(

0

,

2

)

a

(

0

,

3

)

a

(

1

,

0

)

a

(

1

,

1

)

a

(

1

,

2

)

a

(

1

,

3

)

a

(

2

,

0

)

a

(

2

,

1

)

a

(

2

,

2

)

a

(

2

,

3

)

a

(

3

,

0

)

a

(

3

,

1

)

a

(

3

,

2

)

a

(

3

,

3

)

]

and

B

=

[

b

(

0

,

0

)

b

(

0

,

1

)

b

(

0

,

2

)

b

(

0

,

3

)

b

(

1

,

0

)

b

(

1

,

1

)

b

(

1

,

2

)

b

(

1

,

3

)

b

(

2

,

0

)

b

(

2

,

1

)

b

(

2

,

2

)

b

(

2

,

3

)

b

(

3

,

0

)

b

(

3

,

1

)

b

(

3

,

2

)

b

(

3

,

3

)

]

are two coefficient matrices.

4 . A system in accordance with claim 3 wherein the coefficient matrices A and B are defined as follows:

A

=

[

-

21

52

-

32

0

52

-

150

97

1

-

154

412

-

256

0

304

-

587

28

254

]

,

and

B

=

[

-

9

21

-

11

-

2

15

-

38

18

3

-

32

69

-

23

-

11

51

-

88

5

21

]

.

5 . A method of rescaling digital video, the method comprising:

receiving input support pixels y 1 to y n at an image data input;

generating a sharpness control parameter Kshp at a sharpness control module;

generating an interpolated pixel y s based on the input support pixels y 1 to y n at an 8-tap filter;

adjusting a sharpness of the interpolated pixel y s based at least partly upon the sharpness control parameter Kshp at the interpolated pixel generator; and

outputting the adjusted interpolated pixel y s for display.

6 . A method in accordance with claim 5 wherein generating the interpolated pixel y s comprises using third order polynomial functions based at least partly upon eight input support pixels y 1 to y 8 .

7 . A method in accordance with claim 5 wherein generating the interpolated pixel y s comprises using the following relationship:

y

s

(

s

)

=

n

=

1

8

y

n

*

f

n

(

s

,

Kshp

)

,

where y n , n=(1 . . . 8) are eight support pixels. S is the phase of the interpolation which is the distance from interpolation position to the position of the support pixel y 4 . f n (s,Kshp) (n=1 . . . 8) are eight control synthesis functions that can be expressed as follows:

f 1 ( s,K shp)=( a (0,0)+ K shp* b (0,0))* s 3 ( a (0,1)+ K shp* b (0,1))* s 2 +( a (0,2)+ K shp* b (0,2)* s +( a (0,3)+ K shp* b (0,3))

f 2 ( s,K shp)=( a (1,0)+ K shp* b (1,0))* s 3 +( a (1,1)+ K shp* b (1,1))* s 2 +( a (1,2)+ K shp* b (1,2)* s +( a (0,3)+ K shp* b (1,3))

f 3 ( s,K shp)=( a (2,0)+ K shp* b (2,0))* s 3 +( a (2,1)+ K shp* b (2,1))* s 2 +( a (2,2)+ K shp* b (2,2)* s +( a (2,3)+ K shp* b (2,3))

f a ( s,K shp)=( a (3,0)+ K shp* b (3,0))* s 3 +( a (3,1)+ K shp* b (3,1))* s 2 +( a (3,2)+ K shp* b (3,2)* s +( a (3,3)+ K shp* b (3,3))

f 5 ( s,K shp)= f 4 ((1 −s ), K shp),

f 6 ( s,K shp)= f 3 ((1 −s ), K shp),

f 7 ( s,K shp)= f 2 ((1 −s ), K shp), and

f 8 ( s,K shp)= f 1 ((1 −s ), K shp).

A

=

[

a

(

0

,

0

)

a

(

0

,

1

)

a

(

0

,

2

)

a

(

0

,

3

)

a

(

1

,

0

)

a

(

1

,

1

)

a

(

1

,

2

)

a

(

1

,

3

)

a

(

2

,

0

)

a

(

2

,

1

)

a

(

2

,

2

)

a

(

2

,

3

)

a

(

3

,

0

)

a

(

3

,

1

)

a

(

3

,

2

)

a

(

3

,

3

)

]

and

B

=

[

b

(

0

,

0

)

b

(

0

,

1

)

b

(

0

,

2

)

b

(

0

,

3

)

b

(

1

,

0

)

b

(

1

,

1

)

b

(

1

,

2

)

b

(

1

,

3

)

b

(

2

,

0

)

b

(

2

,

1

)

b

(

2

,

2

)

b

(

2

,

3

)

b

(

3

,

0

)

b

(

3

,

1

)

b

(

3

,

2

)

b

(

3

,

3

)

]

are two coefficient matrices.

8 . A method in accordance with claim 7 wherein the coefficient matrices A and B are defined as follows:

A

=

[

-

21

52

-

32

0

52

-

150

97

1

-

154

412

-

256

0

304

-

587

28

254

]

,

and

B

=

[

-

9

21

-

11

-

2

15

-

38

18

3

-

32

69

-

23

-

11

51

-

88

5

21

]

.

9 . A digital video rescaling system comprising:

an image data input configured to receive input support pixels y 1 to y n ;

an interpolated pixel generator configured to use an 8-tap filter to generate an interpolated pixel value y s based on the input support pixels y 1 to y n ;

a de-ringing control unit configured to modify the interpolated pixel y s adaptively to a local image feature Kfreq to generate an output y out ; and

an output module configured to output the output y out for display.

10 . A system in accordance with claim 9 wherein the local image feature Kfreq is related to local frequency characteristics.

11 . A system in accordance with claim 9 further comprising:

a local frequency analysis unit configured to calculate the local image feature Kfreq;

a local max/min analysis unit configured to distinguish between a larger and a smaller value of two support pixels y a and y b and generate an output Lmax and Lmin; and

a comparator configured to compare the interpolated pixel value y s with the output Lmax and Lmin and generate a comparison result y m .

12 . A system in accordance with claim 11 further wherein the comparator is configured to generate the comparison result y m as follows:

y

m

=

{

L

max

if

(

y

s

>

L

max

)

L

min

if

(

y

s

<

L

min

)

y

s

else

.

13 . A system in accordance with claim 11 further wherein the de-ringing control unit is further configured to:

subtract the comparison result y m from the interpolated pixel value y s ;

multiply the difference by the local image feature Kfreq; and

add the product to comparison result y m to generate g out .

14 . A system in accordance with claim 9 wherein the local frequency analysis unit is configured to calculate the local image feature Kfreq as follows:

K freq=min( dev 1 ,dev 2 ,dev 3 ,dev 4)/ N,

where dev1, dev2, dev3 and dev4 are defined as follows:

dev 1=max(| y 1 −2 *y 2 +y 3 |,|y 2 −2 *y 3 +y 4 |),

dev 2=max(| y 3 −2 *y 4 +y 5 |,|y 4 −2 *y 5 +y 6 |),

dev 3=max(| y 5 −2 *y 6 +y 7 |,|y 6 −2 *y 7 +y 8 |), and

dev 4=min(| y 2 −y 4 |,|y 3 −y 5 |),

where N is a constant value used to normalize Kfreq so that Kfreq is in the range of [0,1].

15 . A method of rescaling digital video, the method comprising:

receiving support pixels y 1 to y n at an image data input;

using an 8-tap filter to generate an interpolated pixel y s based on the input support pixels y 1 to y n at an interpolated pixel generator;

modifying the interpolated pixel y s adaptively to a local image feature Kfreq to generate an output y out at a de-ringing control unit; and

outputting the output y out for display.

16 . A method in accordance with claim 15 wherein the local image feature Kfreq is related to local frequency characteristics.

17 . A method in accordance with claim 15 further comprising:

distinguishing between a larger and a smaller value of two support pixels y a and y b and generating an output Lmax and Lmin at a local max/min analysis unit; and

comparing the interpolated pixel value y s with the output Lmax and Lmin and generating a comparison result y m at a comparator.

18 . A method in accordance with claim 17 further wherein the comparison result y m is generated as follows:

y

m

=

{

L

max

if

(

y

s

>

L

max

)

L

min

if

(

y

s

<

L

min

)

y

s

else

.

19 . A method in accordance with 17 further comprising:

subtracting the comparison result y m from the interpolated pixel value y s ;

multiplying the difference by the local image feature Kfreg; and

adding the product to comparison result y m to generate y out at the de-ringing control unit.

20 . A method in accordance with claim 15 wherein calculating the local image feature Kfreq comprises using the following relationship:

K freq=min( dev 1 ,dev 2 ,dev 3 ,dev 4)/ N,

where dev1, dev2, dev3 and dev4 are defined as follows:

dev 1=max(| y 1 −2 *y 2 +y 3 |,|y 2 −2 *y 3 +y 4 |),

dev 2=max(| y 3 −2 *y 4 +y 5 |,|y 4 −2 *y 5 +y 6 |),

dev 3=max(| y 5 −2 *y 6 +y 7 |,|y 6 −2 *y 7 +y 8 |), and

dev 4=min(| y 2 −y 4 |,|y 3 −y 5 |),

where N is a constant value used to normalize Kfreq so that Kfreq is in the range of [0,1].

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 4, 2010
From: HUANG, YONG
To: STMICROELECTRONICS ASIA PACIFIC PTE., LTD.
Reel/Frame 024549/0960 →