王恰恰
2009-05-28, 09:30
function [PSNR,MSE]=evalue(Im,RecIm)
A=0;
[m,n]=size(Im);
for i=1:m
for j=1:n
A=A+(Im(i,j)-RecIm(i,j))^2;
end
end
a=max(Im);
PSNR=10*log10(m*n*(a^2)/A);
MSE=A/(m*n);
这个M文件的作用是计算原始图像与输出图像的峰值信噪比和均方差,Im是原始图像矩阵,RecIm是处理后重构的图像矩阵,请问这样计算峰值性噪比和均方差对不对?我运行了一下提示有错误,错误如下:
??? Error using ==> mpower
Integer data types are not fully supported for this operation.
Both operands must be scalar.
Error in ==> evalue at 10
PSNR=10*log10(m*n*(a^2)/A);
我刚刚开始运用MATLAB 不是很熟练 请高手帮忙解答 谢谢!
A=0;
[m,n]=size(Im);
for i=1:m
for j=1:n
A=A+(Im(i,j)-RecIm(i,j))^2;
end
end
a=max(Im);
PSNR=10*log10(m*n*(a^2)/A);
MSE=A/(m*n);
这个M文件的作用是计算原始图像与输出图像的峰值信噪比和均方差,Im是原始图像矩阵,RecIm是处理后重构的图像矩阵,请问这样计算峰值性噪比和均方差对不对?我运行了一下提示有错误,错误如下:
??? Error using ==> mpower
Integer data types are not fully supported for this operation.
Both operands must be scalar.
Error in ==> evalue at 10
PSNR=10*log10(m*n*(a^2)/A);
我刚刚开始运用MATLAB 不是很熟练 请高手帮忙解答 谢谢!