数字信号处理第十六题举例说明窗化法设计FIR滤波器时,各种窗函数的选取原则1by:wang同一窗函数设计时阶数的选择2目录03452838Page134Contents举例说明窗函数选取原则总结2窗函数及其性能比较窗函数及其性能比较13矩形窗三角窗汉宁窗布莱克曼窗凯塞窗汉明窗请加入标题Logo4N=23;n=0:N-1;wd=0.3*pi;window1=rectwin(N);[h1,w]=freqz(window1,1);figure;stem(window1);xlabel('n');title('矩形窗函数');figure;plot(w/pi,20*log10(abs(h1)/abs(h1(1))));grid;xlabel('w/pi');ylabel('幅度(dB)');title('矩形窗的频谱');hn=fir1(N-1,wd/pi,rectwin(N));[h2,w]=freqz(hn,1);figure;stem(n,hn);xlabel('n');ylabel('h(n)');title('矩形窗的单位脉冲响应');grid;figure;plot(w/pi,20*log10(abs(h2)/abs(h2(1))));grid;xlabel('w/pi');ylabel('幅度(dB)');title('矩形窗低滤波器的频谱');window2=bartlett(N);[h2,w]=freqz(window2,1);figure;stem(window2);xlabel('n');title('三角窗函数');figure;plot(w/pi,20*log10(abs(h2)/abs(h2(1))));grid;xlabel('w/pi');ylabel('幅度(dB)');title('三角窗的频谱');window3=hann(N);[h3,w]=freqz(window3,1);figure;请加入标题Logo5stem(window3);xlabel('n');title('汉宁窗函数');figure;plot(w/pi,20*log10(abs(h3)/abs(h3(1))));grid;xlabel('w/pi');ylabel('幅度(dB)');title('汉宁窗的频谱');window4=hamming(N);[h4,w]=freqz(window4,1);figure;stem(window4);xlabel('n');title('汉明窗函数');figure;plot(w/pi,20*log10(abs(h4)/abs(h4(1))));grid;xlabel('w/pi');ylabel('幅度(dB)');title('汉明窗的频谱');window5=blackman(N);[h5,w]=freqz(window5,1);figure;stem(window5);xlabel('n');title('布莱克曼窗函数');figure;plot(w/pi,20*log10(abs(h5)/abs(h5(1))));grid;xlabel('w/pi');ylabel('幅度(dB)');title('布莱克曼窗的频谱');beta=8;window6=kaiser(N,beta);[h6,w]=freqz(window6,1);figure;stem(window6);xlabel('n');title('凯塞窗函数');figure;plot(w/pi,20*log10(abs(h6)/abs(h6(1))));grid;xlabel('w/pi');ylabel('幅度(dB)');title('凯塞窗的频谱');其频率响应和幅频响应分别为:窗函数介绍矩形窗Logo6矩形窗(RectangleWindow)()(),01RNwnRnN(1)/2sin(/2)()sin(/2)jjNRNWeesin(/2)()sin(/2)RNW窗函数介绍矩形窗Logo7窗函数介绍矩形窗Logo8主瓣宽度旁瓣峰值衰减-13dB阻带最小衰减21dB精确过渡带4/230.5461mB1.8/230.2457tB其频率响应和幅频响应分别为:窗函数介绍Logo9三角窗(BartlettWindow)21,012()212,112BnNnNwnnNnNN三角窗2(1)/22sin(/4)()[]sin(/2)jjNBNWeeN22sin(/4)()[]sin(/2)BNWN窗函数介绍Logo10三角窗窗函数介绍Logo11三角窗主瓣宽度旁瓣峰值衰减-25dB阻带最小衰减25dB精确过渡带8/231.092mB6.1/230.8328tB请加入标题窗函数介绍汉宁窗(HanningWindow),又称升余弦窗。Logo汉宁窗12()[1cos()]()21HnNnwnRnN1()22(){0.5()0.25[()12()]}1jHnRRNjRWeWWNWeN2()0.5()0.25[()12()]1HnRRR其频率响应和幅度响应分别为:12请加入标题窗函数介绍汉宁窗13请加入标题窗函数介绍汉宁窗14主瓣宽度旁瓣峰值衰减-31dB阻带最小衰减44dB精确过渡带8/231.092mB6.2/230.8464tB请加入标题窗函数介绍汉明窗(HanmingWindow),又称改进的升余弦窗。Logo汉明窗2()[0.540.46cos()]()1HmNnwnRnN22()0.54()0.23[()()]11HmRRR其频率响应和幅频响应分别为:1522()()11()0.54()0.23[()()]jjjjNNHmRRRWeWeWeWe请加入标题窗函数介绍Logo汉明窗16请加入标题窗函数介绍Logo汉明窗17主瓣宽度旁瓣峰值衰减-41dB阻带最小衰减53dB精确过渡带8/231.092mB6.6/230.9010tB布莱克曼窗(BlankmanWindow),又称二阶升余弦窗。幅频响应窗函数介绍布莱克曼窗24()[0.420.5cos()0.08cos()]()11BlNnnwnRnNN18频率响应22()0.42()0.25[()()]11440.04[()()]11BlRRRRR22()()1144()()11()0.42()0.25[()()]0.04[()()]jjjjNNBlRRRjjNNRRWeWeWeWeWeWe窗函数介绍布莱克曼窗19窗函数介绍布莱克曼窗20主瓣宽度旁瓣峰值衰减-57dB阻带最小衰减74dB精确过渡带12/231.638mB11/231.502tB凯塞窗(KaiserWindow)窗函数介绍凯塞窗200(1[12/(1)])(),01()KInNwnnNI21其中2011()1[()]!2kkIk窗函数介绍凯塞窗22窗函数介绍凯塞窗23旁瓣峰值衰减-57dB阻带最小衰减80dB精确过渡带10/231.365tB24各种窗函数性能比较窗类型主瓣宽度精确过渡带旁瓣峰值衰减/dB阻带最小衰减/dB矩形窗4π/N1.8π/N-1321三角窗8π/N6.1π/N-2525汉宁窗8π/N6.2π/N-3144汉明窗8π/N6.6π/N-4153布莱克曼窗12π/N11π/N-5774凯塞窗10π/N-5780各种窗函数性能比较mBtB(7.865)小结1从上图,我们可以得出以下结论:2阻带最小衰减:三角窗汉宁窗汉明窗,布莱克曼窗阻带最小衰减较大,凯塞窗的阻带最小衰减最大,各窗函数的旁瓣峰值衰减规律与此关系相同。主瓣宽度:三角形窗,汉宁窗以及汉明窗一样,凯塞窗的较宽,布莱克曼窗比以上四种的主瓣要宽,表现在用布莱克曼窗的滤波器的过渡带比用其他四种窗函数的要宽。25小结326从上图,我们可以得出以下结论:旁瓣衰减的速率:三角形窗和汉明窗比较缓慢,汉宁窗相对前两种要快,因此在满足阻带最小衰减要求时,汉宁窗比汉明窗更适合对远处滤波。小结127另外需要注意:虽然矩形窗的主瓣宽度和过渡带都较窄,但是时域截取时两端突变太大,而且阻带最小衰减比较小,因此实际中一般用的很少。但是,对于短信号滤波,矩形窗滤波效果较好。虽然同阶数的凯塞窗阻带最小衰减最大,而且有相同阻带最小衰减时它的过渡带最窄,但是凯塞窗的函数不易嵌入,给实际应用带来困难。2同一窗函数设计时阶数的选择228用同一窗函数设计的FIR数字滤波器的阶数N不同,所得到的滤波器的过渡带会不一样,N越大,过渡带越窄。同一窗函数设计时阶数的选择29问题下面是当汉明窗的长度分别为N=23,N=33,N=43,N=53时的幅频响应:Logo30程序N1=23;wd=0.3*pi;window1=hamming(N1);[h1,w]=freqz(window1,1);figure;stem(window1);xlabel('n');title('汉明窗函数');figure;plot(w/pi,20*log10(abs(h1)/abs(h1(1))));grid;xlabel('w/pi');ylabel('幅度(dB)');title('汉明窗的频谱');hn=fir1(N1-1,wd/pi,hamming(N1));[h2,w]=freqz(hn,1);figure;stem(hn);xlabel('n');ylabel('h(n)');title('汉明窗的单位脉冲响应');grid;figure;plot(w/pi,20*log10(abs(h2)/abs(h2(1))));grid;xlabel('w/pi');ylabel('幅度(dB)');title('汉明窗低滤波器的频谱');Logo3123点主瓣宽度旁瓣峰值衰减-41dB阻带最小衰减53dB精确过渡带8/231.092mB6.6/230.9010tBLogo3233点主瓣宽度旁瓣峰值衰减-41dB阻带最小衰减53dB8/330.7612mBLogo3343点主瓣宽度旁瓣峰值衰减-41dB阻带最小衰减53dB8/430.5842mBLogo3453点主瓣宽度旁瓣峰值衰减-41dB阻带最小衰减53dB8/530.4740mB小结135从上图可以知道对于同一种窗函数有:2N的值越大主瓣宽度越小,相应地,滤波器的过渡带就越窄。旁瓣的个数越来越多,但旁瓣的宽度随着N的加大而减小。3主瓣高度与第一旁瓣高度的差值方面基本不变,也就是旁瓣峰值衰减和阻带最小衰减不随N变化。小结136另外需要注意:2窗函数的长度较短,阶数较低时,过渡带很宽,而且旁瓣较少。阶数太高,过渡带很窄,但是暂态增加,延时很长,对于短信号的滤波不利,而且旁瓣也很多。小结37通过上面两点讨论可以看出:【1】根据阻带最小衰减选取窗函数的类型(尽量减少时域截取时的突变)。【2】根据过渡带宽度确定所选窗函数的长度N。【1】最小阻带衰减只由窗形决定,不受N的影响。【2】过渡带的宽度既和窗形有关,又和N有关,且随窗长N的增加而减小。因此实际中对于窗函数的选取应该遵循以下几个原则:举例说明窗函数选取原则338例题试设计一个低通滤波器,其中,,,若要求,则应该选取什么窗函数,选取的窗函数的长度变化对滤波性能有什么影响。39321.510/sprad32310/sstrad50sdB421.510/ssrad例题40解:计算可得:,求得0.2sp要求,因此在这里选择用汉明窗