function b = histequal(a) [counts, n] = imhist(a); a = double(a); [row, col] = size(a); totsamp = row*col; pa = counts/totsamp; m = n/255; dm = m(2)-m(1); pb = cumsum(pa); countsb = round(pb*255); b = zeros(row,col); c = ones(row, col); for n = 0:255 k = (a == n); b(k) = countsb(n+1)*c(k); end a = uint8(a); b = uint8(b);