如果你有一个信号 x[n],它被 N 插值,然后被 M 抽取,你如何确保重采样过程中 x[n] 的失真最小?
为了在上采样和下采样后不丢失信息的条件
对此的答案是设计一个滤波器,它可以完美地通过原始光谱并完全拒绝抽取和插值过程创建的图像。这样的滤波器是无法实现的,因此结果成为我们可以容忍多少失真的设计约束(就像在所有滤波器设计中一样)。对此有帮助的是了解在这种情况下创建图像的机制,所以我在下面包含了一些图形,我将进一步解释这个过程。
通过插入零进行插值
我们通过在时域中的每个样本之间插入零来以最小失真进行上采样,然后在此之后使用插值滤波器。插值滤波器通过原始光谱并拒绝零插入创建的图像。
下图显示了通过上采样 4 倍的光谱图像复制(在每个样本之间插入 3 个零)。请注意,我们如何从“第一奈奎斯特区”中的所需频谱开始,这是从直流到真实信号(这同样适用于复杂信号的频谱,只是在这种情况下,频谱从到是唯一的,因此我们将包括该信号或等效地包括从 DC 到的信号。)在零插入之后,我们结束在采样率提高 4 倍的情况下,在新的第一奈奎斯特区以更高的采样率增加 4 个额外的光谱图像。(所以在你的情况下,你会有 N 个这样的图像)。
理想的插值滤波器会将零点“增长”到完美插值所需的实际值。如下图所示,这样的滤波器可以是多频带滤波器(Matlab firls 和 firpm 很容易做到这一点),但也可以使用低通滤波器。实际失真取决于我们允许通过多少图像频率以及我们允许多少通带失真(损耗或纹波),这一切都成为对滤波器复杂性、可容忍延迟等的设计约束......
通过丢弃样本进行抽取
对于抽取,我们通过简单地删除样本来降低采样率(因此,如果我们按 M 抽取,我们只使用每个第 M 个样本)。抽取过程中图像的光谱挑战非常相似。在插值过程中,我们担心清理,因为我们在进行零插入之后进行过滤;对于抽取,我们关注在由于混叠而丢弃样本之前的过滤;如果我们在移除样本之前不进行过滤,信号能量将折叠到我们感兴趣的频谱中。下图显示了以 4 抽取的示例。这与 A/D 转换中的混叠问题相同(实际上 A/D 转换实际上是从无限采样率抽取!所以这里我们正在做一个数字到数字转换):
与插值滤波器一样,理想的抽取滤波器将无失真地通过我们感兴趣的频谱,同时完全消除可能存在于可以折叠的较高频谱位置中的任何信号。请注意,如果您通过设计知道这些频谱位置已被过滤(包括放大的本底噪声),则可能不需要滤波。
与插值滤波器设计一样,多频带滤波器方法将为相同数量的抽头提供更多抑制(更有效):
最后,合理的速率转换(抽取和插值)建议您可以先进行插值,以便可以在两个操作之间共享过滤。这是一个取决于两种操作的实际滤波设计要求的考虑因素,但一种低通滤波器设计可以满足这两种要求是可行的。在某些 M 和 N 的数值较大的情况下,进一步分解插值和抽取操作以简化过滤要求也可能更有意义。
在所有情况下,可以实现的一个重要限制是我们使用了多少可用的数字频谱。可用的多余频谱越多,滤波器设计就越简单,因为设计是由过渡带需要的紧密程度驱动的。





