%读取原始图像和恢复后图像
origImg = imread('ZZ13.JPG');
distImg = imread('ZZ14.JPG');
%如果输入为RGB图像,转换为灰度图像
noOfDim = ndims(origImg);
if(noOfDim == 3)
origImg = rgb2gray(origImg);
end
noOfDim = ndims(distImg);
if(noOfDim == 3)
distImg = rgb2gray(distImg);
end
%确定图像尺寸
origSiz = size(origImg);
distSiz = size(distImg);
sizErr = isequal(origSiz, distSiz);
if(sizErr == 0)
disp('Error: Original Image & Distorted Image should be of same dimensions');
return;
end
%Mean Square Error 求出均方误差
MSE = MeanSquareError(origImg, distImg);
disp('Mean Square Error = ');
disp(MSE);
%Peak Signal to Noise Ratio 求出峰值信噪比
PSNR = PeakSignaltoNoiseRatio(origImg, distImg);
disp('Peak Signal to Noise Ratio = ');
disp(PSNR);
%读出原始图像和恢复后图像
origImg = imread('ZZ13.JPG');
distImg = imread('ZZ15.JPG');
%如果输入为RGB图像,转换为灰度图像
noOfDim = ndims(origImg);
if(noOfDim == 3)
origImg = rgb2gray(origImg);
end
noOfDim = ndims(distImg);
if(noOfDim == 3)
distImg = rgb2gray(distImg);
end
%确定图像尺寸
origSiz = size(origImg);
distSiz = size(distImg);
sizErr = isequal(origSiz, distSiz);
if(sizErr == 0)
disp('Error: Original Image & Distorted Image should be of same dimensions');
return;
end
%Mean Square Error 求出均方误差
MSE = MeanSquareError(origImg, distImg);
disp('Mean Square Error = ');
disp(MSE);
%Peak Signal to Noise Ratio 求出峰值信噪比
PSNR = PeakSignaltoNoiseRatio(origImg, distImg);
disp('Peak Signal to Noise Ratio = ');
disp(PSNR);
toc;