如何应用来自频域的理想低通滤波器?

How can the ideal low pass filter from the frequency domain can be applied?

我在一张图像中添加了高斯噪声。我需要使用理想的低通滤波器来消除噪声,但我真的看不到官方 Matlab 文档中的任何示例。有示例但没有图像,我无法真正理解此过滤器背后的概念。那么有人可以解释一下如何使用理想的低通滤波器来消除噪声吗?

image = imread('eight.tif');
imshow(image );

noisyImage = imnoise(image,'gaussian',0.02);
imshow(noisyImage);

如果您知道噪声的标准偏差,最好使用具有该特定标准偏差的高斯滤波器。虽然在大多数情况下,最好使用双边滤波器 (imbilatfilt),这是一个具有一些其他特征的高斯滤波器 保留边缘

如果不知道自己的噪声是什么,最好用维纳滤波器([J,noise_out] = wiener2(I,[m n]))。该滤波器观察图像的频率行为并寻找在统计上与噪声一致的特殊模式。换句话说,它会估计图像的噪声并为您过滤掉特定的噪声。 noise_out 是加性噪声功率的估计值,m,n 是滤波器内核的大小(我建议是 5*5 或 7*7)。

当然还有一些其他的过滤方法,包括手工的,但是那些需要更多的努力和大量的尝试和错误。