how to get SNR for 2 images

5 ビュー (過去 30 日間)
Rawan hamdi
Rawan hamdi 2013 年 4 月 11 日
hi,
i have 2 images and i would like to get SNR between these 2 images. i have an original clean image which is X0, i added some noise to it and the noisy image is Xn

回答 (1 件)

Kye Taylor
Kye Taylor 2013 年 4 月 11 日
編集済み: Kye Taylor 2013 年 4 月 11 日
You'll get different answers, depending on who you're talking to.
I would suggest using
snr = 20*log(norm(X0,'fro')/norm(X0-Xn,'fro'))
  3 件のコメント
Kye Taylor
Kye Taylor 2013 年 4 月 11 日
Check it....
Define a function handle to compute the SNR of images, relative to the clean image X0:
g = @(X)20*log(norm(X0,'fro')/norm(X0-X,'fro'))
Then, you can compute the SNRs of your two images like
snrOfXn = g(Xn);
snrOfXX = g(XX);
How rad is that?
The higher the SNR, the better the denoising process. In other words, if XX is denoised version of Xn, you should see snrOfXn < snrOfXX
Rawan hamdi
Rawan hamdi 2013 年 4 月 11 日
i'm sorry im new to matlab but how can i define this function?

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeDenoising and Compression についてさらに検索

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by