改变采样率、窗口持续时间和零填充对 DTFT 和 DFT 的影响

信息处理 自由度 窗函数 文件
2022-02-16 11:35:16

T是窗口持续时间,N为 DFT 大小,Fs是采样率,和Fmax是最高 bin 的频率。在下图的上下文中:

  • 减半Fs(保持T常数和N 常数减半 N) 将删除右半部分的垃圾箱(将最大频率减半)
  • 减半T会改变 DTFT 的形状,将瓣数减半。如果没有零填充,这将减半N, 但Fmax将保持不变,因此每隔一个 bin 就会被删除。
  • 倍增N通过零填充 DFT 将保持 DTFT 和Fmax常数,但会使箱数增加一倍(即DTFT 的插值)。

我的理解合理吗?

编辑:不。减半时我忽略了混叠Fs

2个回答

该问题将通过包括单位得到改进。我假设T以秒为单位,并且Fs以赫兹为单位,而N是 DFT 中的 bin 数量。为了避免对其他人造成任何混淆,但也许更明显,“bins”将指的是频域中的样本,而“samples”将指的是时域中的样本。

将 Fs 减半(保持 T 和 N 不变)将删除右半部分的 bin(将最大频率减半)

几乎。假设T是以秒为单位的窗口的持续时间,那么我们可以将采样率减半并且只保持NT如果我们随后对新结果进行零填充,则为常数。请参阅底部对 OP 第三个问题的回复,详细说明零填充的效果,然后考虑零填充频谱,然后按如下方式对其进行重新采样。

在任何一种情况下(无论是否填充零),一般来说,通过将采样率减半,我们通过及时选择每个其他样本来及时重新采样到新的采样率一半。这与对模拟频谱进行采样没有什么不同,因为如果镜像频率位置存在频谱,我们会得到混叠。

这在下图中进行了描述,显示了 DFT 频谱中的固有周期性,如果我们可以将频率轴扩展到 0 到 N-1 个样本之外。这确实是采样信号的频谱出现的方式,特别是集中在F=0以采样率的每个倍数重复相同Fs(因此我们只需要显示从Fs/2+Fs/2或者在 DFT 中0to(小于一个 bin)Fs. 因此,当我们重新采样数字信号时,我们不会在开始时更改频谱,而是添加以频域中每个新采样频率位置为中心的相同频谱的图像。

有人可能会想说,按照 OP 的发展方向,当我们将采样率减半时,我们会移除一半的频谱——不是 OP 所建议的 DFT 的上半部分,但正如我们在下面看到的那样中间部分可以被描述为已被删除。这并不完全正确,只有在该中间部分之前没有光谱内容时才会出现。当然,在光谱正下方的图中,光谱是干净的,因此可以应用“去除”描述,但只需扩大下面的光谱形状,我们就会看到它们在重新采样后如何很快相互碰撞(混叠!),所以一般来说它不应该被这样想。

半抽样

总之,及时移除所有其他样本(下采样),会使采样频率下降一半,并携带所有以每倍数为中心的原始频谱Fs现在以新采样率的每个倍数为中心。DFT 中的 N 个样本现在占据了来自0Fs.

别名!

将 T 减半会改变 DTFT 的形状,使波瓣数减半。如果没有零填充,这将使 N 减半,但 Fmax 将保持不变,因此每隔一个 bin 将被删除。

这意味着Fs必须以样本/秒为单位。(通常在 DFT 中,我们使用周期/样本单位,因此想澄清这一点)。在这种情况下,是的,没有任何零填充N样品结束T, 所以FsN样品超过T秒。类似于上面的频域关系,只要循环时间窗口在去除样本之前和之后是等价的,那么实际上唯一的频率变化就是每隔一个 bin 就会被去除。否则,要为所有剩余的 bin 保持相同的精确频谱值,我们将需要等效于时域混叠,否则我们必须具有混叠是频率。看到这一点的最简单方法是考虑正弦波的 2 个周期——我们可以将其减半,并且每隔一个 bin 仍然具有完全相同的频谱。现在考虑正弦波的一个周期:我们不能将其减半并期望看到相同的频谱——它将被混叠,或者我们需要修改后的混叠时域。

通过零填充将 N 加倍 DFT 将使 DTFT 和 Fmax 保持不变,但会使 bin 数量加倍

零填充将使 DFT 的原始样本保持相同的值(但移动到新的 bin 位置,因为总体上有更多样本)。这将专门在所有原始样本之间插入新样本。这些样本将在 DTFT 上。添加的零越多,来自 DTFT 的样本就越多,它们出现在原始样本之间,这些样本也在 DTFT 上,因此它们不会改变。DTFT 是当 N 变为±. 任何 DFT 都是 DTFT 上的样本,零填充会显示更多这些样本。

减半Fs(保持TN常数)将删除右半部分的垃圾箱(将最大频率减半)

否。箱数保持不变,因为您没有更改N. 将改变的是分辨率。每个 bin 将代表Fs/(2N)代替Fs/N. 您的 DFT 不会代表来自Fs/2Fs这就是为什么您误解为“删除右半边的垃圾箱”。 在此处输入图像描述

减半T会改变 DTFT 的形状,将瓣数减半。如果没有零填充,这将减半N, 但Fmax将保持不变,因此每隔一个 bin 就会被删除

我假设当你减半T, 你也将 DFT 减少到N/2. 如果您在不使用零填充的情况下减小 FFT 大小,是的,您将每隔一个 bin 丢弃一次。因为现在分辨率增加到Fs/(N/2). 对于一个周期信号,与N/2周期的倍数,您仍然会看到 FFT 的 2 个峰值,因为波瓣宽度也增加了一倍,并且零交叉恰好出现在Fs/(N/2)=2Fs/N. 在此处输入图像描述

通过零填充将 N 加倍 DFT 将使 DTFT 和 Fmax 保持不变,但会使 bin 数量加倍

是的,零填充会增加 DFT 的分辨率。Fs/(2N)是与之前相比的分辨率Fs/N. 但请记住,通过零填充,您不会添加有关信号的任何新信息。它只是揭示了您已经拥有的更多 DFT。 在此处输入图像描述