Quick simple question, mean filter?
조회 수: 1 (최근 30일)
이전 댓글 표시
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
채택된 답변
Image Analyst
2012년 7월 14일
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
Ryan
2012년 7월 14일
signalImage1 = double(noiseFreeImage);
noiseOnlyImage = double(noisyImage) - signalImage1;
SNR = mean2(signalImage1 ./ noiseOnlyImage );
% SNR = Signal to Noise Ratio
Image Analyst
2012년 7월 14일
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.
추가 답변 (0개)
참고 항목
제품
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!