Code covered by the BSD License  

Highlights from
calcpsnr

from calcpsnr by Gholamreza (Shahab) Anbarjafari
A simple function to find PSNR between two images!

calcpsnr(f,F)
% This function PSNR = calcpsnr(f,F), will compute the PSNR of two given 
% images. The function accepts as inputs, the 2 images where the first 
% image is the source image f(x,y) containing N by M pixels and the second 
% is the reconstructed image F(x,y). [note f and F must be between 0 and 255]
% The function also calculates the Error image by taking the difference
% between the reconstructed and original pixels.
% The typical construction of the error image multiples the difference by a
% constant to increase the visible difference and translates the entire
% image to a gray level.
% Formulas for these computations have been gotten from
% http://bmrc.berkeley.edu/courseware/cs294/fall97/assignment/psnr.html on
% July 26th 2007. The code was put together by me Toritseju Okpotse same
% day.
%The code has been modified on 11-11-2008 by me, Gholamreza Anbarjafari
%(Shahab).



function calcpsnr(f,F)
  
   [N M] = size(F);
  
   MSE = sqrt((sum(sum((double(f)-double(F)).^2)))/(N*M));
   PSNR = 20*log10(255/MSE);
   sprintf('The PSNR of given image is: %5.2fdB.',PSNR)
   
   

Contact us at files@mathworks.com