Matlab - 如何对一个向量应用低通滤波器?

4
如果我有一个简单的低通滤波器,例如:
filt = fir1(20, 0.2);

如果我有一个数字列表的矩阵(信号),例如[0.1,-0.2,0.3,-0.4]等等,并且我已经创建了一个过滤器,那么我该如何将这个过滤器应用到这个信号上?

这似乎是一个简单的问题,但我已经卡了几个小时了。我需要从过滤器系数手动计算吗?

3个回答

5

给你:

filter(filt, 1, mysignal);

这个操作可以解决问题。由于这是一个FIR滤波器,因此A参数(第二个参数)设置为1。


1

filter 函数是你所需要的。

我相信 help filter 或者 doc filter 可以帮助你入门。


0

fir1函数的第一个参数中,您不能给出大于1的值。它应该在0和1之间。假设截止频率为Fc,采样频率为Fs,则如果我们将Wn作为第一个参数,即将截止频率作为归一化值。这就是如何计算Wn的方法。

     Wn = (2/Fs)*Fc

然后你可以像下面这样应用过滤函数:

      filt = fir1(Wn , 0.2);
      filter(filt, 1, mysignal);

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接