how to get SNR for 2 images

5 visualizzazioni (ultimi 30 giorni)
Rawan hamdi
Rawan hamdi il 11 Apr 2013
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

Risposte (1)

Kye Taylor
Kye Taylor il 11 Apr 2013
Modificato: Kye Taylor il 11 Apr 2013
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 Commenti
Kye Taylor
Kye Taylor il 11 Apr 2013
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 il 11 Apr 2013
i'm sorry im new to matlab but how can i define this function?

Accedi per commentare.

Categorie

Scopri di più su Read, Write, and Modify Image in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by