ImageVerifierCode 换一换
格式:DOCX , 页数:12 ,大小:1.64MB ,
资源ID:18384731      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/18384731.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(基于MATLAB的语音信号录制采集和分析的程序设计2Word格式文档下载.docx)为本站会员(b****4)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

基于MATLAB的语音信号录制采集和分析的程序设计2Word格式文档下载.docx

1、第四章 心得体会 13参考文献 14第一章 课程设计方案提出第一节 设计要求要求录制一段自己的语音信号后,在MATLAB软件中采集语音信号、回放语音信号并画出语音信号的时域波形和频谱图;对所采集的信号加入干扰噪声,对加入噪声进行播放,并进行时域和频谱分析;对比及早前后的时域图和频谱图,分析讨论采用什么的滤波器进行滤除噪声。第二节 设计方案 图1.1 语音信号录制流程图首先,录制一段语音信号(如图1.1);然后,利用MATLAB中的wavread命令来读入(采集)语音信号,将它赋值给某一向量。再将该向量看作一个普通的信号,对其进行FFT变换实现频谱分析;随后,利用MATLAB中的随机函数(ran

2、d或randn)产生噪声加入到语音信号中,模仿语音信号被污染,并对其频谱分析。最后;再依据实际情况对它进行滤波。对于波形图与频谱图(包括滤波前后的对比图)都可以用 MATLAB画出。我们还可以通过sound命令来对语音信号进行回放,以便在听觉上来感受声音的变化。第二章 语音信号的采集及加噪第一节 语音信号的录制利用PC 机上的声卡和WINDOWS 操作系统可以进行数字信号的采集。将话筒输入计算机的语音输入插口上,启动录音机。按下录音按钮,接着对话筒说话“语音信号处理”,说完后停止录音,屏幕左侧将显示所录声音的长度,点击放音按钮,可以实现所录音的重现。以文件名“shijiebei”保存入D: M

3、ATLAB work 中。文件存储器的后缀默认为. wav ,这是WINDOWS 操作系统规定的声音文件存的标准。具体操作如下:a.打开 开始/程序/附件/娱乐/录音机(如图3.1); 图3.1 b.用windows media player播放一首音乐并用MIC对着耳机录音或自已说话录音(按键),到10秒时停止(按键)(如图3.1); 图3.2 图3.3 c.将录制文件加存为D:/MATLAB7/work中,文件名为shijiebei.wav(如图3.2、图3.3和图3.4); 图3.4 第二节 语音信号的时域分析在MATLAB软件平台下,利用MATLAB中的“wavread”命令来读入(采

4、集)语音信号,将它赋值给某一向量。再对其进行采样,记住采样频率和采样点数。通过使用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中。接下来,对语音信号shijieb

5、ei.wav进行采样。其采样程序如下: y,fs,nbits=wavered (E:shejishijiebei);即把语音信号加载入Matlab 仿真软件平台中。然后,画出语音信号的时域波形,再对语音信号进行频谱分析。MATLAB提供了快速傅里叶变换算法FFT计算DFT的函数fft,其调用格式如下:Xk=fft(xn,N)参数xn为被变换的时域序列向量,N是DFT变换区间长度,当N大于xn的长度时,fft函数自动在xn后面补零。,当N小于xn的长度时,fft函数计算xn的前N个元素,忽略其后面的元素。在本次设计中,我们利用fft对语音信号进行快速傅里叶变换,就可以得到信号的频谱特性。其程序如

