




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、2014年1月2日语音信号处理及滤波摘要 语音信号处理是研究用数字信号处理技术和语音学知识对语音信号进行处理的新兴学科,是目前发展最为迅速的学科之一。通过语音传递信息是人类最重要,最有效,最常用和最方便的交换信息手段,所以对其的研究更显得尤为重要。Matlab语言是一种数据分析和处理功能十分强大的计算机应用软件,它可以将声音文件变换成离散的数据文件,然后用起强大的矩阵运算能力处理数据。这为我们的本次设计提供了强大并良好的环境。本设计要求自己录制一段自己的语音后,在 MATLAB 软件中采集语音信号、回放语音信号并画出语音信号的时域波和频谱图。 本设计针对现在大部分语音处理软件内容繁多、操作不便
2、等问题,采用MATLAB7.0综合运用GUI界面设计、各种函数调用等来实现语音信号的变频、变幅、傅里叶变换及滤波,程序界面简练,操作简便,具有一定的实际应用意义。目录一:绪论···································
3、83;··········1二:课程设计内容与要求·······························1三:课程设计的原理·····
4、;······························1 3.1.语音的录入与打开·················
5、83;···········1 3.2采样位数与采样频率····························1 3.3时域信号的FFT分析·····
6、3;······················2 3.4数字滤波器设计原理·························
7、183;··2四:课程设计的具体实现·······························34.1语音信号的采集及时频分析···········
8、3;···········34.2 语音信号加噪与频谱分析························44.3语音信号的滤波及频谱分析·········
9、183;·············6 4.4调试分析过程··································
10、83;7 4.5结果分析·······································8五:心得体会········
11、;·································10六:参考文献···············
12、83;·························11一:绪论语音是语言的声学表现,是人类交流信息最自然、最有效、最方便的手段。随着社会文化的进步和科学技术的发展,人类开始进入了信息化时代,用现代手段研究语音处理技术,使人们能更加有效地产生、传输、存储、和获取语音信息,这对于促进社会的发展具有十分重要的意义,因此,语音信号处理正越来越受到人们
13、的关注和广泛的研究。二:课程设计内容与要求本次课程设计要求利用MATLAB对语音信号进行数字信号处理和分析,要求采集语音信号后,在MATLAB软件平台进行频谱分析;并对所采集的语音信号加入干扰噪声,对加入噪声的信号进行频谱分析,设计合适的滤波器滤除噪声,恢复原信号。 三:课程设计的原理3.1语音的录入与打开在MATLAB中,y,fs,bits=wavread('Blip',N1 N2);用于读取语音,采样值放在向量y中,fs表示采样频率(Hz),bits表示采样位数。N1 N2表示读取从N1点到N2点的值(若只有一个N的点则表示读取前N点的采样值)。 sound(x,fs,bi
14、ts); 用于对声音的回放。向量y则就代表了一个信号(也即一个复杂的“函数表达式”)也就是说可以像处理一个信号表达式一样处理这个声音信号。3.2采样位数和采样频率采样位数即采样值或取样值,用来衡量声音波动变化的参数,是指声卡在采集和播放声音文件时所使用数字声音信号的二进制位数。采样频率是指录音设备在一秒钟内对声音信号的采样次数,采样频率越高声音的还原就越真实越自然。采样位数和采样率对于音频接口来说是最为重要的两个指标,也是选择音频接口的两个重要标准。无论采样频率如何,理论上来说采样的位数决定了音频数据最大的力度范围。每增加一个采样位数相当于力度范围增加了6dB。采样位数越多则捕捉到的信号越精确
15、。对于采样率来说你可以想象它类似于一个照相机,44.1kHz意味着音频流进入计算机时计算机每秒会对其拍照达441000次。显然采样率越高,计算机摄取的图片越多,对于原始音频的还原也越加精确。3.3时域信号的FFT分析FFT即为快速傅氏变换,是离散傅氏变换的快速算法,它是根据离散傅氏变换的奇、偶、虚、实等特性,对离散傅立叶变换的算法进行改进获得的。在MATLAB的信号处理工具箱中函数FFT和IFFT用于快速傅立叶变换和逆变换。函数FFT用于序列快速傅立叶变换,其调用格式为y=fft(x),其中,x是序列,y是序列的FFT,x可以为一向量或矩阵,若x为一向量,y是x的FFT且和x相同长度;若x为一
16、矩阵,则y是对矩阵的每一列向量进行FFT。如果x长度是2的幂次方,函数fft执行高速基2FFT算法,否则fft执行一种混合基的离散傅立叶变换算法,计算速度较慢。函数FFT的另一种调用格式为y=fft(x,N),式中,x,y意义同前,N为正整数。函数执行N点的FFT,若x为向量且长度小于N,则函数将x补零至长度N;若向量x的长度大于N,则函数截短x使之长度为N;若x 为矩阵,按相同方法对x进行处理。3.4数字滤波器设计原理数字滤波器的作用是利用离散时间系统的特性对输入信号波形(或频谱)进行加工处理,或者说利用数字方法按预定的要求对信号进行变换。数字滤波器可以理解为是一个计算程序或算法,将代表输入
17、信号的数字时间序列转化为代表输出信号的数字时间序列,并在转化过程中,使信号按预定的形式变化。数字滤波器有多种分类,根据数字滤波器冲激响应的时域特征,可将数字滤波器分为两种,即无限长冲激响应(IIR)滤波器和有限长冲激响应(FIR)滤波器。从性能上来说,IIR滤波器传输函数的极点可位于单位圆内的任何地方,因此可用较低的阶数获得高的选择性,所用的存贮单元少,所以经济而效率高。但是这个高效率是以相位的非线性为代价的。选择性越好,则相位非线性越严重。相反,FIR滤波器却可以得到严格的线性相位,然而由于FIR滤波器传输函数的极点固定在原点,所以只能用较高的阶数达到高的选择性;对于同样的滤波器设计指标,F
18、IR滤波器所要求的阶数可以比IIR滤波器高510倍,结果,成本较高,信号延时也较大;如果按相同的选择性和相同的线性要求来说,则IIR滤波器就必须加全通网络进行相位较正,同样要大增加滤波器的节数和复杂性。整体来看,IIR滤波器达到同样效果阶数少,延迟小,但是有稳定性问题,非线性相位;FIR滤波器没有稳定性问题,线性相位,但阶数多,延迟大。四:课程设计的具体实现4.1语音信号的采集及时频分析 将电脑D:hjjj.wav这一声音文件导入MATLAB软件中,并使用MATLAB绘出采样后的语音信号的时域波形和频谱图。%原语音信号程序Fs=22050;x,FS,bits=wavread(' D:w
19、jy.wav');soundx,FS,bits;x=x(:,1);figure(1);subplot(2,1,1);plot(x);title('语音信号时域波形图'); xlabel('频率(HZ)'); ylabel('耗损(dB)');y=fft(x,3260); f=(Fs/1630)*1:1630; subplot(2,1,2);plot(f(1:1630),abs(y(1:1630); title('语音信号频谱图');xlabel('频率(HZ)'); ylabel('耗损(dB)
20、39;); 运行程序得到语音信号时域和频谱图形所示。4.2语音信号加噪与频谱分析把噪声信号zs=0.05*cos(2*pi*10000*t/22050)添加到语音信号中,得 到加入噪声后信号波形与频谱。%加入噪声信号的程序zt=0:length(x)-1; zs=0.05*cos(2*pi*10000*zt/22050); zs0=0.05*cos(2*pi*10000*zt/22050000);figure(2); subplot(2,1,1); plot(zs0); title('噪声信号波形'); xlabel('时间(t)');ylabel('幅
21、值(dB)'); zs1=fft(zs,1200); subplot(2,1,2); plot(f(1:600),abs(zs1(1:600); title('噪声信号频谱'); xlabel('频率(HZ)');ylabel('耗损(dB)');x1=x+zs' y1=fft(x1,1200); figure(3); subplot(2,1,1); plot(x1); title('加入噪声后的信号波形');xlabel('时间(t)'); ylabel('幅值(dB)'); su
22、bplot(2,1,2); plot(f(1:600),abs(y1(1:600); title('加入噪声后的信号频谱');xlabel('频率(HZ)');ylabel('耗损(dB)'); 噪声信号及加入噪声信号的时域及幅频图如图所示。4.3语音信号的滤波及频谱分析设计巴特沃思低通滤波器。将语音信号和噪音信号叠加可以得到含噪声信号,分析其频谱特性之后用巴特沃思低通滤波器进行语音信号的数字处理滤波。%巴特沃思低通滤波程序x,fs,bits=wavread(' D:wjy.wav');fp=3000;fs=3500;Fs=220
23、50;rp=1;rs=10; wp=2*pi*fp/Fs;ws=2*pi*fs/Fs;Fs1=1; wap=2*tan(wp/2); was=2*tan(ws/2); N,wc=buttord(wap,was,rp,rs,'s'); B,A=butter(N,wc,'s'); Bz,Az=bilinear(B,A,Fs1); figure(4); h,w=freqz(Bz,Az,512,Fs1*22050);plot(w,abs(h); title('巴特沃斯低通滤波器'); xlabel('频率(HZ)'); ylabel(
24、39;耗损(dB)'); grid on; yd=filter(Bz,Az,x1);figure(5); subplot(2,1,1);plot(yd); title('滤波后信号波形'); xlabel('时间(t)');ylabel('幅值(dB)'); ydd=fft(yd,1200); subplot(2,1,2); plot(f(1:600),abs(zs1(1:600); title('滤波后信号频谱');xlabel('频率(HZ)'); ylabel('耗损(dB)'); s
25、ound(yd,FS,bits); 巴特沃斯低通滤波器图 得到滤波后的波形与频谱:4.4调试分析过程 在整个学习的过程中,遇到的问题很多。首先,在采集语音信号时,一时很茫然,不知道该怎么样把语音调用到matlab中去。通过网上参考和阅读书籍,x,FS,bits=wavread('D:hjjj.wav')这个程序可以实现。其次,在显示图像的问题上卡住了,同学间相互探讨就得以解决。出现问题最多的环节是在滤波器设计这一环节。滤波器有很多种:巴特沃斯低通滤波器、巴特沃斯高通滤波器、巴特沃斯带通滤波器等等。最后逐一调试,发现巴特沃斯低通滤波器出来的滤波效果最好,最后决定使用巴特沃斯低通滤
26、波器。4.5结果分析完整的源程序如下:Fs=22050;x,FS,bits=wavread(' D:wjy.wav'); x=x(:,1);figure(1);subplot(2,1,1);plot(x);title('语音信号时域波形图'); xlabel('频率(HZ)'); ylabel('耗损(dB)');y=fft(x,3260); f=(Fs/1630)*1:1630; subplot(2,1,2);plot(f(1:1630),abs(y(1:1630); title('语音信号频谱图');xlabe
27、l('频率(HZ)'); ylabel('耗损(dB)'); %产生噪声信号并加到语音信号zt=0:length(x)-1; zs=0.05*cos(2*pi*10000*zt/22050); zs0=0.05*cos(2*pi*10000*zt/22050000);figure(2); subplot(2,1,1); plot(zs0); title('噪声信号波形'); xlabel('时间(t)');ylabel('幅值(dB)'); zs1=fft(zs,1200); subplot(2,1,2); plo
28、t(f(1:600),abs(zs1(1:600); title('噪声信号频谱'); xlabel('频率(HZ)');ylabel('耗损(dB)');x1=x+zs' y1=fft(x1,1200); figure(3); subplot(2,1,1); plot(x1); title('加入噪声后的信号波形');xlabel('时间(t)'); ylabel('幅值(dB)'); subplot(2,1,2); plot(f(1:600),abs(y1(1:600); title(&
29、#39;加入噪声后的信号频谱');xlabel('频率(HZ)');ylabel('耗损(dB)'); %低通x,fs,bits=wavread(' D:wjy.wav');fp=3000;fs=3500;Fs=22050;rp=1;rs=10; wp=2*pi*fp/Fs;ws=2*pi*fs/Fs;Fs1=1; wap=2*tan(wp/2); was=2*tan(ws/2); N,wc=buttord(wap,was,rp,rs,'s'); B,A=butter(N,wc,'s'); Bz,Az=bi
30、linear(B,A,Fs1); figure(4); h,w=freqz(Bz,Az,512,Fs1*22050);plot(w,abs(h); title('巴特沃斯低通滤波器'); xlabel('频率(HZ)'); ylabel('耗损(dB)'); grid on; yd=filter(Bz,Az,x1);figure(5); subplot(2,1,1);plot(yd); title('滤波后信号波形'); xlabel('时间(t)');ylabel('幅值(dB)'); ydd=fft(yd,1200); subplot(2,1,2); plot(f(1:600),abs(zs1(1:600); title('滤波后信号频谱');xlabel('频率(HZ)'); ylabel('耗损(dB)&
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 浙江农林大学《体育统计学(含体育测量与评价)》2023-2024学年第二学期期末试卷
- 《归去来兮辞》教学设计 2023-2024学年统编版高中语文选择性必修下册
- 天津理工大学中环信息学院《有毒有害物质检测》2023-2024学年第二学期期末试卷
- 中国美术学院《财务信息系统》2023-2024学年第二学期期末试卷
- 西藏警官高等专科学校《全媒体新闻评论》2023-2024学年第二学期期末试卷
- 大连科技学院《工程项目管理A》2023-2024学年第二学期期末试卷
- 广西工商职业技术学院《制药分离工程》2023-2024学年第二学期期末试卷
- 重庆交通大学《会计信息系统(一)》2023-2024学年第二学期期末试卷
- 泸州四川泸州市国有土地上房屋征收补偿中心(泸州市物业管理中心)招聘编外人员笔试历年参考题库附带答案详解
- 泰州2025年江苏泰州市第四人民医院招聘合同制人员27人笔试历年参考题库附带答案详解
- DL∕T 584-2017 3kV~110kV电网继电保护装置运行整定规程
- (正式版)FZ∕T 80018-2024 服装 防静电性能要求及试验方法
- 北师大版八年级下册生物教案全册
- 稳定性冠心病诊断与治疗指南
- DL-T5704-2014火力发电厂热力设备及管道保温防腐施工质量验收规程
- JT-T-610-2004公路隧道火灾报警系统技术条件
- 初中英语比较级和最高级专项练习题含答案
- 大坝安全监测系统验收规范
- 2024年南京铁道职业技术学院单招职业技能测试题库及答案解析
- 校园超市经营投标方案(技术方案)
- 康复医院建筑设计标准
评论
0/150
提交评论