零填充的数学证明?

信息处理 fft 频谱 采样 自由度 插值
2022-01-29 04:57:02

这个问题询问零填充有什么意义。接受的答案当然非常有见地,但我不明白其中的很大一部分:

零填充允许使用更长的 FFT,这将产生更长的 FFT 结果向量。

较长的 FFT 结果具有更多频率间隔更紧密的频率仓。但它们本质上将提供与原始数据的较短非零填充 FFT 的高质量 Sinc 插值相同的结果。

在没有进一步插值的情况下绘制时,这可能会导致看起来更平滑的频谱。

尽管这种插值不会帮助解决相邻或附近频率的分辨率或分辨率,但它可能更容易在视觉上解决单个隔离频率的峰值,该频率在频谱中没有任何重要的相邻信号或噪声. 从统计上看,更高密度的 FFT 结果 bin 可能会使峰值幅度 bin 更接近随机隔离输入频率正弦曲线的频率,并且无需进一步插值(抛物线等)。

此处“解决”和“分辨率”的确切含义是什么,以及从数学上讲,零填充显然不会增加分辨率。双重地,从数学上讲,零填充意味着插值有多明显?

2个回答

分辨率(在频谱分析的背景下)是区分频谱中两个或更多个紧密间隔的正弦分量的能力。如果您无法解决它们,这意味着您最多只能看到一个,而不是两个或更多。分辨率由窗口长度决定,即由时域样本的数量(给定的采样率)决定。加窗会抹掉或加宽频谱中的任何窄带分量。请记住,加窗,即时域中的乘法,对应于频域中的卷积,并且这种与标准窗口的频谱的卷积是频域中的一种平均操作,因此展宽了任何(频域)脉冲。

只有在分析窗口中添加更多数据点(即更多信息)才能提高分辨率。零填充显然不会添加任何信息。零填充的作用是增加窗口信号的离散时间傅里叶变换 (DTFT) 的采样密度。对于长度为的信号,DTFT 由下式给出N

(1)X~(ω)=n=0N1x[n]ejnω

离散傅里叶变换是

(2)X[k]=n=0N1x[n]ej2πnk/N

比较,我们看到 DFT 只是 DTFT 的采样版本:(1)(2)

(3)X[k]=X~(2πkN)

获取的等距样本的数量X~(ω)

在这个答案中给出了零填充对应于频域插值这一事实的详细分析

回复:你问题的第一部分:

通常使用的术语“解决”有多种含义。使用的那个可能取决于上下文。

在光学中,术语分辨率通常用于表示可以确定为实际分离的项目的最小间距,例如 2 条图像线或 2 个光谱峰,它们之间的幅度下降至少 3 dB(例如两个山峰,而不仅仅是一个肥大的驼峰)。对于频谱,该分辨率不能通过 FFT 补零来提高。插值不会神奇地出现幅度峰值之间的真正下降。(可以通过过度拟合使拐点出现在插值曲线中,但这些拐点通常与实际信号内容无关。)

假设信号中实际存在多个频率接近的正弦曲线,获得分离下降需要更多关于信号的信息,例如更长的采样间隔。一个样本越长,频率上接近的两个正弦曲线越有可能与不同的 FFT 基向量组正交或接近正交,从而显示在单独的 FFT 结果 bin 集合中,而不是混合在一起在相同的结果箱中。

但人们经常使用术语“解析”来表示单个频谱频率峰值位置的测量精度(例如,该固定音高的第 N 次谐波的频率是多少?)。如果频谱峰值足够高于周围的本底噪声,则可以通过对数据进行零填充和使用更长的 FFT 或通过在FFT 结果点以确定插值曲线中这些点之间是否存在幅度峰值。(对于周期性 Sinc 插值,请参阅 Matt L. 的演示,它们在此处是等效的:https ://dsp.stackexchange.com/a/24426/4298 ,其他形式的插值通常可以提供对此结果的近似值。)

分辨率也常用于表示数据图形或绘图中使用的点的密度,同样可以通过使用更长的零填充 FFT 或许多不同的常用数值插值方法来增加分辨率。