6、下:y,fs,nbits=wavread ( E:shejishijiebei);sound(y,fs,nbits); %回放语音信号N= length (y) ; %求出语音信号的长度Y=fft(y,N); %傅里叶变换subplot(2,1,1);plot(y);title(原始信号波形subplot(2,1,2);plot(abs(Y);原始信号频谱)程序运行结果如下图:图3.5 原始信号波形及频谱第三节 语音信号加噪和频谱分析MATLAB中产生高斯白噪声非常方便,有两个产生高斯白噪声的两个函数 。我们可以直接应用两个函数:一个是WGN,另一个是AWGN。WGN用于产生高斯白噪声,AWG

7、N则用于在某一信号中加入高斯白噪声。也可直接用randn函数产生高斯分布序列。在本次课程设计中,我们是利用MATLAB中的随机函数(rand或randn)产生噪声加入到语音信号中,模仿语音信号被污染,并对其频谱分析。Randn函数有两种基本调用格式:Randn(n)和Randn(m,n),前者产生nn服从标准高斯分布的随机数矩阵,后者产生mn的随机数矩阵。在这里,我们选用Randn(m,n)函数。语音信号添加噪声及其频谱分析的主要程序如下:N = length (y) ;Noise=0.01*randn(n,2); %随机函数产生噪声Si=y+Noise; %语音信号加入噪声 sound(Si

8、);plot(Si);加噪语音信号的时域波形S=fft(Si);plot(abs(S); title(加噪语音信号的频域波形图3.6 加噪后的波形及频谱分析第三章 滤波器设计第一节 FIR和IIR数字滤波器的选择IIR滤波器和FIR滤波器的设计方法完全不同。IIR滤波器设计方法有间接法和直接法,间接法是借助于模拟滤波器的设计方法进行的。其设计步骤是:先设计过渡模拟滤波器得到系统函数H(s),然后将H(s)按某种方法转换成数字滤波器的系统函数H(z)。FIR滤波器必须采用间接法,常用的方法有窗函数法、频率采样发和切比雪夫等波纹逼近法。对于线性相位滤波器,经常采用FIR滤波器。数字滤波器种类很多,

9、根据其实现的网络结构或者其冲激响应函数的时域特性,可分为两种,即有限冲激响应( FIR,Finite Impulse Response)滤波器和无限冲激响应( IIR,Infinite Impulse Response)滤波器。FIR滤波器结构上主要是非递归结构,没有输出到输入的反馈,系统函数H (z)在极点处收敛,极点全部在z = 0处(因果系统),因而只能用较高的阶数达到高的选择性。FIR数字滤波器的幅频特性精度较之于IIR数字滤波器低,但是线性相位,就是不同频率分量的信号经过fir滤波器后他们的时间差不变,这是很好的性质。FIR数字滤波器是有限的单位响应也有利于对数字信号的处理,便于编程

10、,用于计算的时延也小,这对实时的信号处理很重要。 FIR滤波器因具有系统稳定,易实现相位控制,允许设计多通带(或多阻带)滤波器等优点收到人们的青睐。IIR滤波器采用递归型结构,即结构上带有反馈环路。IIR滤波器运算结构通常由延时、乘以系数和相加等基本运算组成,可以组合成直接型、正准型、级联型、并联型四种结构形式,都具有反馈回路。同时,IIR数字滤波器在设计上可以借助成熟的模拟滤波器的成果,如巴特沃斯、契比雪夫和椭圆滤波器等,在设计一个IIR数字滤波器时,我们根据指标先写出模拟滤波器的公式,然后通过一定的变换,将模拟滤波器的公式转换成数字滤波器的公式。下面我们着重介绍用窗函数法设计FIR滤波器的

11、步骤。如下:(1)根据对阻带衰减及过渡带的指标要求,选择串窗数类型(矩形窗、三角窗、汉宁窗、汉明窗、凯塞窗等),并估计窗口长度N。先按照阻带衰减选择窗函数类型。原则是在保证阻带衰减满足要求的情况下,尽量选择主瓣的窗函数。(2)构造希望逼近的频率响应函数。(3)计算h(n).。(4)加窗得到设计结果。接下来,我们根据语音信号的特点给出有关滤波器的技术指标:低通滤波器的性能指标:fp=1000Hz,fc=1200Hz,As=100db ,Ap=1dB高通滤波器的性能指标:fp=3500Hz,fc=4000Hz,As=100dB,Ap=1dB;带通滤波器的性能指标:fp1=1200Hz,fp2=30

12、00hZ,fc1=1000Hz,fc2=3200Hz,As=100dB,Ap=1dB在Matlab中,可以利用函数fir1设计FIR滤波器,利用函数butter,cheby1和ellip设计IIR滤波器,利用Matlab中的函数freqz画出各步步器的频率响应。hn=fir1(M,wc,window),可以指定窗函数向量window。如果缺省window参数,则fir1默认为哈明窗。其中可选的窗函数有Rectangular Barlrtt Hamming Hann Blackman窗,其相应的都有实现函数。函数butter,cheby1和ellip设计IIR滤波器时都是默认的双线性变换法,所以

13、在设计滤波器时只需要代入相应的实现函数即可第二节 用FIR滤波器语音信号进行滤波一 滤波器的程序设计由频谱图可以看出信号能量集中在低频部分,为了减少无用的高频分量我设计了以下的FIR低通滤波器将其滤除。该设计采用窗函数法(汉明窗)来完成以下指标的低通滤波器。通带截频fp=3000Hz,阻带截频fs=3500Hz,通带最大衰减0.3dB,阻带最小衰减50dB,采样频率fs为信号源采样频率22050Hz。源程序如下:Wp=3000*2*pi;Ws=3500*2*pi;Ap=0.3;As=50;fs=22050;wp=Wp/fs;ws=Ws/fs; %归一化通带截频,阻带截频wdelta=ws-wp

14、; %过渡带宽%由阻带最小衰减指标确定选用汉明窗,并确定其阶数N=ceil(6.6*pi/wdelta) Nw=N;n=0:N-1;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;幅频特性曲线如下所示:图3.7滤波器幅频特性曲线二 滤波前后信号

15、比较x,fs,bits=wavread(shejishijiebei %信号读取sound(x,fs);y=fftfilt(b,y); %滤波输出figure(2)subplot(2,1,1); plot(x),title(输入信号%绘制输入信号subplot(2,1,2);plot(y) % 绘制输出信号时间/s),title(输出信号sound(y,fs);%输入输出频谱X=fft(x);Y=fft(y);figure(3);plot(abs(X);输入信号频谱输出信号频谱时域图如下:图3.8原信号与滤波后时域波形比较频谱图如下:图3.9原信号与滤波后信号频谱图比较第三节 比较回放语音信号

16、经过以上的加噪声滤波处理后,可在Matlab中用函数sound对声音进行回放。其调用格式:sound(y,Fs),sound(y)和sound(y,Fs,bits)。可以察觉滤波前后的声音有明显的变化。通过上面的频谱图可以很清晰地观察到经过滤波后与滤波前存在明显差别,滤波后的频谱比加噪语音信号的频谱清晰,滤波后的声音显得比较低沉,因为原始信号经过低通滤波器后,低通滤波器已经把信号高频部分滤掉了,只剩下低频部分。第四章 心得体会这次课程设计历时一个星期,可以说是苦多于甜,但是可以学的到很多很多的东西,同时不仅可以巩固以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。通过这次设计,进一步

17、加深了对数字信号处理的了解,让我对它有了更加浓厚的兴趣。但是在编写程序时,也遇到了不少问题,特别是程序语法,总是有错误,在细心的检查下,终于找出了错误和警告,排除困难后,程序编译就通过了,心里终于舒了一口气。通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能提高自己的实际动手能力和独立思考的能力。同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固。总的来说,这次课程设计还是比较成功的,在设计中遇到了很多问题,最后在老师的辛勤的指导下,终于游逆而解,有点小小的成就感,终于觉得平时所学的知识有了实用的价值,达到了理论与实际相结合的目的,不仅学到了不少知识,而且锻炼了自己的能力,使自己对以后的路有了更加清楚的认识,同时,对未来有了更多的信心。最后,对给过我帮助的所有同学和各位指导老师再次表示忠心的感谢参考文献1、 陈怀琛.MATLAB及在电子信息课程中的应用M.北京:电子工业出版设,2008.12、 张文.基于MATLAB的语音信号的滤波与实现J.山西电子技术出版社.2008.23、 徐靖涛.基于MATLAB的语音信号分析与处理J重庆科技学院学报2008.1

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1