1、目 录1、课程设计目的22、课程设计题目描述和要求22.1题目描述22.2设计要求23、课程设计报告内容33.1总体设计33.1.1 采集声音信号33.1.2 声音信号的时域与频谱分析33.1.3 对声音信号加噪43.1.4 滤波器设计53.1.5 加噪信号的滤波与回放63.2软件仿真调试结果分析63.2.1 原始信号的读取与分析63.2.2 加噪信号的时域与频域分析73.2.3 滤波器的设计及分析83.2.4 加噪信号的滤波与图形分析93.3 设计中出现的问题与解决方案114、设计总结11参考文献12附录:(源程序代码)121、课程设计目的通过对课程设计任务的完成,使学生进一步巩固数字信号处
2、理的基本概念、理论、分析方法和实现方法;使学生掌握的基本理论和分析方法方面的知识得到进一步扩展;使学生能有效地将理论和实际紧密结合;增强学生软件编程实现能力和解决实际问题的能力。要求学生能够熟练地用Matlab语言编程实现IIR数字滤波器和FIR数字滤波器,进一步明确数字信号处理的工程应用。2、课程设计题目描述和要求2.1题目描述 FIR数字滤波器:FIR数字滤波器的冲激响应的Z变换为: 其中滤波器最重要的两个特性为线性相位特性和幅度特性。本次课程设计要求录制一段自己的语音信号后,格式为WAV。在MATLAB软件中采集语音信号、回放语音信号。画出语音信号的时域波形和频谱图,对所采集的信号加入干
3、扰噪声,对加入噪声进行播放,并进行时域和频谱分析;对比早前后的时域图和频谱图即对比加噪声音信号和通过低通滤波器处理的音频信号不同的时域和频域波形。2.2设计要求 理解课题教学的理论内容掌握和熟悉matlab软件的编程方法和仿真过程编写课程设计所需的程序对程序进行仿真测试,并进行分析写出课程设计报告3、课程设计报告内容3.1总体设计3.1.1 采集声音信号 利用PC 机上的声卡和WINDOWS 操作系统自带的录音机,来进行声音的采集,将录的音以文件名“a”保存在F:中,文件存储的后缀默认为.wav。3.1.2 声音信号的时域与频谱分析 在MATLAB软件平台下,利用MATLAB中的“wavrea
4、d”命令来读入(采集)语音信号,将它赋值给某一向量。再对其进行采样,记住采样频率和采样点数。通过使用wavread函数,可以深入理解采样频率、采样位数等概念,下面介绍Wavread 函数几种调用格式。(1)y=wavread(file);读取file所规定的wav文件,返回采样值放在向量y中。(2)y,fs,nbits=wavread(file) ;采样值放在向量y中,fs表示采样频率(hz),nbits表示采样位数。(3)y=wavread(file,N);读取钱N点的采样值放在向量y中。(4)y=wavread(file,N1,N2);读取从N1到N2点的采样值放在向量y中。接下来,对语音
5、信号a.wav进行采样,采样程序如下: y,fs,nbits=wavread ( Fa); 即把语音信号加载在Matlab 仿真软件平台上。然后,画出语音信号的时域波形,再对语音信号进行频谱分析。MATLAB提供了快速傅里叶变换算法FFT计算DFT的函数fft,其调用格式如下:Xk=fft(xn,N)参数xn为被变换的时域序列向量,N是DFT变换区间长度,当N大于xn的长度时,fft函数自动在xn后面补零。,当N小于xn的长度时,fft函数计算xn的前N个元素,忽略其后面的元素。在本次设计中,我们利用fft对语音信号进行快速傅里叶变换,就可以得到信号的频谱特性。截图如下:3.1.3 对声音信号
6、加噪 先对噪声信号进行设置,将噪声信号和原信号进行叠加。然后对叠加后的信号进行时域与频域的仿真及分析。如下:3.1.4 滤波器设计用汉明窗(hamming)函数对滤波器进行设计,选择合适的参数,然后分析其幅频特性。如下:3.1.5 加噪信号的滤波与回放 对叠加后的信号进行滤波,观察滤波前后波形在时域与频域的变化:3.2软件仿真调试结果分析3.2.1 原始信号的读取与分析 对3.1.2中的程序进行仿真,所采集的信号的时域及频谱图形如下:3.2.2 加噪信号的时域与频域分析 叠加信号和原信号的时域波形仿真如下: 叠加信号和原信号的频域特性如下:3.2.3 滤波器的设计及分析 由频谱图可以看出信号能
7、量集中在低频部分,为了减少无用的高频分量我设计了以下的FIR低通滤波器将其滤除。 该设计采用窗函数法(汉明窗)来完成以下指标的低通滤波器。通带截频fp=3000Hz,阻带截频fs=3500Hz,通带最大衰减0.3dB,阻带最小衰减-50dB,采样频率fs为信号源采样频率22050Hz。分析:在仿真图上可以看出来所设计的滤波器的技术指标:通带截止频率fp、阻带截止频率fs、通带最大衰减0.3db、阻带最小衰减-50db、采样频率为22050hz。3.2.4 加噪信号的滤波与图形分析三种信号的时域比较:分析:从仿真的结果上可以看出来,原信号与经过滤波后的加噪信号在时域波形产生了变化,但总体上还是与
8、原信号近似;原因是所设计的滤波器比较简单,没有充分考虑所有的因素,从而造成两个信号的差异性。结果证明:加噪及简单的滤波器的设计良好。三种信号的频域比较:3.3 设计中出现的问题与解决方案 在设计的过程中,刚开始的时候对于用MATLAB编写的程序的具体意思还是不太明白,经过熟悉以及向老师及同学询问后,才渐渐的明白每一个语句的具体含义。4、设计总结 在本次课程设计中,由于对matlab不是很熟悉,用着很生疏,只能通过查询相关资料自己学习,最后还是克服了这个难题,能过正确运用matlab的基本操作,通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与
9、实践相结合起来,从理论中得出结论,才能提高自己的实际动手能力和独立思考的能力。同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固。参考文献1 陈后金,DSP技术及应用,机械工业出版社,2004年2 基于matlab7.X的系统分析与设计.楼顺天. 西安电子科技大学出版社附录:(源程序代码)1、原始信号的时域及频域分析的源代码如下:y,fs,nbits=wavread ( F:a);sound(y,fs,nbits); %回放语音信号N= length (y) ; %求出语音信号的长度Y=fft(y,N); %傅里叶变换subplot(2,1,1);plot
10、(y);title(原始信号波形);subplot(2,1,2);plot(abs(Y);title(原始信号频谱) 2、声音加噪后的时域及频域的分析代码如下: y,Fs,bits=wavread(F:a);%读出信号,采样率和采样位数。y=y(:,1);%取单声道作分析yl=length(y)%求语音信号长度yy=fft(y,yl);%傅里叶变换t=0:1/8000:4 zeros(1,yl-32001);m=0.07*sin(10000*pi*t);%产生噪声n=y+m;%加入噪声nl=length(n)%求语音信号长度nn=fft(n,nl);%傅里叶变换figure(1);subplo
11、t(2,1,1);plot(n);title(噪声信号波形)subplot(2,1,2);plot(y);title(原信号波形)figure(2);subplot(2,1,1);plot(abs(nn);title(噪声信号频谱);subplot(2,1,2);plot(abs(yy);title(原信号频谱);sound(n,fs) 3、滤波器的幅频特性分析代码如下: Wp=3000*2*pi;Ws=3500*2*pi;Ap=0.3;As=50;fs=22050;wp=Wp/fs;ws=Ws/fs; %归一化通带截频,阻带截频wdelta=ws-wp; %过渡带宽%由阻带最小衰减指标确定选
12、用汉明窗,并确定其阶数N=ceil(6.6*pi/wdelta) Nw=N; n=0:N-1;alpha=(N-1)/2;m=n-alpha+eps; %理想滤波器脉冲响应wc=(wp+ws)/2; %理想截频 hd=sin(wc*m)./(pi*m); %采用汉明窗设计win=hamming(Nw);h=hd.*win; b=h; H,f=freqz(b,1,512,fs); %绘制滤波器的幅频响应图plot(f,20*log10(abs(H)xlabel(频率);ylabel(幅度);title(滤波器幅频特性);grid on; 4:滤波器的设计代码如下: y,Fs,bits=wavre
13、ad(F:a);%读出信号,采样率和采样位数。y=y(:,1); %取单声道作分析yl=length(y); %求语音信号长度yy=fft(y,yl); %傅里叶变换t=0:1/8000:4 zeros(1,yl-32001);m=0.07*sin(10000*pi*t); %产生噪声k=y+m; %加入噪声kl=length(k); %求语音信号长度K=fft(k,kl); %傅里叶变换fb=800;fc=1000;As=100;Ap=1;fs=44000;wc=2*fc/fs; wb=2*fb/fs;n,wn=ellipord(wc,wb,Ap,As);b,a=ellip(n,Ap,As,
14、wn);x=filter(b,a,k);s1=length(x); %求语音信号长度X=fft(x,s1);Figure(1);freqz(b,a,1000,8000);title(滤波器幅频相频图);figure(2);subplot(3,1,1);plot(y);title(原信号波形)figure(2);subplot(3,1,2);plot(k);title(噪声信号波形)figure(2);subplot(3,1,3);plot(x);title(滤波后信号波形)figure(3);subplot(3,1,1);plot(abs(yy);title(原信号频谱);figure(3);subplot(3,1,2);plot(abs(K);title(噪声信号频谱);figure(3);subplot(3,1,3);plot(abs(X);title(滤波后信号频谱);sound(x,Fs);13
版权声明:以上文章中所选用的图片及文字来源于网络以及用户投稿,由于未联系到知识产权人或未发现有关知识产权的登记,如有知识产权人并不愿意我们使用,如有侵权请立即联系:2622162128@qq.com ,我们立即下架或删除。
Copyright© 2022-2024 www.wodocx.com ,All Rights Reserved |陕ICP备19002583号-1
陕公网安备 61072602000132号 违法和不良信息举报:0916-4228922