【问题标题】:Digital Filter Design Matlab sptool/fdatool数字滤波器设计 Matlab sptool/fdatool
【发布时间】:2010-12-24 05:10:32
【问题描述】:

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

示例:

为了我的信号A

一种可能的过滤器可能具有以下属性:

  1. 设计方法:FIR, Window
  2. 窗口类型:Gaussian
  3. 订购:10
  4. 朋友:100 5:Fc:10

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

  1. 设计方法:FIR, Window
  2. 窗口类型:Hamming
  3. 订购:7
  4. Fs:64 5:Fc:28

有无数种可能的过滤器。

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

【问题讨论】:

  • 显然,在设计滤波器时,您希望通过去除噪声来改善信号,而不会使信号过度失真。 “更好”只是得到的信号消除了足够的噪声并将信号失真保持在最低限度。正如您现在可能看到的,此过程使“更好”信号的定义有待解释。
  • 滤波器参数取决于您的噪声和信号模型。知道信号是什么样子以及噪声应该是什么样子应该会更容易选择滤波器类型和参数。

标签: matlab signal-processing digital-filter


【解决方案1】:

您必须提供有关所需信号类型的一些详细信息。

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

一般来说,我会将您转到有关过滤器的 wiki 页面:Picking filters

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

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

信号 -> FFT -> 乘以所需的频率响应 -> IFFT。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-03-08
    • 1970-01-01
    • 1970-01-01
    • 2022-01-07
    • 2018-08-29
    • 2014-07-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多