课题名称:FIR滤波器窗函数设计FlR 滤波器窗函数设计引言:数字滤波器(DigitalFilter )是指输入、输出都是离散时间信号,通过一定运算 关系改变输入信号所含频率成分的相对比例或者滤除某些频率成分的器件。
在许 多数字信号处理系统中,如图像信号处理等,有限冲激响应( FIR )滤波器是最 常用的组件之一,它完成信号预调、频带选择和滤波等功能。
FIR 滤波器虽然在 截止频率的边沿陡峭性能上不及无限冲激响应 (IIR )滤波器,但是却具有严格的 线性相位特性,稳定性好,能设计成多通带(或多阻带)滤波器组,所以能够在 数字信号处理领域得到广泛的应用。
数字滤波器的分类1) 根据系统响应函数的时间特性分为两类1. FIR (Finite ImPUISe Response 数字滤波器网络My[n]b k x[n k]k0特点:不存在反馈支路,其单位冲激响应为有限长2. IIR ( Infinite ImPUISe Response 数字滤波器网络特点:存在反馈支路,即信号流图中存在环路,其单位冲激响应为无限长(2) FIR 数字滤波器IIR 数字滤波器的区别1. 从性能上来说,IlR 滤波器传递函数包括零点和极点两组可调因素,对极点的惟一限制是在单位圆内。
因此可用较低的阶数获得高的选择性,所用的存储 单元少,计算量小,效率高。
但是这个高效率是以相位的非线性为代价的。
选择性越好,则相位非线性越严重。
FIR 滤波器传递函数的极点固定在原点, 是不能动的,它只能靠改变零点位置来改变它的性能。
所以要达到高的选择 性,必须用较高的阶数;对于同样的滤波器设计指标, FIR 滤波器所要求的 阶数可能比IIR 滤波器高5-10倍,但是FIR 滤波器可以得到严格的线性相位。
2. 从结构上看,IIR 滤波器必须采用递归结构,极点位置必须在单位圆内,否则 系统将不稳定。
相反,FIR 滤波器只要采用非递归结构,不论在理论上还是 在实际的有限精度运算中都不存在稳定性问题, 因此造成的频率特性误差也 较小。
此外FIR 滤波器可以采用快速傅里叶变换算法, 在相同阶数的条件下, 运算速度可以快得多。
3. 从设计工具看,IIR 滤波器可以借助于模拟滤波器的成果,因此一般都有有效 的圭寸闭形式的设计公式可供准确计算,计算工作量比较小,对计算工具的要 求不高。
hnb n, 0 n M 0, 其他 ny[n]b k x[n k]k0a k y[n k1k]从上面的简单比较可以看到IIR与FIR滤波器各有所长,所以在实际应用时应该从多方面考虑来加以选择。
从使用要求上来看,在对相位要求不敏感的场合,如语言通信等,选用IIR较为合适,这样可以充分发挥其经济高效的特点;对于图像信号处理,数据传输等以波形携带信息的系统,则对线性相位要求较高。
如果有条件,采用FIR滤波器较好。
另外,不论IIR和FIR阶数越高,信号延迟越大;同时在IIR滤波器中,阶数越高,系数的精度要求越高,否则很容易造成有限字长的误差使极点移到单位园外。
因此在阶数选择上是综合考虑的。
FIR数字滤波器的设计(一)FIR滤波器原理N 1y[n] h(k)x(n k)k 0FIR滤波器的系统输入输出差分方程为:所以FIR滤波器的系统函数为:H(Z)Y⑵X(Z)N 1h(n )z nn O由于FIR滤波器的单位脉冲响应h(n)是一个有限长序列,H (Z)是- 的(N-I)次多项式,它在Z平面上有(N-1)个零点,同时在原点有(N-I)阶重极点。
因此,H(Z) 永远稳定。
FIR滤波器设计的任务是选择有限长度的h( n),使传输函数覺肿笃满足一定的幅度特性和线性相位要求。
由于FIR⅛波器很容易实现严格的线性相位,所以FIR数字滤波器设计的核心思想是求出有限的脉冲响应来逼近给定的频率响应。
(二) FlR滤波器的窗函数设计原理窗函数法的设计思想是按照所要求的理想滤波器频率响应IwP,设计个FIR⅛波器,使之频率响应来逼近%討逹O先由%廳严》的⅛-0傅里叶反变换导出理想滤波器的冲激响应序列沁阳,即:∖e^ωτιdω-π由于*加謝胛⅛是矩形频率特性,所以一,:一是一无限长的序列,且是非因果的,而要计的FIR 滤波器的冲激响应序列是有限长的,所以要用有限长的序列 h(n)来逼近无限长的序列 诂劇,最有效的方法是截断匸屈初,或者说用一个有限长度的窗 口函数w( n)序列来截取g 蜃胡,即:一。
按照复卷积公式,在时域中的乘积关系可表示成在频域中的周期性卷积关系, 即可得所设计的FIR 滤波器的频率响应:其中,箱?涉乜为截断窗函数的频率特性。
由此可见,实际的FIF 数字滤波器的频率响应盼笃逼近理想滤波器频率响应 碌贋卜F 的好坏,完全取决于窗函数的频 率特性…严》如果w(n)具有下列形式:0, n 0,n N w(n)1, OnNw( n)相当于一个矩形,我们称之为矩形窗。
即我们可采用矩形窗函数w( n)将无限 脉冲响应讪術截取一段脯爛来近似为乳述爛。
经过加矩形窗后所得的滤波器实际 频率响应能否很好地逼近理想频率响应呢?下图给出了理想滤波器加矩形窗后 的情况。
理想低通滤波器的频率响应'WJ 如图中左上角图,矩形窗的频率响 应•吩%为左下角图。
根据卷积定理,即得实际滤波器的频率响应 蹭加乍图形 为图中右图。
由图可看出,加矩形窗后使实际频率响应偏离理想频率响应, 主要影响有三 个方面:(1) 理想幅频特性陡直边缘处形成过渡带,过渡带宽取决于矩形窗函数频 率响应的主瓣宽度。
f H ci (評)Mz o I d)--T^)dθ(2)过渡带两侧形成肩峰和波纹,这是矩形窗函数频率响应的旁瓣引起的,旁瓣相对值越大,旁瓣越多,波纹越多。
(3)随窗函数宽度N的增大,矩形窗函数频率响应的主瓣宽度减小,但不改变旁瓣的相对值。
为了改善滤波器的性能,需使窗函数谱满足:主瓣尽可能窄,以使设计出来的滤波器有较陡的过渡带;第一副瓣面积相对主瓣面积尽可能小,即能量尽可能集中在主瓣,外泄少,使设计出来的滤波器的肩峰和余振小逼近于理想滤波器。
但是这两个条件是相互矛盾的,实际应用中,折衷处理,兼顾各项指标。
(三) MATLAB信号处理中提供的窗函数上边只考虑了矩形窗,如果我们使窗的主瓣宽度尽可能地窄,旁瓣尽可能地小,可以获得性能更好的滤波器,通过改变窗的形状来达到这个目的。
在数字信号处理的发展过程中形成了不同于矩形窗的很多窗函数,这些窗函数在主瓣和旁瓣特性方面各有特点,可满足不同的要求。
为此,用窗函数法设计器时,要根据给定的滤波器性能指标选择窗口宽度介绍几类类窗函数及其特性。
1. 矩形窗矩形窗函数的时域形式可以表示为:它的频域特性为:FIR数字滤波w(n)。
下面具体N和窗函数1, w(n) R N (n) O O n 其他它的频域特性为:.N 1 JWe j eSinSin 2. 汉宁窗函数汉宁窗函数的时域形式可以表示为:w(k) 0.5 1cos 2亠1,2, , N0.5W R0.25 W R 2πW R其中,w ()为矩形窗函数的幅度频率特性函数。
汉宁窗函数的最大旁瓣值比主瓣值低 31dB,但是主瓣宽度比矩形窗函数的主 瓣宽度增加了 1倍,为8π /N 。
3. 海明窗函数海明窗函数的时域形式可以表示为它的频域特性为:其中,W R ()为矩形窗函数的幅度频率特性函数。
海明窗函数的最大旁瓣值比主瓣值低 41dB,但它和汉宁窗函数的主瓣宽度是 一样大的。
4. 三角窗函数形式可以表示为:当n 为奇数时:当n 为偶数时:2k 1n, 1 k - n 22(n k 1) n-k n它的频域特性为:w(k)0.54 0.46COS 2 πk 1,2, ,NW( )0.54W R ( ) 0.23 W R2π N 1W R2π N 1三角窗是最简单的频谱函数 悴討'迪为非负的一种窗函数。
三角窗函数的时域w(k)2kn 11 k n 12 2(n k 1)n 1 Ik nn 1,2w(k)24Sin —2三角窗函数的主瓣宽度为 8π /N ,比矩形窗函数的主瓣宽度增加了一倍,但 是它的旁瓣宽度却小得多。
(四) 各窗函数的图形及幅频特性1.用MATLA 编程绘制各种窗函数的形状,窗函数的长度为21。
程序如下:clf;NWi n=21; n=0:NWi n-1; figure(1) for ii=1:4 SWitCh ii CaSe 1w=boxcar(Nw in); %矩形窗stext=' 矩形窗'; CaSe 2w=ha nnin g(Nw in); stext='汉宁窗';CaSe 3% 汉宁窗w=hammi ng(Nwi n); stext='海明窗';CaSe 4% 海明窗w=tria ng(Nwi n); stext='三角窗';endPOSPlOt=['2,2,' i nt2str(ii)]; subplot(posplot); % 三角窗Stem (n ,w); % hold On绘出窗函数 plot (n ,w,'r'); %绘出包络线xlabel(' n');ylabel('w( n)');title(stext); hold off;grid on;end程序运行结果如下图:SinW R e j汉宁窗它⅛,f05n:严坪J…Φ≡ 0.50 5 10 15 20n°0 5 10 15n2.用MATLAB编程,clf;Nf=512;NWin=20; figure(1) for ii=1:4SWitCh iiCaSe 1w=boxcar(Nw in); stext=' 矩形窗';CaSe 2w=ha nnin g(Nw in); stext=' 汉宁窗';CaSe 3w=hammi ng(Nwi n); stext=' 海明窗';CaSe 4w=tria ng(Nwi n); stext=' 三角窗';end[y,f]=freqz(w,1,Nf); % mag=abs(y);POSPlOt=['2,2,' i nt2str(ii)];subplot(posplot);plot(f∕pi,20* Iog10(mag∕max(mag))); %采用512个频率点绘制各窗函数的幅频特性。
程序如下:%%窗函数复数频率特性的数据点数窗函数数据长度矩形窗汉宁窗海明窗三角窗求解窗函数的幅频特性%求得窗函数幅频特性绘制窗函数的幅频特性XIabe1('归一化频率’)ylabel (' 振幅∕dB');title (stext );grid on; end程序运行结果如下图:窗函数主瓣频宽第旁瓣相对主瓣衰减(dB )矩形窗 4τt ΛΓ-13 汉宁窗 8TFJV-31 海明窗 BπJV -41 三角窗8ττ JW F-25-50-100-1505J-15□l ---------------------- ; --------------------- -2000 05 1 0 0,51归一化頻率归一化频率由上图各窗函数的幅频特性可以看到各种窗函数都具有明显的主瓣和旁瓣。