Quick simple question, mean filter?
1 visualizzazione (ultimi 30 giorni)
Mostra commenti meno recenti
Hello Dear Experts,
Given a convolution mask J = ones(N)/N^2 and image I (with Gaussian noise miu = 0, sigma = alpha) of size MxM M>>N. I am filtering I using the J mask.
How the noise is reduced then? NewNoise = OldNoise/alpha, what is alpha?
For example, I is size NxN with noise, J = ones(5)/25.
Thanks a lot in advance!
0 Commenti
Risposta accettata
Image Analyst
il 14 Lug 2012
Don't use bad names like I and J. Pick descriptive names that aren't easily confused with 1 (one) or the imaginary variable. So, taking that advice:
windowWidth = 5;
kernel = ones(windowWidth) / windowWidth ^2;
outputImage = conv2(inputImage, kernel);
3 Commenti
Ryan
il 14 Lug 2012
signalImage1 = double(noiseFreeImage);
noiseOnlyImage = double(noisyImage) - signalImage1;
SNR = mean2(signalImage1 ./ noiseOnlyImage );
% SNR = Signal to Noise Ratio
Image Analyst
il 14 Lug 2012
I'm not sure that you can get the sigma of the additive Gaussian noise unless you have the original noise free image, or at least make some assumptions on it. There are a variety of noise reduction algorithms. I suppose you could apply a good one (of which an averaging filter is not) and then subtract the noise-reduced version from the noisy version to get an estimate of the noise only. Then take the histogram (which should look like a Gaussian if it's additive Gaussian noise) to get an estimate of the sigma.
Più risposte (0)
Vedere anche
Prodotti
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!