IP Library › Granted Patent US 8,824,826
Granted Patent B2
US 8,824,826 · App. 13/072,324 · Granted Sep 2, 2014

Methods for performing fast detail-preserving image filtering

Inventor: Rastislav Lukac (San Jose, CA)
Assignee: Foveon, Inc.
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 8,824,826
App. No.
13/072,324
Granted
Sep 2, 2014
Kind
B2
Abstract

A method for performing fast detail-preserving filtering of an input digital image includes, for each pixel in the image, calculating the difference between the selected pixel and each of its four neighboring pixels located above, left, right, and below the selected pixel, calculating a scaled weighted sum of differences between the actual pixel and its four neighbors, where for each neighboring pixel the weight is an edge-sensing function having a data-adaptive scaling parameter function, and adding the weighted sum of differences to the value of the selected pixel.

Claims (204)

1. A method for creating an output digital image by performing fast detail-preserving filtering of an input digital image comprising:

a) selecting a pixel a from the input digital image, pixel a not being in a row or column at the boundary of the image;

b) calculating the difference between the selected pixel and each of its four neighboring pixels located above, left, right, and below the selected pixel;

c) calculating a scaled weighted sum of differences between the selected pixel and its four neighbors, the difference being scaled by a data-adaptive scaling function using the pixel under consideration to estimate noise variance, where for each neighboring pixel b the weight is a function ƒ of the difference between the selected pixel a and its neighboring pixel b under consideration, where

f

⁡

(

a

,

b

)

=

1

1

+

(

a

-

b

)

2

/

κ

⁡

(

a

,

b

)

2

,

the data-adaptive scaling function being κ(a,b)=θ(Θ 0 +Θ 1 a+Θ 2 a 2 ) where θ is a scaling factor, and where Θ 0 , Θ 1 , and Θ 2 are quadratic model parameters;

d) adding the weighted sum of differences to the value of the selected pixel; and

performing a) through d) for each pixel in the input digital image that is not in a row or column at the boundary of the image.

2. A method for creating an output digital image by performing fast detail-preserving filtering of an input digital image comprising:

a) selecting a pixel a from the input digital image, pixel a not being in a row or column at the boundary of the image;

b) calculating the difference between the selected pixel and each of its four neighboring pixels located above, left, right, and below the selected pixel;

c) calculating a scaled weighted sum of differences between the selected pixel and its four neighbors, the difference being scaled by a data-adaptive scaling function using the neighboring pixels to estimate noise variance, where for each neighboring pixel b the weight is a function ƒ of the difference between the selected pixel a and its neighboring pixel b under consideration, where

f

⁡

(

a

,

b

)

=

1

1

+

(

a

-

b

)

2

/

κ

⁡

(

a

,

b

)

2

,

the data-adaptive scaling function being κ(a,b)=θ(Θ 0 +Θ 1 b+Θ 2 b 2 ) where θ is a scaling factor, and where Θ 0 , Θ 1 , and Θ 2 are quadratic model parameters;

d) adding the weighted sum of differences to the value of the selected pixel; and

performing a) through d) for each pixel in the input digital image that is not in a row or column at the boundary of the image.

3. A method for creatin an output digital image by performing fast detail-preserving filtering of an input digital image comprising:

a) selecting a pixel a from the input digital image, pixel a not being in a row or column at the boundary of the image;

b) calculating the difference between the selected pixel and each of its four neighboring pixels located above, left, right, and below the selected pixel;

c) calculating a scaled weighted sum of differences between the selected pixel and its four neighbors, the difference being scaled by a data-adaptive scaling function using a combination of the pixel under consideration and the neighboring pixels to estimate noise variance, where for each neighboring pixel b the weight is a function ƒ of the difference between the selected pixel a and its neighboring pixel b under consideration, where

f

⁡

(

a

,

b

)

=

1

1

+

(

a

-

b

)

2

/

κ

⁡

(

a

,

b

)

2

,

the data-adaptive scaling function being κ(a,b)=θ(Θ 0 +Θ 1 c+Θ 2 c 2 ) where θ is a scaling factor, and where Θ 0 , Θ 1 , and Θ 2 are quadratic model parameters, and the term c=(w a a+w b b)/(w a +w b ), and where w a and w b are weights associated with pixels a and b, respectively;

