中南大学现代信号处理课程设计2_第1页
中南大学现代信号处理课程设计2_第2页
中南大学现代信号处理课程设计2_第3页
中南大学现代信号处理课程设计2_第4页
中南大学现代信号处理课程设计2_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、数字信号处理课程设计一、课程设计目的:1全面复习课程所学理论知识,巩固所学知识重点和难点,将理论与实践很好地结合起来。2. 掌握信号分析与处理的基本方法与实现3提高综合运用所学知识独立分析和解决问题的能力;4熟练使用一种高级语言进行编程实现。二、课程设计题目和具体设计(分题列出);(五)第五题1.设计题目及设计要求设有一信号,设计各种IIR数字滤波器以实现:1) 低通滤波器,滤除的成分,保留成分2) 高通滤波器,滤除的成分,保留成分3) 带通滤波器,滤除的成分,保留成分4) 带阻滤波器,滤除的成分,保留成分要求:1) 求出各个滤波器的阶数,设计各滤波器。画出各滤波器的幅频和相频特性,计算滤波器

2、的系统函数H(z) 2) 画出滤波前后信号的时域、频域波形2.设计思想及系统功能分析本题主要考察四种基本IIR数字滤波器的设计,需要先对时域信号进行分析,确定各种滤波器的参数指标,然后根据matlab的一些固定调用格式对滤波器的阶数,截止频率等进行设计最后再生成最终滤波器,然后利用生成的滤波器对信号进行滤波。3.关键部分的理论分析与计算关键部分在于分析滤波器的参数指标时,要将频率都进行归一化,因为此处设计的是数字滤波器;另外,通带衰减一般小于3dB,阻带衰减一般大于30dB;设计带通、带阻滤波器时其截至频率分为上限截至频率和下限截至频率,书写方式为区间形式;另外,此处根据信号形式选择通、阻带截

3、频时,应注意在所给信号频率的附近根据要求作适当的调整,不能刚好将所给的频率作为截止频率,因为滤波器不可能完全理想,为了保证信号能尽量无失真的滤波出来,就要通带范围稍微大一点。4.程序源代码%第五题%(1)设计数字低通滤波器figure(1);T=1wp1=0.4;ws1=0.5;ap1=1;as1=30;%给出数字参数指标N1,wc1=buttord(wp1,ws1,ap1,as1);%计算阶数N和3Db处的频率 N1 %在命令框中显示NB1,A1=butter(N1,wc1);%求巴特沃斯型数字滤波器w=linspace(0,2*pi,1000);%在0-2*pi内将w分成1000个点h1=

4、freqz(B1,A1,w);%调用freqz函数,求解幅频响应magh1=abs(h1);%求出幅频特性pha1=angle(h1);%求出相频特性subplot(321);plot(w/pi,magh1,'r');%画图title('低通滤波器幅频特性曲线');xlabel('模拟频率');subplot(322);plot(w/pi,pha1,'r');title('低通滤波器相频特性曲线');xlabel('模拟频率');n=0:72;%选取序列长度w=pi*n/73;%分出与n相对应的wx

