Histogram equalization method and device in contrast enhancement apparatus for image processing system
First Claim
1. An image processing method comprising:
- (a) selecting a window that is first in a series of windows, wherein each window in the series covers an area in an image and overlaps an immediately preceding window in the series, the windows collectively covering a portion of the image that is larger than any individual one of the areas;
(b) determining a histogram of pixel values for pixels in the selected window;
(c) determining a transform function for the selected window from the histogram for the selected window;
(d) applying the transform function for the selected window to pixel values corresponding to at least one of the pixels of the selected window, wherein applying the transform function to a pixel value generates an equalized value;
(e) determining whether the selected window is last in the series;
(f) selecting a window that is next in the series and repeating steps (b) through (f), if the selected window is not the last; and
(g) displaying the image, if the selected window is the last, wherein visual appearance of pixels in the image as displayed varies according to the equalized values obtained in step (d), wherein applying the transform function comprises;
low-pass-filtering brightness values for pixels in the selected window to generate filtered brightness values; and
applying the transform function to the filtered brightness values.
1 Assignment
0 Petitions
Accused Products
Abstract
In contrast enhancement during image processing, a histogram equalization process or apparatus divides an equalization image screen into overlapping windows and performs histogram equalization on each window. Using windows improves contrast of pixel values that are rare throughout the entire image and reduces or prevents loss of information represented by the rare pixel values. Overlapping the windows reduces discontinuities at the boundaries of the windows. The size and overlap of the windows can be adjusted according to the time available for equalization and can be optimized according to the desired image quality improvement. The histogram equalization can be selectively performed on an entire image screen or any part thereof to reduce image degradation in the entire or part of an image. As a further aspect of the invention, to reduce the number of operations required for equalization, a histogram for a current window is obtained starting from the histogram for a previous window. To further improve image quality, a histogram equalization apparatus uses low-pass- or band-pass-filtered pixel data as a lookup table address to output a histogram-equalized value. This helps remove amplified thermal or quantization noise.
-
Citations
23 Claims
-
1. An image processing method comprising:
-
(a) selecting a window that is first in a series of windows, wherein each window in the series covers an area in an image and overlaps an immediately preceding window in the series, the windows collectively covering a portion of the image that is larger than any individual one of the areas; (b) determining a histogram of pixel values for pixels in the selected window; (c) determining a transform function for the selected window from the histogram for the selected window; (d) applying the transform function for the selected window to pixel values corresponding to at least one of the pixels of the selected window, wherein applying the transform function to a pixel value generates an equalized value; (e) determining whether the selected window is last in the series; (f) selecting a window that is next in the series and repeating steps (b) through (f), if the selected window is not the last; and (g) displaying the image, if the selected window is the last, wherein visual appearance of pixels in the image as displayed varies according to the equalized values obtained in step (d), wherein applying the transform function comprises; low-pass-filtering brightness values for pixels in the selected window to generate filtered brightness values; and applying the transform function to the filtered brightness values.
-
-
2. An image processing method comprising:
-
(a) selecting a window that is first in a series of windows, wherein each window in the series covers an area in an image and overlaps an immediately preceding window in the series, the windows collectively covering a portion of the image that is larger than any individual one of the areas; (b) determining a histogram of pixel values for pixels in the selected window; (c) determining a transform function for the selected window from the histogram for the selected window; (d) applying the transform function for the selected window to pixel values corresponding to at least one of the pixels of the selected window, wherein applying the transform function to a pixel value generates an equalized value; (e) determining whether the selected window is last in the series; (f) selecting a window that is next in the series and repeating steps (b) through (f), if the selected window is not the last, and (g) displaying the image, if the selected window is the last wherein visual appearance of pixels in the image as displayed varies according to the equalized values obtained in step (d), wherein applying the transform function comprises; band-pass-filtering brightness values for pixels in the selected window to generate filtered brightness values; and applying the transform function to the filtered brightness values.
-
-
3. An image processing method comprising:
-
(a) selecting a window that is first in a series of windows, wherein each window in the series covers an area in an image and overlaps an immediately preceding window in the series, the windows collectively covering a portion of the image that is larger than any individual one of the areas; (b) determining a histogram of pixel values for pixels in the selected window; (c) determining a transform function for the selected window from the histogram for the selected window; (d) applying the transform function for the selected window to pixel values corresponding to at least one of the pixels of the selected window, wherein applying the transform function to a pixel value generates an equalized value; (e) determining whether the selected window is last in the series; (f) selecting a window that is next in the series and repeating steps (b) through (f), if the selected window is not the last; and (g) displaying the image, if the selected window is the last wherein visual appearance of pixels in the image as displayed varies according to the equalized values obtained in step (d), wherein determining the histogram comprises; determining whether the selected window is a boundary window, a boundary window being a window that includes pixels on a selected edge of the portion of the image; and if the selected window is a boundary window, resetting counts that are associated with permitted levels for pixel values, and then for each pixel in the selected window, identifying a level for the pixel value associated with the pixel and incrementing a count associated with the level identified; if the selected window is not a boundary window, the method further comprises; retaining the counts at count values determined for a preceding window; for each pixel that is in the selected window and not in the preceding window, identifying a level for the pixel value associated with the pixel and incrementing a count associated with the level identified; and for each pixel that is in the preceding window and not in the selected window, identifying a level for the pixel value associated with the pixel and decrementing a count associated with the level identified.
-
-
4. An image processing method comprising:
-
(a) selecting a window that is first in a series of windows, wherein each window in the series contains pixels representing an image and the windows collectively cover a portion of the image; (b) determining whether the selected window is a boundary window, a boundary window being a window that includes pixels on a selected edge of the portion of the image; (c) if the selected window is a boundary window, determining a histogram of pixel values for the pixels in the selected window; (d) if the selected window is not a boundary window, then; (d1) determining a first histogram of pixel values for pixels which are in the selected window and not in a previous window in the series; (d2) determining a-second histogram of pixel values for pixels which are in the previous window and not in the selected window; and (d3) adding the first histogram to and subtracting the second histogram from a histogram determined for the previous window, a result being the histogram for the selected window; (e) determining a transform function for the selected window from the histogram for the selected window; (f) applying the transform function for the selected window to pixel values corresponding to at least one of the pixels of the selected window, wherein applying the transform function to a pixel value generates an equalized value; (g) determining whether the selected window is last in the series; (h) selecting a window that is next in the series and repeating steps (b) through (h), if the selected window is not the last; and (i) displaying the image, if the selected window is the last, wherein visual appearance of pixels in the image as displayed varies according to the equalized values obtained in step (d), each window in the series overlaps an immediately preceding window in the series, and each window in the series has an offset from the preceding window. - View Dependent Claims (5, 6, 7, 8, 9, 10, 11)
-
-
12. An apparatus for contrast enhancement in an image processing system, the apparatus comprising:
-
a first data storage unit for storing pixel values, wherein in response to a first address signal, the first data storage unit outputs a first set of pixel values representing pixels in a window, and in response to a second address signal, the first data storage unit outputs a second set of pixel values representing a first number of pixels in the window; a histogram operation unit coupled to receive the first set of pixel values, the histogram operation unit generating a set of counts indicating a histogram of the first set of pixel values; an equalized value generating unit coupled to receive the set of counts from the histogram operation unit and the second set of pixel values from the storage unit, the equalized value generating unit determining a transform function from the counts, and applying the transform function to the second set of pixel values to generate equalized values, wherein the equalized value generating unit further comprises a low-pass filter for low-pass filtering the second set of pixel values received from the image data storage unit and outputting filtered data as addresses for a look up table; a second storage unit for storing the equalized values from the equalized value generating unit; and a controller that generates the first address signal and the second address signal, wherein the controller sequentially changes the first address signal to addresses corresponding to a selected current window in a series of windows that collectively cover a portion of an image, wherein the current window overlaps an immediately preceding window in the series. - View Dependent Claims (13, 14, 15)
-
-
16. An apparatus for contrast enhancement in an image processing system, the apparatus comprising:
-
a first data storage unit for storing pixel values, wherein in response to a first address signal, the first data storage unit outputs a first set of pixel values representing pixels in a window, and in response to a second address signal, the first data storage unit outputs a second set of pixel values representing a first number of pixels in the window; a histogram operation unit coupled to receive the first set of pixel values, the histogram operation unit generating a set of counts indicating a histogram of the first set of pixel values; an equalized value generating unit coupled to receive the set of counts from the histogram operation unit and the second set of pixel values from the storage unit, the equalized value generating unit determining a transform function from the counts, and applying the transform function to the second set of pixel values to generate equalized values, wherein the equalized value generating unit further comprises a band-pass filter for band-pass-filtering the second set of pixel values received from the image data storage unit and outputting filtered data as addresses for a look up table; a second storage unit for storing the equalized values from the equalized value generating unit; and a controller that generates the first address signal and the second address signal, wherein the controller sequentially changes the first address signal to addresses corresponding to a selected current window in a series of windows that collectively cover a portion of an image, wherein the current window overlaps an immediately preceding window in the series. - View Dependent Claims (17)
-
-
18. A histogram equalization apparatus for histogram-equalizing image data of an image screen, in a contrast enhancement apparatus for an image processing systems, the apparatus comprising:
-
an image data storage unit for storing the image data, outputting first pixel data in response to a first address signal, outputting second pixel data in response to a second address signal, and outputting third pixel data in response to a third address signal, wherein the first pixel data represents all pixels included in a boundary window, the second pixel data represents pixels that are in a non-boundary window and not in a previous window and pixels that are in the previous window and not in the non-boundary window, and the third pixel data represents a first number of pixels among pixels in a current window; a histogram operation unit for generating a histogram, wherein in response to a first control signal, the histogram is generated from the first pixel data, and in response to a second control signal, the histogram is generated by generating second and third histograms from the second pixel data, summing the second histogram and a histogram generated for the previous window and subtracting the third histogram from a resulting sum, and outputting a result as the histogram; an equalized value generating unit for accumulating counts in the histogram from the histogram operation unit, and outputting in response to the third pixel data, the first number of equalized values that are calculated using accumulated counts; an equalized value storage unit for storing the equalized values and outputting all of the stored histogram-equalized values as histogram-equalized values of the image data; and a controller for generating the first address signal and the first control signal when the current window, which is to be histogram-equalized, is a boundary window, generating the second address signal and the second control signal when the current window is a non-boundary window, and generating the third address signal, wherein the current window overlaps the preceding window in a series of windows. - View Dependent Claims (19, 20, 21, 22, 23)
-
Specification