How to normalise Image intensity?
30 views (last 30 days)
Show older comments
Hi,
I have 2 picture of the same object taken on different time. There are intensity different between the 2 picture(minor changes in lighting condition.)
Is there a way for me to make both to have the same intensity? Eg, Im2's intensity follows Im1's intensity?
Im1:
Im2
Thanks
0 Comments
Accepted Answer
Dustin
on 3 Jul 2011
Hi Kyle,
The method suggested by Sean de is fine to normalize the maximum intensity. However, it will not necessarily give you the same appearance for both images (due to the intensity distributions not definitely being scaled by a multiplicative factor).
I suggest you try the histogram transfer method in order to get a somewhat similar appearance. Something along the lines of:
b = histeq(b,imhist(a));
Cheers.
7 Comments
Dustin
on 6 Jul 2011
Moved: DGM
on 5 Mar 2023
You need to find the difference in the intensity values in the histograms of each image. Then, this difference for each intensity level can be transferred to the histogram of the third image, and histogram equalization performed on that image with this histogram.
Basic arithmetic and histeq should let you solve your problem. Look at this for further information about histogram equalization:
http://en.wikipedia.org/wiki/Histogram_equalization
Farah Nadiah
on 2 Apr 2016
Moved: DGM
on 5 Mar 2023
Dustin..can i ask..how to subtract the two histogram that u mean in previous comment...can i have the coding thanx.. :)
More Answers (2)
Sean de Wolski
on 1 Jul 2011
Inormalized = double(I)./double(max(I(:)));
Doing this to both will give them both the same maximum intensity (1).
Image Analyst
on 9 Jul 2011
If you really want to match intensities of gray scale images, meaning that the histograms of the two images have EXACTLY the same histograms after transforming one image, then you need to look at my "Custom-shaped histogram" File Exchange submission: http://www.mathworks.com/matlabcentral/fileexchange/?term=authorid%3A31862 You could use this on each color channel independently for what will probably give very acceptable results.
If you want to match histograms of a color image, I direct you to the Grundland/Dodgson method: http://www.eyemaginary.com/Portfolio/ColorHistogramWarp.html
0 Comments
See Also
Categories
Find more on Histograms in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!