如果我有一个简单的低通滤波器,例如Matlab - 将低通滤波器应用于矢量?
filt = fir1(20, 0.2);
和具有数字列表(信号)的矩阵,例如, [0.1,-0.2,0.3,-0.4]等,我如何实际应用我创建的滤波器到这个信号?
看起来像一个简单的问题,但我一直坚持了几个小时。我需要从滤波器系数手动计算它吗?
如果我有一个简单的低通滤波器,例如Matlab - 将低通滤波器应用于矢量?
filt = fir1(20, 0.2);
和具有数字列表(信号)的矩阵,例如, [0.1,-0.2,0.3,-0.4]等,我如何实际应用我创建的滤波器到这个信号?
看起来像一个简单的问题,但我一直坚持了几个小时。我需要从滤波器系数手动计算它吗?
在这里你去:
filter(filt, 1, mysignal);
会做的伎俩。由于这是一个FIR滤波器,将A参数(第二个参数)被设定为1
filter
函数是你所需要的。
我相信help filter
或doc filter
会帮助你。
在这里,你不能给一个值,该值比磨碎器1的FIR1函数的第一个参数。它应该在0和1之间。假设截止频率为Fc,采样频率为Fs,那么如果我们将Wn作为截止频率的第一个参数作为标准化值。这是Wn应该如何计算的。
Wn = (2/Fs)*Fc
那么你可以申请过滤功能象下面这样:
filt = fir1(Wn , 0.2);
filter(filt, 1, mysignal);