For this lab, we were to play with the histogram features of MATLAB with a moon image and an additional image of our choice. We started out with the image shown below.
First, we took the histogram of the image, which is shown below.
We then performed a histogram stretch of this image.
imshow(imadjust(IM, [0 0.5], [0 1], 1);
Histogram of stretched image:
We then inverted the image using imadjust()
imshow(imadjust(IM, [0 1], [1 0], 1));
Here's the histogram of the image:
Next, we changed the gamma parameter of the imadjust() function. Below are the results of using gamma values of 0.2, 0.5 and 2.0 respectively.
We started playing with this image like the last one, by first taking the histogram of the image.
Then, we used histeq() to perform a histogram equalization on the image.
Histogram equalized image
Histogram of previous image
The main problem with histogram equalization on this
image is that it emphasizes the wrong set of values. It emphasizes
the big block of dark values by spreading them out. In this image
the light values are more important to the detail, and in this case they
To fix this problem, we took all the pixels that had less than 115 in the histogram and gave them the value of 0. We then performed a histogram stretch of the rest of the values in the image. Here's the results:
Good looking image
imshow(imadjust(histeq(IM), [.45 1], [0 1], 1))
Histogram of good image