IP Library Granted Patent US 8,842,912
Granted Patent B2
US 8,842,912 · App. 13/473,313 · Granted Sep 23, 2014

Method for processing highlights and saturated regions in a digital image

Inventors: Rastislav Lukac (Santa Clara, CA); Ken Doyle (Santa Clara, 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,842,912
App. No.
13/473,313
Granted
Sep 23, 2014
Kind
B2
Abstract

A method for performing highlight restoration on a digital image includes comparing the pixels in the image with a saturation level value to identify saturated pixels. A saturation map of saturated pixels is generated. Each selected saturated pixel is identified as a restorable pixel only if at least one color channel of the pixel is unsaturated. For each restorable pixel, a group of the closest unsaturated pixels above, below, to the left, and to the right of the select saturated pixel is identified. A replacement pixel value is generated for each saturated color channel of the restorable pixel, using a combination of the pixel values of the unsaturated color channels of the restorable pixel and the pixel values of the corresponding color channels of the nearby unsaturated pixels.

Claims (46)

1. A method for performing highlight restoration on a digital image comprising:

comparing the pixels in the image with a saturation level value to identify saturated pixels;

generating a saturation map of saturated pixels;

selecting a pixel from the saturation map;

for each selected saturated pixel, identifying that saturated pixel as a restorable pixel only if at least one color channel of the pixel is unsaturated;

for each restorable pixel, identifying a group of the closest unsaturated pixels above, below, to the left, and to the right of the select saturated pixel; and

generating a replacement pixel value for each saturated color channel of the restorable pixel, using a combination of the pixel values of the unsaturated color channels of the restorable pixel and the pixel values of the corresponding color channels of the nearby unsaturated pixels.

2. The method of claim 1 further including applying a smoothing filter to each pixel location identified in the saturation map.

3. The method of claim 1 wherein generating a replacement pixel value for each saturated color channel of the restorable pixel further includes weighting the pixel values of the corresponding color channels of each closest unsaturated pixel as a function of the distance from the selected saturated pixel to that closest unsaturated pixel.

4. The method of claim 1 , wherein identifying a saturated pixel as a restorable pixel further includes excluding that saturated pixel if it is an isolated saturated pixel.

5. The method of claim 1 wherein identifying a group of the closest unsaturated pixels above, below, to the left, and to the right of the select saturated pixel comprises identifying at least one single closest unsaturated pixel in each of a direction above, below, to the left, and to the right of the select saturated pixel.

6. The method of claim 1 wherein identifying a group of the closest unsaturated pixels above, below, to the left, and to the right of the select saturated pixel further includes identifying unsaturated pixels at edges of the saturation map and excluding those pixels from the group of closest unsaturated pixels.

7. The method of claim 6 wherein identifying unsaturated pixels at edges of the saturation map includes identifying unsaturated pixels at edges of the saturation map using one of filtering operators and morphological operators.

8. The method of claim 1 , further including:

generating an edge map from the input image data;

and wherein identifying a group of the closest unsaturated pixels above, below, to the left, and to the right of the select saturated pixel includes excluding unsaturated pixels if:

the saturation map runs up to the edge of the image itself;

any of the group of the unsaturated pixels are at or beyond an edge as determined from the edge map unless all four pixels fall at or beyond an edge with respect to the pixel being repaired.

9. The method of claim 1 , further including:

for each saturated pixel that is repaired with at least one unsaturated pixel not beyond an edge, identify that pixel as having a good repair and incrementing a good-repair count; and

for each saturated pixel that is repaired where all four nearest unsaturated pixels are beyond an edge, identifying that pixel as having a bad repair and incrementing a bad-repair count.

10. The method of claim 9 , further including:

(1) removing from the saturation map all pixels previously identified as having had a good repair;

(2) performing the highlight restoration of claim 1 on all pixels previously identified as having received a bad repair; and

repeating (1) and (2) in order at least once.

11. The method of claim 9 , further including applying a smoothing filter to each pixel location identified in the saturation map.

12. The method of claim 9 further including generating a pixel repair quality factor.

13. The method of claim 12 further including:

comparing the quality factor to a threshold; and

performing further processing on the image or marking the restoration process as a failure if the quality factor is below the threshold.

14. The method of claim 12 wherein the quality factor is a ratio of the good-repair count to the bad-repair count.

15. The method of claim 13 wherein the quality factor is a ratio of the number of saturated pixels having one, two, or all three color channels saturated.

16. The method of claim 8 wherein generating an edge map from the input image data comprises performing an edge detection method to generate the edge map.

17. The method of claim 16 wherein the edge detection method is one of a Canny, Sobel, and Laplacian method.

18. The method of claim 8 wherein generating an edge map from the input image data comprises:

calculating gradients in the vertical and horizontal directions;

scaling the gradients by one of the signal magnitude and a noise model obtained in calibration;

combining the scaled gradients to generate a scaled edge map; and

normalizing the combined scaled gradients to map them between zero and one.

19. The method of claim 18 wherein generating a scaled edge map from the input image data further comprises applying spatial filtering to the scaled edge map.

20. The method of claim 8 , further including applying one of gamma correction, power function, or as max(0,(edges-Beta)/(1-Beta)) where Beta is a predetermined adjustment factor.

21. The method of claim 8 wherein generating an edge map from the input image data comprises:

calculating gradients in the vertical and horizontal directions;

scaling the gradients by one of the signal magnitude and a noise model obtained in calibration;

combining the scaled gradients to generate a scaled edge map; and

thresholding the scaled edge map using a predetermined parameter to create a binary edge map.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 4, 2024
From: FOVEON, INC.
To: SIGMA CORPORATION
Reel/Frame 069483/0391 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 23, 2012
From: LUKAC, RASTISLAV; DOYLE, KEN
To: FOVEON, INC.
Reel/Frame 028615/0966 →
Continuity (3)
Provisional Application 61487887 · May 19, 2011
Provisional Application 61534556 · Sep 14, 2011
Related Publication 20120294527A1 · Nov 22, 2012