5、n=1+cos(pi*n/4)+cos(2*pi*n/3);%原序列subplot(323);stem(n,xn,'.');%画出原序列title('xn的时域曲线');xlabel('n');ylabel('xn');X=abs(xn*exp(-1*j*n'*w);%原序列的序列傅里叶变换subplot(3,2,4);stem(w,X,'.');%画出序列傅里叶变换的曲线title('xn的频域曲线');xlabel('w');ylabel('X');y1=

6、filter(B1,A1,xn);%利用filter函数恢复出滤波后的函数subplot(325);stem(n,y1,'.m');%画图title('低通滤波后的时域曲线');xlabel('n');ylabel('y1');Y1=abs(y1*exp(-1*j*n'*w);%恢复后的函数的序列傅里叶变换subplot(3,2,6);stem(w,Y1,'.m');%画图title('低通滤波后的频域曲线');xlabel('w');ylabel('Y1')

7、;%(2)设计数字高通滤波器figure(2);wp2=0.5;ws2=0.4;ap2=1;as2=30;N2,wc2=buttord(wp2,ws2,ap2,as2); N2 B2,A2=butter(N2,wc2,'high'); w=linspace(0,2*pi,1000);h2=freqz(B2,A2,w);magh2=abs(h2);pha2=angle(h2);subplot(321);plot(w/pi,magh2,'r');title('高通滤波器幅频特性曲线');xlabel('模拟频率');subplot(3

8、22);plot(w/pi,pha2,'r');title('高通滤波器相频特性曲线');xlabel('模拟频率');n=0:72;w=pi*n/73;xn=1+cos(pi*n/4)+cos(2*pi*n/3);subplot(323);stem(n,xn,'.');title('xn的时域曲线');xlabel('n');ylabel('xn');X=abs(xn*exp(-1*j*n'*w);subplot(3,2,4);stem(w,X,'.');t

9、itle('xn的频域曲线');xlabel('w');ylabel('X');y2=filter(B2,A2,xn);subplot(325);stem(n,y2,'.m');title('高通滤波后的时域曲线');xlabel('n');ylabel('y2');Y2=abs(y2*exp(-1*j*n'*w);subplot(3,2,6);stem(w,Y2,'.m');title('高通滤波后的频域曲线');xlabel('w&

10、#39;);ylabel('Y2');%(3)设计数字带通滤波器figure(3);wp3=0.1,0.4;ws3=0.05,0.5;ap3=1;as3=30;N3,wc3=buttord(wp3,ws3,ap3,as3); N3 B3,A3=butter(N3,wc3); w=linspace(0,2*pi,1000);h3=freqz(B3,A3,w);magh3=abs(h3);pha3=angle(h3);subplot(321);plot(w/pi,magh3,'r');title('带通滤波器幅频特性曲线');xlabel('

11、模拟频率');subplot(322);plot(w/pi,pha3,'r');title('带通滤波器相频特性曲线');xlabel('模拟频率');n=0:72;w=pi*n/73;xn=1+cos(pi*n/4)+cos(2*pi*n/3);subplot(323);stem(n,xn,'.');title('xn的时域曲线');xlabel('n');ylabel('xn');X=abs(xn*exp(-1*j*n'*w);subplot(3,2,4);ste

12、m(w,X,'.');title('xn的频域曲线');xlabel('w');ylabel('X');y3=filter(B3,A3,xn);subplot(325);stem(n,y3,'.m');title('带通滤波后的时域曲线');xlabel('n');ylabel('y3');Y3=abs(y3*exp(-1*j*n'*w);subplot(3,2,6);stem(w,Y3,'.m');title('带通滤波后的频域曲线&

13、#39;);xlabel('w');ylabel('Y3');%(4)设计数字带阻滤波器figure(4);wp4=0.05,0.5;ws4=0.1,0.4;ap4=1;as4=30;N4,wc4=buttord(wp4,ws4,ap4,as4); N4 B4,A4=butter(N4,wc4,'stop'); w=linspace(0,2*pi,1000);h4=freqz(B4,A4,w);magh4=abs(h4);pha4=angle(h4);subplot(321);plot(w/pi,magh4,'r');title(

14、'带阻滤波器幅频特性曲线');xlabel('模拟频率');subplot(322);plot(w/pi,pha4,'r');title('带阻滤波器相频特性曲线');xlabel('模拟频率');n=0:72;w=pi*n/73;xn=1+cos(pi*n/4)+cos(2*pi*n/3);subplot(323);stem(n,xn,'.');title('xn的时域曲线');xlabel('n');ylabel('xn');X=abs(xn*ex

15、p(-1*j*n'*w);subplot(3,2,4);stem(w,X,'.');title('xn的频域曲线');xlabel('w');ylabel('X');y4=filter(B4,A4,xn);subplot(325);stem(n,y4,'.m');title('带阻滤波后的时域曲线');xlabel('n');ylabel('y4');Y4=abs(y4*exp(-1*j*n'*w);subplot(3,2,6);stem(w,Y4,&

16、#39;.m');title('带阻滤波后的频域曲线');xlabel('w');ylabel('Y4');5.测试数据及必要的理论分析与比较由figure1可以看出低通滤波器的幅频特性曲线和相频特性曲线,原信号的时域曲线和频域曲线以及滤波后的信号的时域曲线和频域曲线,通过对比,可以很清楚的看出该低通滤波器实现了题目所要求的滤波功能;由figure2可以看出高通滤波器的幅频特性曲线和相频特性曲线,原信号的时域曲线和频域曲线以及滤波后的信号的时域曲线和频域曲线,通过对比,可以很清楚的看出该高通滤波器实现了题目所要求的滤波功能;由figure

17、3可以看出带通滤波器的幅频特性曲线和相频特性曲线,原信号的时域曲线和频域曲线以及滤波后的信号的时域曲线和频域曲线,通过对比,可以很清楚的看出该带通滤波器实现了题目所要求的滤波功能;由figure4可以看出带阻滤波器的幅频特性曲线和相频特性曲线,原信号的时域曲线和频域曲线以及滤波后的信号的时域曲线和频域曲线,通过对比,可以很清楚的看出该带阻滤波器实现了题目所要求的滤波功能;(六)第六题1.设计题目及设计要求(1)用Hanning窗设计一线性相位带通数字滤波器,要求:N=15, 。观察它的实际3dB和20dB带宽。N=45,重复这一设计,观察幅频和相位特性的变化,注意长度N变化的影响;(2)分别改

18、用矩形窗和Blackman窗,设计(1)中的带通滤波器,观察并记录窗函数对滤波器幅频特性的影响,比较三种窗的特点;总结窗的不同长度和不同窗对滤波器的影响2.设计思想及系统功能分析本题主要考察利用窗函数法设计线性相位的数字滤波器,与之前的设计方法并无太大区别,先是确定滤波器的技术指标(归一化),然后通过调用窗函数的语句进行设计,只不过这里需要根据窗函数的不同选择相应的过渡带宽及选择信号的长度和滤波器的阶数;同样,带通滤波器的截止频率需要用区间形式写出;对于不同的窗函数,过渡带宽会不同。3.关键部分的理论分析与计算关键部分应该有确定截止频率(注意要归一化),还有选择不同的窗函数对应的过渡带宽;另外

19、就是阶数和信号长度的关系:信号长度=阶数+1,这是从资料书上看来的,所以每个滤波器的阶数都是按照这个等式来确定的。4.程序源代码%第六题%(1)用汉宁窗设计线性相位带通滤波器%当长度N1为15时N1=15;w1=0.3*pi;w2=0.5*pi;wc=0.3,0.5;%归一化后的通带截频B1=8*pi/N1;%过渡带宽M1=N1-1;%单位脉冲响应的h(n)的长度N=M+1,此处的M1是阶数;n1=0:M1;hn1=fir1(M1,wc,hanning(N1);%调用firl函数求解单位脉冲响应h1,w1=freqz(hn1,1,512);%求其频率响应magh1=abs(h1);%求其幅频特

20、性pha1=angle(h1);%求其相频特性figure(1);subplot(221);plot(w1/pi,10*log(magh1);%画出其幅频特性grid;title('N=15时,汉宁窗的幅频特性');xlabel('w');ylabel('magh');subplot(222);plot(w1/pi,pha1);%画出其幅频特性title('N=15时,汉宁窗的相频特性');xlabel('w');ylabel('pha');grid;%当长度N2为45时N2=45;wc=0.3,0

21、.5;%归一化后的通带截频B2=8*pi/N2;%过渡带宽M2=N2-1;%单位脉冲响应的h(n)的长度N=M+1,此处的M1是阶数;n2=0:M2;hn2=fir1(M2,wc,hanning(N2);%调用firl函数求解单位脉冲响应h2,w2=freqz(hn2,1,512);%求其频率响应magh2=abs(h2);%求其幅频特性pha2=angle(h2);%求其相频特性subplot(223);plot(w2/pi,10*log(magh2),'g');%画出其幅频特性grid;title('N=45时,汉宁窗的幅频特性');xlabel('

22、w');ylabel('magh');subplot(224);plot(w2/pi,pha2,'g');%画出其幅频特性title('N=45时,汉宁窗的相频特性');xlabel('w');ylabel('pha');grid;%(2)用矩形窗设计线性相位带通滤波器%当长度N3为15时figure(2);N3=15;wc=0.3,0.5;B3=4*pi/N3;%过渡带宽M3=N3-1;n3=0:M3;hn3=fir1(M3,wc,boxcar(N3);h3,w3=freqz(hn3,1,512);mag

23、h3=abs(h3);pha3=angle(h3);subplot(221);plot(w3/pi,10*log(magh3);grid;title('N=15时,矩形窗的幅频特性');xlabel('w');ylabel('magh');subplot(222);plot(w3/pi,pha3);grid;title('N=15时,矩形窗的相频特性');xlabel('w');ylabel('pha');%当长度N2为45时N4=45;wc=0.3,0.5;B4=4*pi/N4;%过渡带宽M4=N

24、4-1;n4=0:M4;hn4=fir1(M4,wc,boxcar(N4);h4,w4=freqz(hn4,1,512);magh4=abs(h4);pha4=angle(h4);subplot(223);plot(w4/pi,10*log(magh4),'g');grid;title('N=45时,矩形窗的幅频特性');xlabel('w');ylabel('magh');subplot(224);plot(w4/pi,pha4,'g');grid;title('N=45时,矩形窗的相频特性');

25、xlabel('w');ylabel('pha');%(3)用Blackman窗设计线性相位带通滤波器%当长度N3为15时figure(3);N5=15;wc=0.3,0.5;B5=12*pi/N5;%过渡带宽M5=N5-1;n5=0:M5;hn5=fir1(M5,wc,blackman(N5);h5,w5=freqz(hn5,1,512);magh5=abs(h5);pha5=angle(h5);subplot(221);plot(w5/pi,10*log(magh5);grid;title('N=15时,Blackman窗的幅频特性');xl

26、abel('w');ylabel('magh');subplot(222);plot(w5/pi,pha5);grid;title('N=15时,Blackman窗的相频特性');xlabel('w');ylabel('pha');%当长度N2为45时N6=45;wc=0.3,0.5;B6=12*pi/N6;%过渡带宽M6=N6-1;n6=0:M6;hn6=fir1(M6,wc,blackman(N6);h6,w6=freqz(hn6,1,512);magh6=abs(h6);pha6=angle(h6);subp

27、lot(223);plot(w6/pi,10*log(magh6),'g');grid;title('N=45时,Blackman窗的幅频特性');xlabel('w');ylabel('magh');subplot(224);plot(w6/pi,pha6,'g');grid;title('N=45时,Blackman窗的相频特性');xlabel('w');ylabel('pha');5.测试数据及必要的理论分析与比较由figure1可以看出,N=15时的汉宁窗设

28、计的滤波器的通带比N=45时的通带宽,旁瓣的衰减也要小一些,所以,阶数越大,所设计出来的滤波器效果越好,通带稳定,衰减快。同理,根据fugure2和figure3的矩形窗和Blackman窗也可以得出相同的结论。 通过对三个图不同窗函数设计的滤波器进行比较,可以看出:矩形窗设计的滤波器通带最稳定,衰减最快;汉宁窗次之;Blackman窗滤波效果相对最差。所以,矩形窗更能较好的实现滤波效果。(七)选做题71.设计题目及设计要求音乐信号处理: 1)获取一段音乐或语音信号,设计单回声滤波器,实现信号的单回声产生。给出加入单回声前后的信号频谱。 2)设计多重回声滤波器,实现多重回声效果。给出加入多重回

29、声后的信号频谱。 3)设计均衡器,使得得不同频率的混合音频信号,通过一个均衡器后,增强或削减某些频率区域。2.设计思想及系统功能分析设计思想为:先从网上下载一段格式为wav的音乐信号,选择一个较长的长度,设计一个滤波器,然后用该滤波器对音乐信号进行滤波,实质上就是将信号拉长后,与原信号就行一次叠加,便可设计出单回声滤波器;给滤波器加入一个阶次,让滤波器进行多次滤波然后再与原信号叠加,便可得到多重回声滤波器。3.关键部分的理论分析与计算设计单回声滤波器的关键在于该滤波器的系统函数的分子部分,要通过补零的方式将滤波器进行拉长,最好还要加入一个固定常数项;设计多重回声滤波器时,系统函数分子部分补的零

30、根据阶数的不同会相应增加,最后的常数项也要变为相应的阶次幂,而且分母部分也应该进行补零。4.程序源代码%第七题%(1)单回声滤波器%addpath('D:Progame Files/MATLAB/R2011a/bin');x,fs,bits=wavread('D:Prettyboy.wav',216);%读出音频文件%x,fs,bits=wavread('D:yue.wav',216);%读出音频文件wavplay(x,fs);%播放音频文件fsbitspause(1);a1=0.8;R1=5000;B1=1,zeros(1,R1-1),0.8;

31、%系统函数分子A1=1;y=filter(B1,A1,x);%滤波器函数wavplay(y,fs);pause(1);x1=fft(x);figure(1);subplot(321);plot(abs(x1);title('单回声前信号幅频响应');subplot(322);plot(angle(x1);title('单回声前信号相频响应');y1=fft(y);%快速傅里叶变换subplot(323);plot(abs(y1),'m');title('单回声后信号幅频响应');subplot(324);plot(angle(y1

32、),'m');title('单回声后信号相频响应');h1,w1=freqz(B1,A1);%求滤波器的幅频响应函数subplot(325);plot(abs(h1),'g');title('单回声滤波器幅频响应');y2=ifft(h1);subplot(326);stem(abs(y2),'.g');title('单回声滤波器冲激响应');%多重回声滤波器pause(2);x,fs,bits=wavread('D:Prettyboy.wav',216);%读出音频文件%x,fs,

33、bits=wavread('D:yue.wav',216);%读出音频文件wavplay(x,fs);%播放音频文件pause(0);N=5;a2=0.8;R2=8000;B2=1,zeros(1,N*R2-1),-0.8N;A2=1,zeros(1,R2-1),-0.8;z=filter(B2,A2,x);wavplay(z,fs);z1=fft(z);x1=fft(x);figure(2);subplot(321);plot(abs(x1);title('多重回声前信号幅频响应');subplot(322);plot(angle(x1);title('

34、;多重回声前信号相频响应');subplot(323);plot(abs(z1),'m');title('多重回声后幅频响应');subplot(324);plot(angle(z1),'m');title('多重回声后相频响应');h2,w2=freqz(B2,A2);subplot(325);plot(abs(h2),'g');title('多重回声滤波器幅频响应');z2=ifft(h2);subplot(326);stem(abs(z2),'.g');title(&#

35、39;多重回声滤波器冲激响应');5.测试数据及必要的理论分析与比较由figure1可以看出,声音信号通过单回声滤波器后整个频率域上的幅值都发生了一些变化,变得比以前稍大一些,这是因为滤波后的信号是原信号与回声信号叠加起来的;同理,由figure2可以看出,声音信号通过多重回声滤波器后整个频率域上的幅值也都发生了一些变化,变得比以前更大。 通过对比figure1和figure2可以看出,单回声滤波器的幅频响应幅度比相应的多重回声滤波器的幅度小,因为多重回声滤波器是经过N次的单回声滤波器滤波后叠加的效果;而且单回声滤波器的冲激响应只有一个值,多重回声滤波器的冲激响应有N个值。(八)选做题

36、81.设计题目及设计要求对混有噪声的音乐信号进行滤波: 1)在一段音乐信号中混入两个频率的正弦型干扰信号,利用FFT计算该混合信号的频谱并确定干扰信号的频谱; 2)利用二阶带阻滤波器设计一个能滤出干扰信号的梳状滤波器;2.设计思想及系统功能分析设计思想为:先从网上下载一段格式为wav的音乐信号,通过FFT对其进行频谱分析,确定其主要的频率成分,然后通过信号相加的形式加入两个不同频率的正弦信号,再对混入后的信号进行FFT,分析其频谱特性,确定干扰信号的频谱;接下来就是设计滤波器对信号进行还原,此处没有实现梳状滤波器,只实现了二阶带阻滤波器,对信号成功的进行了还原。3.关键部分的理论分析与计算关键

37、部分为利用FFT对音乐信号进行频谱分析,确定了音乐信号的主要成分为低频,然后加入两个高频的正弦信号便能很清楚的干扰到原信号;在设计二阶带阻滤波器的时候,要尽量将阻带做的很窄,能够准确的滤除干扰信号。4.程序源代码%在一段音乐信号中混入两个频率的正弦型干扰信号,利用FFT计算该混合信号的频谱并确定干扰信号的频谱;x,fs,bits=wavread('D:Prettyboy.wav',216);%读出音频文件%x,fs,bits=wavread('D:S131.wav',215);%读出音频文件%wavplay(x,fs);%播放音频文件a=size(x')

38、;N=216;%截取的信号长度n=0:1:N-1;t=n/fs;fs1=7000;fs2=5000;%加入的两个正弦信号的频率x1=x'+sin(2*pi*fs1*t)+sin(2*pi*fs2*t);%混入正弦信号后的信号y=fft(x1);%对它做fftf1=(0:length(y)-1)'*fs/length(y);%将曲线的横坐标单位设为Hzfigure(1);subplot(211);plot(f1,abs(y),'m');%画出幅频特性title('叠加正弦信号的音乐信号的幅频特性');xlabel('f1');yla

39、bel('幅度');subplot(212);plot(f1,angle(y),'m');%画出相频特性title('叠加正弦信号的音乐信号的相频特性');xlabel('f1');ylabel('相位');%设计二阶带阻滤波器N1=2;%阶数为二阶B1,A1=butter(N1,2*4800/fs,2*5200/fs,'stop');%带阻滤波器的系统函数系数B2,A2=butter(N1,2*6800/fs,2*7200/fs,'stop');%带阻滤波器的系统函数系数Bt=co

40、nv(B1,B2);%带阻滤波器的传递函数系数At=conv(A1,A2);%带阻滤波器的传递函数系数figure(2);h,w=freqz(Bt,At);%求带阻滤波器的频率响应subplot(211);plot(w/pi,abs(h),'r');% 带阻滤波器的幅频响应title('梳状滤波器的幅频响应');subplot(212);plot(w/pi,angle(h),'r');% 带阻滤波器的相频响应title('带阻滤波器的相频响应');%利用带阻滤波器滤除信号中的干扰z=filter(Bt,At,x1);figure(3);subplot(311);plot(t,x);title('原音乐信号');%原音乐信号subplot(312);plo

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论