数字滤波器设计Matlab sptool / fdatool

时间:2009-12-07 22:25:26

标签: matlab signal-processing digital-filter

使用GUI sptool在Matlab中选择数字滤波器的设计属性的最佳方法是什么?更具体地说,如果我有信号,我该如何确定哪些滤波器值将产生最佳解决方案。

示例:

我的信号A

一个可能的过滤器可能具有属性:

  1. 设计方法:FIR, Window
  2. 窗口类型:Gaussian
  3. 订单:10
  4. Fs:100 5:Fc:10
  5. 另一种可能的过滤器可能具有属性:

    1. 设计方法:FIR, Window
    2. 窗口类型:Hamming
    3. 订单:7
    4. Fs:64 5:Fc:28
    5. 有更多可能的过滤器。

      我认为其中一个解决方案比其他解决方案产生了“更好”的答案,而这正是我想要找到的解决方案。我知道我可以尝试一种蛮力方法,但我宁愿不这样做。请建议一种选择过滤器属性的方法,以提供这种“最佳”解决方案。

1 个答案:

答案 0 :(得分:2)

您将不得不提供有关您想要的信号类型的一些详细信息。

根据您使用的过滤器类型,总会有一些权衡取舍。一般而言,您必须至少向我们提供您感兴趣的频率,截止需要的锐度,计算要求和相位线性度。

一般情况下,我只会将您转向过滤器上的维基页面:Picking filters

从页面上可以看到,有一类过滤器(特别是Chebyshev,Butterworth,Bessel和Elliptic模型)试图根据您的需要提供某些特性。您还应该注意每种类型的过滤器的计算复杂性。

就个人而言,我很懒,而且通常不受计算限制,所以我只是这样做:

信号 - > FFT - >乘以期望的频率响应 - > IFFT。