Reason for Histogram Equalisation for having "stacked" effects?

I read in an image, run histeq on the it and store it as Img2. Then I run histeq again on Img2 and store it as Img3.
It turns out that when I compare the histograms of Img2 and Img3, the histogram of Img3 looks more equalised and uniform. Both Img2 and Img3, however, look almost identical with naked eyes.
This is a screenshot of their histograms. The one on the left is the histogram for Img2, while the right one is for Img3:
So it looks like the histogram equalisation can be "stacked" and by running many times can make the image even more uniform? Is there a reason for this?

 采纳的回答

What was your second input argument to histeq()?

4 个评论

I did not provide a second input argument into histeq(). I only provided the image data from imread() into histeq() as its first argument and that's all.
Why don't you try providing a flat histogram as a target and see how it does?
oh wait a minute, I just realise that I put 255 as my second argument. Would this matter?
Let's take a step back and figure out why you want to do histogram equalization anyway. Almost always it's unnecessary to the subsequent processing and analysis, and produces a lousy, unnatural looking image.

请先登录,再进行评论。

更多回答(0 个)

类别

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by