您好,欢迎访问三七文档
当前位置:首页 > 行业资料 > 能源与动力工程 > 中南大学数字信号处理课程设计报告2
中南大学数字信号处理课程设计报告专业班级:指导老师:姓名:学号:目录一、课程设计要求二、设计过程(1)设计题目(2)设计源代码(3)设计结果(4)结果分析三、设计总结与心得体会四、课程设计指导书一、课程设计要求1、课程设计指导书①《数字信号处理(第二版)》,丁玉美等,西安电子科技大学出版社;②《MATLAB及在电子信息课程中的应用》,陈怀琛等,电子工业出版社。2、课程设计内容:⑴语音信号去噪处理主要要求:1)在windows系统下的录音机录制一段1s左右的语音信号作为原声信号,在MATLAB软件平台下,利用函数wavread对语音信号进行采样,记住采样频率和采样点数;2)画出语音信号的时域波形,对采样后的语音进行fft变换,得到信号的频谱特性;对语音信号分别加入正弦噪声和白噪声,画出加噪信号的时域波形和频谱图;3)根据对加噪语音信号谱分析结果,确定滤除噪声滤波器的技术指标,设计合适的数字滤波器,并画出滤波器的频域响应;4)用所设计的滤波器对加噪的信号进行滤波,在同一个窗口画出滤波前后信号的时域图和频谱图,对滤波前后的信号进行对比,分析信号变化;5)利用sound(x)回放语音信号,验证设计效果。⑵语音信号的延时和混响主要要求:1)利用Windows下的录音机或其他软件,录制一段自己的语音信号,时间控制在1s左右,并对录制的信号进行采样;2)语音信号的频谱分析,画出采样后语音信号的时域波形和频谱图;3)将信号加入延时和混响,再分析其频谱,并与原始信号频谱进行比较;4)设计几种特殊类型的滤波器:单回声滤波器,多重回声滤波器,全通结构的混响器,并画出滤波器的频域响应;5)用自己设计的滤波器对采集的语音信号进行滤波;6)分析得到信号的频谱,画出滤波后信号的时域波形和频谱,并对滤波前后的信号进行对比,分析信号的变化;7)回放语音信号。⑶数字滤波器的设计及实现主要要求:1)调用信号产生函数mstg产生三路抑制载波调幅信号相加构成的复合信号st,观察st的时域波形和幅频特性曲线;2)由要求将st中的三路调幅信号分离,通过观察st的幅频特性曲线,分别确定可以分离st中三路抑制载波单频调幅信号的三个滤波器(低通滤波器、带通滤波器、高通滤波器)的通带截止频率和阻带截止频率,要求滤波器的通带最大衰减为0.1dB,阻带最小衰减为60dB;3)编程调用MATLAB滤波器设计函数分别设计这三个数字滤波器,并绘图显示其幅频特性曲线;4)调用滤波函数filter,用所设计的三个滤波器分别对复合信号st进行滤波,分离出st中的三路不同载波频率的调幅信号,并绘图显示滤波后信号的时域波形和频谱,观察分离效果。⑷心电信号的处理主要要求:1)在MATLAB软件平台下,给原始的心电信号叠加上噪声或干扰,干扰类型分为如下几种:白噪声、工频干扰(50Hz)、谐波干扰(二次、三次谐波为主,分别为100Hz、150Hz)绘出叠加噪声后的心电信号时域和频谱图,在视觉上与原始心电信号图形对比,分析频域基本特征变化。2)给定滤波器的规一化性能指标(参考指标,实际中依据每个同学所叠加噪声情况而定),例如:通带截止频率wp=0.25*pi,阻通带截止频率ws=0.3*pi;通带最大衰减Rp=1dB;阻带最小衰减Rs=15dB3)采用窗函数法设计各型FIR滤波器(低通、高通、带通、带阻中的至少2种类型),来对叠加干扰前后的心电信号进行滤波处理,绘出滤波器的频域响应及滤波后信号的时域波形和频谱,并对滤波前后的信号进行对比,分析信号的变化;在相同的性能指标下比较各方法的滤波效果,并从理论上进行分析或解释;4)采用双线性变换法利用不同的原型低通滤波器(Butterworth型与切比雪夫I型)来设计各型IIR滤波器(低通、高通、带通、带阻中的至少2种类型)绘出滤波器的频域响应,并用这些数字滤波器对含噪心电信号分别进行滤波处理;比较不同方法下设计出来的数字滤波器的滤波效果,并从理论上进行分析或解释;5)心电信号波形观察、频谱观察,对滤波后的心电信号观察其时域、频域特征变化。3、具体要求⑴、使用MATLAB(或其它开发工具)编程实现上述内容,写出课程设计报告。⑵、课程设计报告的内容包括:①课程设计题目和题目设计要求;②设计思想和系统功能结构及功能说明;③设计中关键部分的详细描述和介绍,采用流程图描述关键模块的设计思路;④总结,包括设计过程中遇到的问题和解决方法,心得体会等;⑤参考文献;⑥程序源代码清单。4、考核方式课程考核分三部分,一部分是上机率,占20%;第二部分是检查成绩,最后两次上机为检查时间,占50%;第三部分为课程设计报告,占30%。注意:⑴、使用GUI界面或混合编程实现仿真程序,酌情加分;⑵、若发现程序或课程设计报告雷同,一律不及格。⑶、主要参考资料[1]S.K.Mitra.DigitalSignalProcessing:AComputerBasedApproach,3rdEdition[M],NewYork,USA:McGraw-Hill,2000[2]R.G.Lyons.UnderstandingDigitalSignalProcessing,2ndEdition[M].NewJersey,USA:PrenticeHall,2005[3]程佩青.数字信号处理教程,第二版[M].北京:清华大学出版社,2001[4]赵树杰等.数字信号处理[M].西安:西安电子科技大学出版社,1997[5]丁玉美等.数字信号处理—时域离散随机信号处理[M].西安:西安电子科技大学出版社,2002[6]陈怀琛等.MATLAB及在电子信息课程中的应用[M],北京:电子工业出版社出版,2002⑷、课程设计进度安排序号阶段内容合计(天)一设计准备1二方案选择及初步设计2三目标项目设计实现及调试3四撰写课程设计报告2五上机检查成绩2总计(2周)10二.设计过程第一题、语音信号去噪处理1.设计要求:(1)在windows系统下的录音机录制一段1s左右的语音信号作为原声信号,在MATLAB软件平台下,利用函数wavread对语音信号进行采样,记住采样频率和采样点数;(2)画出语音信号的时域波形,对采样后的语音进行fft变换,得到信号的频谱特性;对语音信号分别加入正弦噪声和白噪声,画出加噪信号的时域波形和频谱图;(3)根据对加噪语音信号谱分析结果,确定滤除噪声滤波器的技术指标,设计合适的数字滤波器,并画出滤波器的频域响应;(4)用所设计的滤波器对加噪的信号进行滤波,在同一个窗口画出滤波前后信号的时域图和频谱图,对滤波前后的信号进行对比,分析信号变化;(5)利用sound(x)回放语音信号,验证设计效果。2.设计步骤:(1)找到7s的语音信号,利用函数wavread对语音信号进行信号读取;(2)计算样本时刻和频谱图的频率,并进行N+1点FFT变换;(3)加噪声为5000Hz的正弦信号正弦噪声,采用awgn函数加信噪比为10的高斯白噪声;(4)设计滤波器;(5)绘出相应的时域、频域图;(6)利用sound函数进行原始信号的语音播放,加噪声音播放,以及滤波之后的语言播放。3.设计实现:(1)时域图与频谱图(加正弦)录入原始信号的时域图:加入正弦信号后的时域图:滤波后的时域图:录入原始信号的频域图:加入正弦信号后的频率图:滤波后的频域图:采用巴斯低通滤波器滤除正弦波:(2)具体代码实现:[x,fs,bits]=wavread('E:\mcpass.wav');%原信号n=size(x,1);%提取采样信号的长度t=(0:length(x)-1)/fs;%计算样本时刻f=fs*(0:(n+1)/2-1)/n+1;%计算频域图的频率X=fft(x,n+1);%进行N+1点FFT变换ts=0:1/fs:(size(x)-1)/fs;%将所加噪声信号的点数调整到与原始信号相同s=x+0.05*sin(2*pi*5000*ts)';%加噪声为5000Hz的正弦信号正弦噪声S=fft(s,n+1);%加正弦噪声后的频域%正弦滤波wp=2000/fs*2*pi;%2000为通带截止频率ws=3000/fs*2*pi;%3000为阻带下限截止频率Rp=4;%通带波纹Rs=25;%阻带波纹T=1/fs;Fs=1/T;%定义采样间隔Wp=2/T*tan(wp/2);%计算对应的数字频率Ws=2/T*tan(ws/2);[N,wn]=buttord(Wp,Ws,Rp,Rs,'s');%计算滤波器介数和截止频率[c,d]=butter(N,wn,'s');%计算滤波器系统函数分子分母系数[B,A]=bilinear(c,d,Fs);%双线性变换得到数字滤波器系统函数分子分母系数[Hb,Wc]=freqz(B,A);sf=filter(B,A,s);%对加噪信号进行滤波Sf=fft(sf,n+1);%对滤波后进行N+1点FFT变换%绘图部分figure(3);plot(fs*Wc/(2*pi),20*log10(abs(Hb)));title('巴斯低通滤波器频域响应图');xlabel('频率(Hz)');ylabel('幅度');figure(1);subplot(3,1,1);plot(t,x);title('原信号时域')xlabel('时间(s)');ylabel('幅度');figure(2);subplot(3,1,1);plot(f,abs(X(1:(n+1)/2)));title('原信号频域')xlabel('频率(Hz)');ylabel('幅度');figure(1);subplot(3,1,2);plot(t,s);title('加正弦信号后的时域')xlabel('时间(s)');ylabel('幅度');figure(2);subplot(3,1,2);plot(f,abs(S(1:(n+1)/2)));title('加正弦信号后的频域图')xlabel('频率(Hz)');ylabel('幅度');figure(1)subplot(3,1,3);plot(t,sf);title('滤波后的时域图');xlabel('时间(s)');ylabel('幅度');figure(2)subplot(3,1,3);plot(f,abs(Sf(1:(n+1)/2)));title('滤波后的频域图');xlabel('频率(Hz)');ylabel('幅度');sound(x);sound(s);sound(sf);(3)时域图与频域图(加白噪声)加白噪声后的时域图和滤除之后的时域图:加白噪声和滤除之后的频域图:采用blackman函数滤波:具体代码实现:[x,fs,bits]=wavread('E:\hbsong.wav');N=size(x,1);t=(0:length(x)-1)/fs;f=fs*(0:(N+1)/2-1)/N+1;X=fft(x,N+1);%加高斯白噪声z=awgn(x,20);%对信号加信噪比为10的高斯白噪声N1=size(z,1);%提取采样信号的长度t=(0:length(z)-1)/fs;%计算样本时刻f=fs*(0:(N1+1)/2-1)/N1+1;Z=fft(z,N1+1);Wp=2500/fs*2*pi;Ws=3000/fs*2*pi;%计算对应的数字频率B=Ws-Wp;n=ceil(1*pi/B);wc=(Wp+Ws)/2;b=fir1(n-1,wc/pi,'stop',blackman(n));%blackman窗函数滤波[H,w]=freqz(b,1);y=fftfilt(b,z);t1=(0:length(y)-1)/fs;Y=fft(y,N1+1);subplot(2,2,1);plot(t,z);title('加高斯白噪声后时域图');subplot(2,2,2);plot(f,abs(Z(1:(N1+1)/2)));title('滤波前信号频谱图')figureplot(fs*w/(2*pi),20*log10);title('blackman函数频域响应图');t
本文标题:中南大学数字信号处理课程设计报告2
链接地址:https://www.777doc.com/doc-2037497 .html