Clear Filters
Clear Filters

how to equalize histogram of two images ?

10 views (last 30 days)
clc
close all
clear all
img1 = imread('img2.jpg');
img2 = imread('img1.jpg');
subplot(3,2,1);
imshow(img1);
title('First Image');
subplot(3,2,2);
imhist(rgb2gray(img1));
title('histogram of First image');
subplot(3,2,3);
imshow(img2);
title('Second Image');
subplot(3,2,4);
imhist(rgb2gray(img2));
title('histogram of Second image');
% how to equalize the histogram of img1 and img2 ? getting error here
a = histeq(rgb2gray(img1,img2));
subplot(3,2,5);
imshow(a);
title('histogram equalize')
% how to equalize the histogram of img1 and img2 ?

Accepted Answer

Image Analyst
Image Analyst on 10 Mar 2019
Edited: Image Analyst on 10 Mar 2019
You could try imhistmatch(), but as you can see below, it doesn't do such a great job:
testImage = imread('moon.tif');
subplot(2, 3, 1);
imshow(testImage);
refImage = imread('cameraman.tif');
subplot(2, 3, 2);
imshow(refImage);
matchedImage = imhistmatch(testImage, refImage);
subplot(2, 3, 3);
imshow(matchedImage);
% Plot histograms
subplot(2, 3, 4);
imhist(testImage);
subplot(2, 3, 5);
imhist(refImage);
subplot(2, 3, 6);
imhist(matchedImage);
If you really want to do it right, you have to employ a few tricks (adding noise, sorting, randomly picking, etc.). I employ these tricks in my File Exchange submission which will match any histogram to any other histogram regardless of the shape.

More Answers (1)

KALYAN ACHARJYA
KALYAN ACHARJYA on 10 Mar 2019
Edited: KALYAN ACHARJYA on 10 Mar 2019
Normally Histogram equalization in one image, I hope you know the objective of hitogram equalization.
If you are trying to do operation on histograms in two images, hopefully it is histogram matching
a=imhistmatch(main_image, referenece_image);
Please note both are gray images.
In histogram matching, it try to make the histogram of main image as histogram of reference image.
If not, let me know the exact question.

Community Treasure Hunt

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

Start Hunting!