關於matlab裡的PSNR問題 20

2025-03-20 07:00:22 字數 2694 閱讀 4179

關於matlab裡的psnr問題

1樓:網友

請問你相應的資料已經有了嗎?如果資料已經有了很好畫啊。

matlab專業知識:matlab中如何呼叫函式psnr

2樓:遺忘的海豚灣

%影象格式是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('');

求助matlab psnr 簡單問題

3樓:吱家出品

我覺得你可以先試著算mse,再用mse轉成psnr 檢視原帖》

matlab程式求psnr值

4樓:高手知道

我看主要是因為你的兩幅**選得不對。

必須是選擇24位顏色的**,就是rgb三個分量都有的那種。

如果本身不是的話就用畫圖工具另存為24位的bmp影象吧。

5樓:後來白狐

是不是**不是一樣大小的啊 比如都得是 512*512

跪求高手指教,怎麼呼叫psnr函式

6樓:匿名使用者

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('');

如何用matlab 編寫2-grey scale 影象的psnr

7樓:文遠長歌

假設2影象 i1, i2 大小為mxn畫素。

1. 先求 mse (mean squared error)mse = 1/(m*n) *sum(sum((i1-i2).^2));

2. psnr = 10*log10(maxi^2 / mse);

這裡maxi是指影象中畫素灰度最大的可能取值。比如對於8 bit的影象,maxi = 2^8-1 = 255.

matlab數字影象處理中求mse與psnr snr語句,請!

8樓:網友

以上。襪悶悉。

做過罩帶的老狼。

matlab程式執行時出現個錯誤undefined function or method 'psnr' for input arguments of type 'uint8'.

9樓:網友

這裡有psnr的程式,供參考。

function psnr=psnr(img1,img0)%計算影象img1對img0的psnr值。

輸入引數。 img1:給定影象 img1

img0:參考影象。

影象大小必須一樣。

輸出引數。 psnr:psnr

n3=size(img1);

tmp=minus(uint8(img1),uint8(img0));

tmp=tmp.*tmp;

mse=sum(sum(tmp))/n3(1)*n3(2));

if(mse~=0)

psnr=10*log10(65025/mse);

elsepsnr=10000; 標記為無窮大end

Matlab數字影象處理關於明暗調整的問題

直方圖均衡化試試,matlab中histeq函式可以實現一些效果。i imread tire.tif j histeq i imshow i figure,imshow j 這個其實比較簡單的。的亮度是根據灰度而定的。首先是讀取 然後儲存r g b值。將 轉換正灰度圖。調節灰度圖色數 根據加減值就可...

關於matlab的一些作業,matlab大作業

function main 一 要求寫出視窗執行過程及結果 1 利用matlab求函式f x x2 ex lnx的導數 不定積分和1到10區間的定積分及趨於1的極限。clc clear all close all syms x fx x 2 exp x log x dfx diff fx,x ifx...

matlab求 8的立方根,Matlab裡用的是什麼語言?

syms x x solve x 3 8 x 23 1 2 i 1 1 3 1 2 i matlab裡用的是什麼語言?我來說一下 matlab的語言正如三樓所說,是十分寬鬆的.matlab本身是由c語言編寫的,它主要關注的計算,運用,而不是程式設計,所以用matlab寫程式是十分快意的.只要學過其它...