Fir滤波器的实现方式
FIR滤波器的群延时是(N-1)/2,实现方式可以有两种方式,一种是卷积形式,一种是过滤波器形式。
需要注意的是:
进入滤波器的过程,肯定是数据点1个1个的滑动进入滤波器,
滤波器的有效输出数据至少滤波器种有一半的输入数据。
a=ones(1,9)
a =
1 1 1 1 1 1 1 1 1
b=[1,1,1,1]
b =
1 1 1 1
c1=conv(a,b)
c1 =
1 2 3 4 4 4 4 4 4 3 2 1
c2=conv(a,b,‘same’)//取主要区间
c2 =
3 4 4 4 4 4 4 3 2
注意c1是全部输出,但是滤波器的有效数据是c2
另外一种方式是filter
需要注意:先要将输入数据补0,补多少,即滤波器长度的一半
a1=[a,0,0]
a1 =
1 1 1 1 1 1 1 1 1 0 0
c3=filter(b,1,a1)
c3 =
1 2 3 4 4 4 4 4 4 3 2
c3的头部去除滤波器长度的一半(群延时),最后得到
c4= 3 4 4 4 4 4 4 3 2
c4的长度和输入a的长度是一致的,