1

我刚刚进入信号处理领域,需要做一些 DFT/FFT 工作。

如果我采用两个频率为 2Hz 和 5Hz 的信号:x(t)=sin(2*2pi*t)+sin(5*2pi*t)。我以 100Hz 采样 5 秒(所以我的 DFT 大小为 500)。

因为我的输入是真实值,所以我得到了一个对称的 DFT,因此可以丢弃第二半并通过执行 sqrt(re^2+c^2) 将 DFT 值转换为幅度。

我的 bin 宽度是 100/500 = 0.2Hz,所以我得到:在此处输入图像描述

正如预期的那样,峰值在 2Hz 和 5Hz。

我的问题是:为什么幅度不同?

在相关说明中,为什么在 2hz 和 5Hz 处没有两个完美的尖峰,即图表在 1.5 和 2.5 等处具有非零值。这是频谱泄漏吗?

4

1 回答 1

2

我希望您的 500 个数据点被处理为 512 点 FFT(大多数 FFT 库不支持任意大小的输入,因此通常它们将零填充到下一个最高的 2 次幂)。如果是这种情况,那么您将看到频谱泄漏的影响。在 FFT 之前应用窗口函数应该可以解决这个问题。请注意,您仍然会在峰的两侧看到“裙子”——这是由于有限采样窗口引入的不确定性。

于 2012-12-13T14:43:48.393 回答