how to get SNR for 2 images

5 Ansichten (letzte 30 Tage)
Rawan hamdi
Rawan hamdi am 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

Antworten (1)

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

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Denoising and Compression finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by