如何比较许多带通滤波器(信号传播延迟)?

信息处理 过滤器设计 无限脉冲响应 有限脉冲响应 巴特沃思 群延迟
2022-02-19 15:37:56

假设我们有一个以 96 kHz 采样的音频信号,我们想要比较几个带通滤波器以找到具有最低矩形包络传播延迟的一个(见下图)。

感兴趣的波段是,其中,我们的目标是衰减,比如说[f030Hz,f0+30Hz]f0=1000Hz50dB1300Hz

是否有经验法则或现成的计算器(作为在线网站或 Python)来找到具有最低传播延迟的最佳滤波器,例如在由矩形包络调制的信号的情况下?

当然,我可以在 Python 中运行测试,使用许多过滤器和这些参数的许多变体:

  • FIR 滤波器(多少抽头?)
  • 巴特沃斯过滤器(哪个顺序,...)
  • 椭圆等。

但它有点长,而且有点随机。

示例:这里有一个 2 阶的 Butterworth,对于包络的传播,我们有大约 25 毫秒的延迟(x 轴确实以毫秒为单位)。

在此处输入图像描述

PS:这或多或少接近群延迟

2个回答

我刚刚尝试过 Analog Devices 的FilterWizard它通过给出滤波器的特性(通带、阻带、中心频率等)来帮助创建滤波器。

还有一个阶跃响应选项,它似乎接近我所说的“矩形包络传播延迟”。

在此处输入图像描述

对于线性相位FIR 滤波器,群延迟将与您定义为矩形包络延迟的延迟大致相同。

对于非线性相位 IIR 或 FIR 滤波器(如 Butterworth),包络延迟与其脉冲响应的主要时间常数相关。h[n]

实际上,您的情节中发生的是滤波器在瞬态衰减后达到其稳态响应。这将在几个时间常数之后发生。对于滤波器的群延迟与时间常数之间的关系,可以粗略地说,频率响应中的短跃迁带宽(具有大时间常数的夏普滤波器或窄带滤波器)会产生更剧烈的相位变化,这也会产生更大的群通带频率的延迟。

最小相位滤波器将产生最小延迟(在相同的频率响应幅度中)。最小相位滤波器的脉冲响应具有最快的衰减,并且比其他滤波器更积极地开始;即,它的能量集中在其脉冲响应样本的最开始。