System and method for processing non-linear image data from a digital imager
First Claim
1. A method of optimally utilizing a fixed set of intensity levels of a video display to represent a wide dynamic range data captured by an imager, comprising:
- (a) determining a target grey value;
(b) determining a power curve from the determined target grey value;
(c) limiting the determined power curve to a range of minimum and maximum power curves, the range of minimum and maximum power curves corresponding to an original compression curve utilized by the imager;
(d) remapping a luma value of each pixel using the limited power curve;
(e) determining a minimum luma value BPmin for a frame of image data;
(f) creating a histogram from the remapped luma values;
(g) determining an ideal black point value BP and an ideal white point value WP from the created histogram and determined minimum luma value; and
(h) restretching the image data, using the determined ideal black point value and an ideal white point value, to create new luma values for each pixel.
2 Assignments
0 Petitions
Accused Products
Abstract
A system and method process non-linear image data, still or video, from a digital imager. Noise generated by analog-to-digital converters is filtered from a pixel of digital image data. Moreover, the effects of single pixel defects in the imager are eliminated by clamping a predetermined pixel of image data within the window when the value of the predetermined pixel is greater than a maximum value of the image data of neighboring pixels or less than a minimum value of the image data of neighboring pixels. Ripples in image data are reduced by eliminating the effects of single pixel defects before filtering for crosstalk caused by electrical crosstalk between sensor elements in an imager. Dark current is removed from image data generated by an imager by subtracting a fraction of a determined dark current value from all image data generated by the imager to compensate for nonlinearities in dark current across the imager. The image data is white balanced by creating a set of scalar color adjustments from determined average color values and constraining the set of scalar adjustments to plausible lighting conditions to prevent overcompensation on images having large regions of similar hue. Lastly, utilization of a fixed set of intensity levels is optimized by remapping and restreching the image data to create new luma values for each pixel.
83 Citations
13 Claims
-
1. A method of optimally utilizing a fixed set of intensity levels of a video display to represent a wide dynamic range data captured by an imager, comprising:
-
(a) determining a target grey value; (b) determining a power curve from the determined target grey value; (c) limiting the determined power curve to a range of minimum and maximum power curves, the range of minimum and maximum power curves corresponding to an original compression curve utilized by the imager; (d) remapping a luma value of each pixel using the limited power curve; (e) determining a minimum luma value BPmin for a frame of image data; (f) creating a histogram from the remapped luma values; (g) determining an ideal black point value BP and an ideal white point value WP from the created histogram and determined minimum luma value; and (h) restretching the image data, using the determined ideal black point value and an ideal white point value, to create new luma values for each pixel. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A method of optimally utilizing a fixed set of intensity levels of a video display to represent a wide dynamic range data captured by an imager, comprising:
-
(a) determining a target grey value; (b) determining a power curve from the determined target grey value; (c) converting luma values into logarithmic luma values, the logarithmic luma values being independent of an input data range; (d) determining a power function based upon a ratio between a desired logarithmic luma average and an actual logarithmic luma average; (e) determining a maximum gain limit; (f) determining a correct luma value; (g) determining a luma correction value from the correct luma value and the actual luma value; and (h) applying the luma correction value to each pixel input luma value to generate a corrected pixel input luma value. - View Dependent Claims (13)
-
Specification