IP Library › Granted Patent US 9,082,180
Granted Patent B2
US 9,082,180 · App. 13/730,654 · Granted Jul 14, 2015

System, method, and computer program product for implementing a spatially varying unsharp mask noise reduction filter

Inventor: Brian K. Cabral (San Jose, CA)
Assignee: NVIDIA Corporation
G06T5/004G06T2200/28G06T2207/20012
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 9,082,180
App. No.
13/730,654
Granted
Jul 14, 2015
Kind
B2
Abstract

A system, method, and computer program product for applying a spatially varying unsharp mask noise reduction filter is disclosed. The spatially varying unsharp mask noise reduction filter generates a low-pass filtered image by applying a low-pass filter to a digital image, generates a high-pass filtered image of the digital image, and generates an unsharp masked image based on the low-pass filtered image and the high-pass filtered image. The filter also blends the low-pass filtered image with the unsharp masked image based on a shaping function.

Claims (40)

1. A method comprising:

generating a low-pass filtered image by applying a low-pass filter to a digital image;

generating a high-pass filtered image of the digital image;

generating an unsharp masked image based on the low-pass filtered image and the high-pass filtered image; and

blending the low-pass filtered image with the unsharp masked image based on a shaping function,

wherein blending the low-pass filtered image with the unsharp masked image comprises performing a linear interpolation between the low-pass filtered image and the unsharp masked image based on the shaping function,

wherein an input to the shaping function comprises a function of a pixel value of the high-pass filtered image, and

wherein the input to the shaping function is based on a noise amplitude cutoff parameter.

2. The method of claim 1 , wherein generating the high-pass filtered image comprises calculating the difference between the digital image and the low-pass filtered image.

3. The method of claim 1 , wherein generating the unsharp masked image comprises combining the low-pass filtered image and a scaled version of the high-pass filtered image.

4. The method of claim 3 , wherein generating the unsharp masked image comprises scaling the high-pass filtered image based on a coring function.

5. The method of claim 1 , wherein the low-pass filtered image is generated by applying a convolution kernel to each pixel of the digital image.

6. The method of claim 5 , wherein the convolution kernel is implemented in software configured to be executed on a graphics processing unit.

7. The method of claim 1 , wherein a value returned by the shaping function is generated using a look-up table (LUT).

8. The method of claim 7 , wherein an index into the LUT comprises a function of a pixel value of the high-pass filtered image.

9. The method of claim 7 , wherein the LUT table represents a Gaussian function.

10. A non-transitory computer-readable storage medium storing instructions that, when executed by a processor, cause the processor to perform steps comprising:

generating a low-pass filtered image by applying a low-pass filter to a digital image;

generating a high-pass filtered image of the digital image;

generating an unsharp masked image based on the low-pass filtered image and the high-pass filtered image; and

blending the low-pass filtered image with the unsharp masked image based on a shaping function,

wherein blending the low-pass filtered image with the unsharp masked image comprises performing a linear interpolation between the low-pass filtered image and the unsharp masked image based on the shaping function,

wherein an input to the shaping function comprises a function of a pixel value of the high-pass filtered image, and

wherein the input to the shaping function is based on a noise amplitude cutoff parameter.

11. The non-transitory computer-readable storage medium of claim 10 , wherein blending the low-pass filtered image with the unsharp masked image comprises performing a linear interpolation between the low-pass filtered image and the unsharp masked image based on the shaping function.

12. The non-transitory computer-readable storage medium of claim 11 , wherein an input to the shaping function comprises a function of a pixel value of the high-pass filtered image.

13. The non-transitory computer-readable storage medium of claim 10 , wherein a value returned by the shaping function is generated using a look-up table (LUT).

14. A system, comprising:

a memory storing a digital image; and

a processing unit configured to:

generate a low-pass filtered image by applying a low-pass filter to a digital image,

generate a high-pass filtered image of the digital image,

generate an unsharp masked image based on the low-pass filtered image and the high-pass filtered image, and

blend the low-pass filtered image with the unsharp masked image based on a shaping function,

wherein blending the low-pass filtered image with the unsharp masked image comprises performing a linear interpolation between the low-pass filtered image and the unsharp masked image based on the shaping function,

wherein an input to the shaping function comprises a function of a pixel value of the high-pass filtered image, and

wherein the input to the shaping function is based on a noise amplitude cutoff parameter.

15. The system of claim 14 , wherein blending the low-pass filtered image with the unsharp masked image comprises performing a linear interpolation between the low-pass filtered image and the unsharp masked image based on the shaping function.

16. The system of claim 14 , wherein the processing unit is a graphics processing unit.

17. The system of claim 16 , wherein the processing unit is included in a system-on-chip (SoC) that further comprises a central processing unit.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 31, 2013
From: CABRAL, BRIAN K.
To: NVIDIA CORPORATION
Reel/Frame 029735/0696 →
Continuity (1)
Related Publication 20140185952A1 · Jul 3, 2014