當前位置:編程學習大全網 - 編程軟體 - MATLAB專業知識:MATLAB中如何調用函數psnr

MATLAB專業知識:MATLAB中如何調用函數psnr

%%圖像格式是bmp,如果不是則要加RGB2GRAY函數轉化

x1=imread(original);

x2=imread(test);

x1=double(x1);

x2=double(x2);

[m,n]=size(x1);

[m2,n2]=size(x2);

if m2~=m||n2~=n;

error('圖像選擇錯誤');

end;

msevalue=0;

for i=1:m;

for j=1:n;

msevalue=msevalue+(x1(i,j)-x2(i,j))^2;

end;

end;

msevalue=msevalue/(m*n);

disp(['輸入數據的mse為:',num2str(msevalue)]);

psnrvalue=255^2/msevalue;

psnrvalue=10*log10(psnrvalue);

以上是求PSNR的程序,直接加在主函數後面就可以,或者新建壹個m文件來保存之後調用。頭兩句直接讀入原圖像和經過處理的圖像,把圖像數據矩陣存放在x1和x2中~~例如x1=imread('lena.bmp');

  • 上一篇:UG為什麽要用IPW, 開粗後我直接用輪廓加工不就行了?
  • 下一篇:廣東碧桂園職業學院學費2023
  • copyright 2024編程學習大全網