Enhance contrast using histogram equalization
transforms the color map associated with the indexed image newmap = histeq(X,map,hgram)X
so that the histogram of the gray component of the indexed image
(X,newmap) approximately matches
the target histogram hgram. The histeq
function returns the transformed color map in newmap.
length(hgram) must be the same as
size(map,1).
[___,
also returns the transformation T]
= histeq(___)T that maps the gray
component of the input grayscale image or color map to the gray component of the
output grayscale image or color map.
When you supply a desired histogram hgram, histeq
chooses the grayscale transformation T to minimize
c0 is the cumulative
histogram of the input image I, and
c1 is the cumulative sum of
hgram for all intensities k. This
minimization is subject to these constraints:
T must be monotonic
c1(T(a)) cannot overshoot c0(a) by more than half the distance between the histogram counts at a
histeq uses the transformation b =
T(a) to map the gray levels in
X (or the color map) to their new values.
If you do not specify hgram, then histeq creates a
flat hgram,
hgram = ones(1,n)*prod(size(A))/n;
and then applies the previous algorithm.
adapthisteq | brighten | imadjust | imhist