对于低通滤波器的 FIR 滤波器设计,使用窗口方法是否有优于 Parks-McClellan(此处进一步缩写为 PMcC)或最小二乘算法的优势?假设以今天的计算能力,算法本身的复杂性不是一个因素。
这个问题不是将 PMcC 与最小二乘法进行比较,而是特别是是否有任何理由使用任何窗口 FIR 设计技术而不是那些算法,或者是否有用于过滤设计的窗口技术被这些算法淘汰并降级为教学目的?
下面是一个比较,我将汉明窗与我喜欢的最小二乘设计方法进行了比较,使用相同的抽头数。我在最小二乘法中加宽了通带以紧密匹配汉明窗的通带,在这种情况下,很明显最小二乘法的表现会更好(提供更多的阻带抑制)。我没有对所有窗口都这样做,这让我想到你是否可以超越 PMcC 和最小二乘法,或者是否有其他 FIR 低通滤波器应用程序更适合使用窗口方法?
更新:
我在这里添加自首次发布此问题以来的经验教训:
正如马特在下面指出和 RBJ 在评论中建议的那样,最小二乘解将在最小二乘意义上是最佳的(当它在其操作范围内收敛时),而具有凯撒窗口的解特别接近最小二乘所获得的解算法。(Kaiser 非常近似的 DPSS 窗口是另一个很好的选择)。
一个非常高的动态范围滤波器是另一个例子,其中最小二乘算法(至少对于 Python 和 Octave 中的实现,我无法获得低于 -180 dB 的阻带抑制;使用凯撒窗)。这使我提出了进一步的问题,详见此处。