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