how to get SNR for 2 images
5 views (last 30 days)
Show older comments
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
0 Comments
Answers (1)
Kye Taylor
on 11 Apr 2013
Edited: Kye Taylor
on 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 Comments
Kye Taylor
on 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
See Also
Categories
Find more on Denoising and Compression in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!