将Hann窗口函数应用于Octave/Matlab中的图像



如果我正确理解了这个概念,我们将窗口函数应用于信号的FFT以消除不需要的频率/噪声。

既然它们是 2D 矩阵,如何将其应用于图像?

img = imread('file.png');
w = hann(512);
y = fft2(img);

去何从?例如,如何使用 Hann 函数获取图像的 FFT?

我在想也许是 Pwelch 方法,但它不起作用,因为 y 不是向量

[spectra, freq] = pwelch(y, w, 0.5, 512, 512);

通常,汉宁窗口不应用于FFT的结果,而是应用于FFT之前的数据。对于二维情况,您需要先创建一个二维汉宁窗口。有关更多详细信息,请参阅matlab central上的此线程。

最新更新