IP Library Granted Patent US 7,352,911
Granted Patent B2
US 7,352,911 · App. 10/631,148 · Granted Apr 1, 2008

Method for bilateral filtering of digital images

Assignee: Hewlett-Packard Development Company, L.P.
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 7,352,911
App. No.
10/631,148
Granted
Apr 1, 2008
Kind
B2
Abstract

A method for processing an image using a bilateral filter. The bilateral filter is reformulated at each pixel location in the image into a sum of the original signal value of a central pixel at said pixel location and a bilateral correction term which is a function of local signal differences between the central pixel and its neighbors. The bilateral correction term is calculated using a computationally efficient approximation.

Claims (51)

1. A method for processing an image using a bilateral filter, comprising the steps of:

generating a modified bilateral filter by reformulating an initial bilateral filter for each pixel location in the image into a sum of the original signal value of a central pixel at said pixel location and a bilateral correction term which is a function of local signal differences between the central pixel and its neighbors;

processing each pixel (i) in the image by:

buffering a neighborhood of said pixels as determined by the size of the bilateral filter convolution kernel Kj; and

calculating a filtered value for said pixel (i) using a bilateral filter including a normalization expression implemented as a Taylor series expansion;

replacing the normalization expression with a value of 1;

for each possible quantized said signal difference:

pre-calculating the product of the photometric weight for each neighboring pixel j and the signal difference Δf j between pixel j and center pixel i, to produce a signal value PSI(Δf j ) representing the influence of neighboring pixel j;

storing each said value of PSI in a look-up table; and

using a value of PSI in the look-up table corresponding to an instant value of Δƒ j to calculate the contribution of the neighboring pixel j, by multiplying the value for pixel j with a corresponding convolution kernel coefficient K j .

2. The method of claim 1 , wherein said Taylor series expansion is implemented as a truncated infinite geometric sum.

3. The method of claim 1 , wherein said Taylor series is implemented using an order of expansion of zero.

4. The method of claim 1 , wherein the Taylor series is expanded as a truncated infinite product.

5. The method of claim 2 , wherein said truncated infinite geometric sum having an order of expansion of one is used to implement a signal processing device operating in accordance with said method.

6. A method for processing an image using a bilateral filter, comprising the steps of:

generating a modified bilateral filter by reformulating an initial bilateral filter for each pixel location in the image into a sum of the original signal value of a central pixel at said pixel location and a bilateral correction term which is a function of local signal differences between the central pixel and its neighbors; and

processing each pixel (i) in the image by:

buffering a neighborhood of said pixels as determined by the size of the bilateral filter convolution kernel Kj; and

calculating a filtered value for said pixel (i) using a bilateral filter including a normalization expression implemented as a Taylor series expansion;

wherein the normalization expression is expanded by performing the additional steps of:

for each possible quantized said signal difference Δf j :

pre-calculating the photometric weight g(Δf j );

storing each said value of photometric weight in a look-up table; and

using a value of g in the look-up table corresponding to an instant value of a signal difference in one or more color-channels Δf j to compute the bilateral weight of a neighboring pixel j, by multiplying the value for pixel j with a corresponding convolution kernel coefficient Kj;

computing a bilateral correction term for each of the color channels, by multiplying the calculated bilateral weight of the neighboring pixel j with the signal differences Δcj corresponding to each of the color channels; and

adding each of the computed bilateral correction terms to the central pixel value for the corresponding channel.

7. A method for generating a zero-order approximation of a bilateral filter, wherein a single channel input signal including an image comprising a plurality of pixels is filtered to provide a single channel output corresponding to one dimension of a filtered image, the method comprising the steps of:

summing, for all said pixels i in the image, contributions from each neighboring pixel j, corresponding to Kj, wherein the contribution of each said neighboring pixel j is:

(a) the photometric weight for each said neighboring pixel j, multiplied by

(b) the signal difference between pixel j and the center pixel single channel signal; multiplied by

(c) the convolution kernel coefficient K j for the neighboring pixel (j); and

adding the single channel center pixel signal to generate the single channel output for the center pixel;

wherein said photometric weight for neighboring pixel j is determined by the difference between the center pixel signal and the signal at the neighboring pixel j, corresponding to K j ; and

wherein the convolution kernel coefficient K j is a weight that determines the contribution of neighbor j to a weighted average filter;

quantizing the input signal;

for each possible quantized said signal difference:

pre-calculating the product of the photometric weight for each neighboring pixel j and the signal difference Δf j between pixel j and center pixel i, to produce a signal value PSI(Δf j ) representing the influence of neighboring pixel j;

storing each said value of PSI in a look-up table; and

using the value of PSI in the look-up table corresponding to an instant value of Δf j to calculate the contribution of the neighboring pixel j, by multiplying the value for pixel j with a corresponding convolution kernel coefficient Kj.

8. A system for processing an image including a plurality of pixels comprising:

a look-up table stored in said memory, and a bit-shift register a processor and associated memory;

a bilateral filter program, stored in said memory and executable by said processor;

wherein the bilateral filter program processes each pixel (i) in the image by:

reformulating the bilateral filter, for each pixel location in the image, into a sum of the original signal value of a central pixel at said pixel location and a bilateral correction term which is a function of local signal differences between the central pixel and its neighbors;

buffering a neighborhood of said pixels as determined by the size of the bilateral filter convolution kernel Kj; and calculating a filtered value for said pixel (i) using a bilateral filter including a normalization expression implemented as a truncated Taylor series expansion;

wherein the normalization expression is expanded using a Taylor series expansion by performing the additional steps of:

for each possible guantized said signal difference:

pre-calculating the product of the photometric weight for each neighboring pixel j and the signal difference Δf j between pixel j and center pixel i, to produce a signal value PSI(Δf j ) representing the influence of neighboring pixel j;

storing each said value of PSI in the look-up table; and

using a value of PSI in the look-up table corresponding to an instant value of Δf j to calculate the contribution of the neighboring pixel j, by multiplying the value for pixel j with a corresponding convolution kernel coefficient Kj;

wherein the normalization expression is implemented using the bit-shift register.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 27, 2003
From: MAURER, RON
To: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.
Reel/Frame 014077/0830 →
Continuity (1)
Related Publication 20050025378A1 · Feb 3, 2005