How to enhance contrast on a grayscale image?

5 views (last 30 days)
Mr M.
Mr M. on 29 Dec 2017
Commented: Mohamed Moawed on 5 Apr 2020
How to call eqhist to make the lowest value white and the highest value balck?
  1 Comment
Jan
Jan on 29 Dec 2017
@Mr M.: Please spend more time when asking a question to explain any details. Although the readers could guess, what your inputs are and what you want to get as output, it is more efficient, if you explain this explicitly. It is not clear what "eqhist" is, maybe you mean "histeq"?

Sign in to comment.

Answers (2)

Jan
Jan on 29 Dec 2017
If you mean "histeq", which details is not clear after reading the documentation: https://www.mathworks.com/help/images/ref/histeq.html ?
  3 Comments
Jan
Jan on 4 Jan 2018
@Mr M.: What are your inputs? If the lowest value should be white and the highest black, you have to subtract the output of histeq from the highest possible value, but it depends on the type of your input, what this is. Example:
Img = rand(640, 480) * 0.5; % dark grey image, double format
Img2 = 1 - histeq(Img);
% UNTESTED - I do not have the signal processing toolbox

Sign in to comment.


Image Analyst
Image Analyst on 4 Jan 2018
histeq() is junk. Histogram equalization produces harsh, unnatural looking images. Don't do it. Use imadjust() instead. It uses a linear contrast stretch giving a more realistic and natural appearance for the output image.

Community Treasure Hunt

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

Start Hunting!