d) adding the weighted sum of differences to the value of the selected pixel; and

performing a) through d) for each pixel in the input digital image that is not in a row or column at the boundary of the image.

4. A method for creating an output color digital image by performing fast detail-preserving filtering of an input color digital image comprising:

a) selecting a pixel a from the input color digital image, pixel a not being in a row or column at the boundary of the image;

b) calculating separately for each color channel in the selected pixel the difference between the selected pixel and each of its four neighboring pixels located above, left, right, and below the selected pixel;

c) calculating separately for each color channel in the selected pixel a scaled weighted sum of differences between the selected pixel and its four neighbors, the difference being scaled by a data-adaptive scaling function using the pixel under consideration to estimate noise variance, where for each neighboring pixel b the weight is a function ƒ of the difference between the selected pixel a and its neighboring pixel b under consideration, where

f

⁡

(

a

,

b

)

=

1

1

+

(

a

-

b

)

2

/

κ

⁡

(

a

,

b

)

2

,

the data-adaptive scaling function being κ(a,b)=θ(Θ 0 +Θ 1 a+Θ 2 a 2 ) where θ is a scaling factor, and where Θ 0 , Θ 1 , and Θ 2 are quadratic model parameters;

d) adding separately for each color channel in the selected pixel the weighted sum of differences to the value of the selected pixel; and

performing a) through d) for each pixel in the input color digital image that is not in a row or column at the boundary of the image.

5. A method for creating an output color digital image by performing fast detail-preserving filtering of an input color digital image comprising:

a) selecting a pixel a from the input color digital image, pixel a not being in a row or column at the boundary of the image;

b) calculating separately for each color channel in the selected pixel the difference between the selected pixel and each of its four neighboring pixels located above, left, right, and below the selected pixel;

c) calculating separately for each color channel in the selected pixel a scaled weighted sum of differences between the selected pixel and its four neighbors, the difference being scaled b a data-adaptive scaling function using the pixel under consideration to estimate noise variance, where for each neighboring pixel b the weight is a function ƒ of the difference between the selected pixel a and its neighboring pixel b under consideration, where

f

⁡

(

a

,

b

)

=

1

1

+

(

a

-

b

)

2

/

κ

⁡

(

a

,

b

)

2

,

the data-adaptive scaling function being κ(a,b)=θ(Θ 0 +Θ 1 b+Θ 2 b 2 ) where θ is a scaling factor, and where Θ 0 , Θ 1 , and Θ 2 are quadratic model parameters;

d) adding separately for each color channel in the selected pixel the weighted sum of differences to the value of the selected pixel; and

performing a) through d) for each pixel in the input color digital image that is not in a row or column at the boundary of the image.

6. A method for creating an output color digital image by performing fast detail-preserving filtering of an input color digital image comprising:

a) selecting a pixel a from the input color digital image, pixel a not being in a row or column at the boundary of the image;

b) calculating separately for each color channel in the selected pixel the difference between the selected pixel and each of its four neighboring pixels located above, left, right, and below the selected pixel;

c) calculating separately for each color channel in the selected pixel a scaled weighted sum of differences between the selected pixel and its four neighbors, the difference being scaled by a data-adaptive scaling function using a combination of the pixel under consideration and the neighboring pixels to estimate noise variance, where for each neighboring pixel b the weight function ƒ of the difference between the selected pixel a and its neighboring pixel b under consideration, where

f

⁡

(

a

,

b

)

=

1

1

+

(

a

-

b

)

2

/

κ

⁡

(

a

,

b

)

2

,

the data-adaptive scaling function being κ(a,b)=θ(Θ 0 +Θ 1 c+Θ 2 c 2 ) where θ is a scaling factor, and where Θ 0 , Θ 1 , and Θ 2 are quadratic model parameters, and the term c=(w a a+w b b)/(w a +w b ), where w a and w b are weights associated with pixels a and b, respectively;

d) adding separately for each color channel in the selected pixel the weighted sum of differences to the value of the selected pixel; and

performing a) through d) for each pixel in the input color digital image that is not in a row or column at the boundary of the image.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 7, 2011
From: LUKAC, RASTISLAV
To: FOVEON, INC.
Reel/Frame 026402/0144 →
Continuity (2)
Provisional Application 61446274 · Feb 24, 2011
Related Publication 20120219215A1 · Aug 30, 2012