calculating PSNR

14 views (last 30 days)
kash
kash on 21 Mar 2012
I have two images original image and compressed image,please tell how to calculate mean square error and psnr

Accepted Answer

Image Analyst
Image Analyst on 21 Mar 2012
Did you see the formula at http://en.wikipedia.org/wiki/PSNR? Of course you can just subtract the images and use the sum() function instead of the loops, which I know you know how to do. Just make sure you use .^2 instead of ^2 because you want an element-by-element squaring. Give it a try - it's just one line of code.
  3 Comments
Image Analyst
Image Analyst on 21 Mar 2012
Looks like it should be as long as origImg & compImg are floating point images and not uint8 or uint16. I was thinking of something like
MSE = mean2((single(image1) - single(image2)).^2);
kash
kash on 22 Mar 2012
Thanks MR.Analyst

Sign in to comment.

More Answers (1)

Wayne King
Wayne King on 21 Mar 2012
The Wavelet Toolbox has a function for this, measerr()
>>doc measerr
  2 Comments
kash
kash on 21 Mar 2012
Wayne i am getting page not found,am using 2010a
Wayne King
Wayne King on 21 Mar 2012
introduced in R2010b

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!