Menu

#6 MS_SSIM* algorithm giving incorrect results

open-accepted
tdistler
Algorithm (4)
7
2012-05-16
2011-08-02
tdistler
No

Email from Coung:

\"Hi Tom,

Recently I started to use your package to compute MS-SSIM (multi-scale SSIM). Given the same two images (original and distorted), running on your code gives me a different score from using the Matlab version (there are two Matlab packages implement MS-SSIM, one from Zhou Wang: https://ece.uwaterloo.ca/~z70wang/research/iwssim/msssim.zip, and one from MetriX MuX: http://foulard.ece.cornell.edu/gaubatz/metrix_mux/\). Results from the two Matlab packages are just slightly different, but far different from your code.

I\'m looking at your code now but just thinking may be you want to check. For your reference, I attach the 2 images I used in my test. Using the two Matlab packages (convert to grayscale using the rgb2gray function in Matlab) gave the score of 0.9616 and 0.9646. Using your code with OpenCV, (I convert to grayscale using cvCvtColor function) gave me a score of 0.7675. Trying to mimic the rgb2gray function of Matlab in C, I got a score of 0.7013. Using the two grayscale images converted from Matlab in your code gave me a score of 0.7906.

Well I\'m not good at C but I\'m trying to learn. Anyway if you have time to check, I would greatly appreciate it.

Thanks,
Cuong \"

Discussion

  • tdistler

    tdistler - 2012-05-16

    Looking at using GMP or other numeric library instead of C 'double'. There are outstanding questions about the stability of MS_SSIM*, but I believe floating-point error is making the problem worse.

     
  • tdistler

    tdistler - 2012-05-16
    • status: open --> open-accepted
     

Log in to post a comment.