我想将输入信号上采样倍。我看到在少数情况下使用零填充后跟低通滤波器方法。但我仍然需要一些帮助。
- 假设我有输入样本并且我的插值因子是,那么如果我使用上述方法进行插值,我会在输出端
- 另外如何将低通滤波器的通带增益增加到?
我想将输入信号上采样倍。我看到在少数情况下使用零填充后跟低通滤波器方法。但我仍然需要一些帮助。
当您通过在每个样本之间插入一个零来上采样两倍时,您会创建一个以新奈奎斯特频率为中心的信号别名(新采样率的一半)。您可以通过低通滤波消除别名。
您需要的滤波器规格取决于您的信号。假设您的信号具有单边带宽(我说的单边是指我们只讨论正频率,而不是负频率)。 必须小于旧采样率的奈奎斯特频率,以避免混叠。
上采样后,别名就会出现。
希望这些图片将有助于直观地掌握如何表征所需的低通滤波器。通带必须从 0 Hz 到 Hz 平坦,并且必须在。截止区域所需的衰减量取决于您的应用。通常 50 dB 就足够了。
这里看起来有点混乱。零填充(在 FFT 之前)将在频域中提供插值。时域内插(通常)通过在样本之间插入零然后应用合适的低通滤波器来完成。
这里的“合适”很大程度上取决于您的应用程序的要求,没有“一刀切”的过滤器。要考虑的事情是通带纹波、相位失真、残余混叠、延迟、阻带衰减、因果关系、瞬态行为等。斯坦福大学的 Julius Smith 就该主题教授了一门很好的课程https://ccrma.stanford.edu/~jos/Interpolation /
如果您必须对 2X 插值进行补零,一种解决方案是在频域中在 Fs/2 附近补零,然后对这个 2X 更长的向量进行 IFFT 以产生 2X 更长的时域数据。
此外,在第一次 FFT 之前的时域中额外的零填充可能有助于减少循环卷积效应(假设这比在数据边缘逐渐减小填充级别更不令人讨厌)。