我目前正在使用 MATLAB 的 fdatool 进行滤波器设计。使用该工具,我可以轻松设计不同类型的过滤器。例如,让我们采用具有 10-40 Hz 通带、5-10 Hz 和 40-45 Hz 过渡带的带通 FIR 滤波器。通常,我使用选择“最小二乘法”来设计滤波器,如果我理解正确,它会使用上述方法根据滤波器规范找到最佳脉冲响应。为了实际过滤信号,我使用命令filtfilt进行零相位 FIR 过滤。
现在,实现滤波器的另一种方法是对我的信号进行 FFT,将 10-40 Hz 范围之外的频率设置为零,然后进行 IDFT。
这两种方法之间是否有任何实际/理论差异?频率响应(幅度和相位)是否相同?