Method of Improving a Digital Image as a Function of its Dynamic Range
The present invention is a method of processing a digital image that is initially represented by digital data indexed to represent position on a display. The digital data is indicative of an intensity value I(sub i)(x,y) for each position (x,y) in each i-th spectral band. A classification of the image based on its dynamic range is then defined in each of the image's S spectral bands. The intensity value for each position in each i-th spectral band is adjusted to generate an adjusted intensity value for each position in each i-th spectral band in accordance with SIGMA (sup n)(sub n=1) W(sub n)(log I (sub i)(x,y) - log[I(sub i)(x,y)*F(sub n)(x,y)]), i=1,...,S where W(sub n) is a weighting factor, "*" is the convolution operator and S is the total number of unique spectral bands. For each n, the function F(sub n)(x,y) is a unique surround function applied to each position (x,y) and N is the total number of unique surround functions. Each unique surround function is scaled to improve some aspect of the digital image, e.g., dynamic range compression, color constancy, and lightness rendition. The adjusted intensity value to each position in each i-th spectral band of the image is then filtered with a filter function that is based on the dynamic range classification of the image.