Clear Filters
Clear Filters

comparing two images quantitavely

4 views (last 30 days)
I want to compare a number of images with a reference image to determine which image matched the reference image most. I think getting a number out of this comparison can be useful. Here is the code:
I1 = imread('I1.jpg');
I2 = imread('I2.jpg');
obj = imshowpair(I1,I2, 'diff')
obj.CData
Avg = mean (mean(obj.CData))
Is it possible to use the CData information for this comparison? Am I doing this right? I also couldn't find what kind of information is stored in CData. And is there any better way to quantify this comparison?
Thank you

Accepted Answer

Image Analyst
Image Analyst on 9 Nov 2016
No, that's not right. You'd better off using ssim(), immse(), or psnr(). Or MAD: https://en.wikipedia.org/wiki/Median_absolute_deviation, https://en.wikipedia.org/wiki/Average_absolute_deviation
  3 Comments
Image Analyst
Image Analyst on 14 Nov 2016
CData is the pixel values of the image displayed in the axes. It seems to be the actual pixel values, not the 24 bit RGB values, so it you displayed a floating point image in the range 1000 to 123456, it would give you those numbers back, not numbers in the 0-255 range.

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!