1.算法介绍
FIR 滤波算法的基本思路是设计一个窗函数,使得当前的输出y通过最近N个输入数据(x(0),x(-1),x(-2)...x(-n))计算得出,不同时刻占的权重都不一样,即FIR 滤波器的输入输出关系为:
其中,y(0)为当前时刻的输出,x(-n)为过去n时刻的输入,hz(n)为过去n时刻的权重。
也就是说,当前的输出不仅与当前的输入有关,还与历史输入有关,具体与多少历史输入有关,取决于窗n设置的大小,一般来说,窗设置越大,滤波效果越好,但同时也导致计算量增大,所以需要在运算量和滤波效果之间找到平衡点。
从FIR 滤波器的的输入输出关系可以看出,要实现FIR滤波器,其中最核心的一步就是设计hz(n)的值,即滤波参数。
2.算法参数设计
FIR 滤波器的参数设计,主要借助于 Matlab实现,这里我们以一个例子来讲述,输入为ECG心电图,采样率为250Hz,任务是将ECG数字信号的大于40Hz以上的频率滤掉,要求尽可能把大于40Hz的频率去掉、小于40Hz的信号幅度衰减做到最小(幅度响应可量化,这里为了简单不进行量化)&#x