Search code examples
pythonimagematlabsimilarityssim

Fine A Precentage(%) Similarity Index Between Two Images in Matlab/Python


I am trying to analyse two images: The origional and an approximated version generated using Fourier transforms.

Example:

Original: enter image description here

Approx:

enter image description here

How can i find a value that represents the similarity between these two images. I have tried using SSIM in Matlab, but that gives a value of 0.67, which i personally think is inaccurate.

ref = imread('download (1).png');

A = imread('download.png')


subplot(1,2,1); imshow(ref); title('Reference Image');
subplot(1,2,2); imshow(A);   title('Blurred Image');

Calculate the global SSIM value for the image and local SSIM values for each pixel. Return the global SSIM value and display the local SSIM value map.
[ssimval, ssimmap] = ssim(A,ref);

fprintf('The SSIM value is %0.4f.\n',ssimval);

figure, imshow(ssimmap,[]);
title(sprintf('ssim Index Map - Mean ssim Value is %0.4f',ssimval));

enter image description here

Like wise, a few online tools such as this one: https://deepai.org/machine-learning-model/image-similarity Gives a distance value of 6. (0 being the best)


Solution

  • IMATEST software has been updated, fixing this bug.