




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、郑州轻工业学院课程设计说明书题目: 基于MATLAB的语音信号滤波处理和程序设计 姓 名 : 院 (系): 专业班级: 学 号: 指导教师: 成 绩: 时间:2014年6月09日至2014年6月13日基于MATLAB的语音信号滤波处理和程序设计摘 要 MATLAB 语言是一种数据分析和处理功能十分强大的计算机应用软件 ,它可以将声音文件变换为离散的数据文件 , 然后利用其强大的矩阵运算能力处理数据 ,如数字滤波 、傅里叶变换 、时域和频域分析 、声音回放以及各种图的呈现等 , 信号处理是MATLAB 重要应用的领域之一 。本课程设计介绍了基于Matlab的对语音信号采集、处理及滤波器的设计,并
2、使之实现的过程。理解与掌握课程中的基本概念、基本原理、基本分析方法,用Matlab进行数字语音信号处理,并阐述了课程设计的具体方法、步骤和内容。综合运用本课程的理论知识进行频谱分析以及滤波器设计,通过理论推导得出相应结论,并利用MATLAB作为工具进行实现,从而复习巩固课堂所学的理论知识,提高对所学知识的综合应用能力,并从实践上初步实现对数字信号的处理。关键词: MATLAB工具/信号语音采集/滤波目 录摘 要I目 录II1 设计目的、要求和背景11.1 语音信号处理简介11.2 语音信号处理的背景和意义11.3 设计目的22 整体设计过程32.1原理分析32.2 语音信号的获取42.3 语音
3、信号的时域频域分析42.4 干扰信号的构建53 信号变化分析53.1 原始语音信号的程序实现和时域频域图53.2 干扰信号在MATLAB软件中的实现73.3 对原始语音信号加入干扰信号8心得体会13致 谢14III1 设计目的、要求和背景1.1 语音信号处理简介信号处理是现代信息处理的基本内容,数字信号的处理更是重中之重。数字信号处理的研究内容主要是语音信号和图像信号,而研究语音信号对于现代语音通信有着积极的意义。研究语音信号又分为时域和频域两个方面。(1)语音信号的时域分析处理:语音信号的时域分析就是分析和提取语音信号的时域参数。进行语音分析时,最先接触到并且也是最直观的是它的时域波形。语音
4、信号本身就是时域信号,因而时域分析是最早使用,也是应用最广泛的一种分析方法,这种方法直接利用语音信号的时域波形。时域分析通常用于最基本的参数分析及应用,如语音的分割、预处理、大分类等。这种分析方法的特点是:表示语音信号比较直观、物理意义明确。实现起来比较简单、运算且少。可以得到语音的一些重要的参数。只使用示波器等通用设备,使用较为简单等。(2)语音信号的频谱分析处理:语音信号的频域分析就是分析语音信号的频域持征。从广义上讲,语音信号的频域分析包括语音信号的频谱、功率谱、倒频谱、频谱包络分析等,而常用的频域分析方法有带通滤波器组法、傅里叶变换法等几种。本文介绍的是语音信号的傅里叶分析法。因为语音
5、波是一个非平稳过程,因此适用于周期、瞬变或平稳随机信号的标准傅里叶变换不能用来直接表示语音信号,而应该用短时傅里叶变换对语音信号的频谱进行分析,相应的频谱称为“短时谱 ”。本设计是用MATLAB仿真软件设计滤波器对受干扰的语音信号进行滤波处理,并对各部分进行频谱分析。1.2 语音信号处理的背景和意义语音信号处理是一门研究用数字信号处理技术对语音信号进行处理的学科,处理的目的是用于得到的某些参数以便高效传输和存储;或者应用于人工合成、语音识别和语音增强等。同时也是以生理学、心理学、语言学以及声学等学科为基础,以信息论、控制论、系统论的理论做指导,通过应用信号处理、统计分析、模式识别等现
6、代技术手段而发展起来的一门综合性学科。它与语音学、语言学、声学,认知科学、心理学、心理学、数理统计学等许多学科也有着非常密切的联系。它包括语音编码、语音合成、语音识别与理解等三个主要分支。语音编码的目的是将模拟的语音信号用尽可能少的比特实现数字化,使被编码和压缩后的信更有效地在网络中传输或记录在存储器中语音合成的目的是让机器生成人类的自然语言语音识别的目的是使机器能识别人类的语言,从而能够按用户的语音指令完成有关的动作或提供有关的信息服务。语言是从千百万人的言语中历史地概括总结出来的规律符号系统,使人们用以进行思维、交际的形式。人的思考常常是用语言来进行,语言是人类特有的功能,它创造和记载了几
7、千年的人类文明历史。语音是声音和意义的结合体,也是信息的载体,是把语言表述出来的物理形式,是人类最重要、最有效、最常用和最方便的交换信息的形式。 当今世界正处于信息时代,计算机技术、通信技术和电子技术的高速发展,推动人类社会进入了信息社会。因特网和移动通信的普及、电子购物的兴起、多媒体通信及其应用的蓬勃发展,改变了人类生活、工作、娱乐的方式。自计算机诞生以来,通过语音与计算机交互一直是人类的梦想,随着计算机软硬件和信息技术的飞速发展,这不仅对语音信号数字处理提出了越来越高越来越迫切的需求,如实现用语音输入代替键盘输入实现人工智能和交互,同时也为语音信号处理提供了高效软硬件实现的可能性
8、。 简而言之,语音信号处理的任务是实现人一人、人一机器和机器一人的通信,是现代通信领域的重要环节。1.3 设计目的1.了解语音信号的产生、采集,能绘制语音信号的频率响应曲线及频谱图; 2.学会用MATLAB对语音信号进行分析和处理; 3.掌握用滤波器去除语音信号噪声的方法,观察去噪前后的语音信号。1.4 设计要求1.掌握在Windows环境下的语音信号录制的方法2.掌握在MATLAB环境下语音信号的采集3.构建的干扰信号为f(t)=10sin(4000t)4.掌握数字信号的处理的基本概念、基本理论和基本方法5.利用MATLAB设计滤波器对干扰的语音信号进行滤波6.
9、掌握MATLAB的程序设计方法1.5 设计步骤1利用windows下的录音机,录制一段自己的话音“大家好”2利用MATLAB对所录制的信号进行时域和频域的分析3构建一个干扰信号,把语音信号和干扰信号叠加,并且利用MATLAB对干扰后的语音信号进行时域和频域的分析4对干扰后的信号进行滤波,画出滤波后的信号的时域波形和频谱,并对滤波前后的信号进行对比,分析信号的变化.2 整体设计过程2.1原理分析本设计主要是对语音信号的时频进行分析,并对语音信号加噪后设计滤波器对其进行滤波处理,对话音信号加噪声前后的频谱进行比较分析,对合成语音信号滤波前后进行频谱的分析比较。 首先用PC机WINDOWS
10、下的录音机录制一段语音信号,并保存入MATLAB软件的根目录下,再运行MATLAB仿真软件把录制好的语音信号用wavread函数加载入MATLAB仿真软件的工作环境中,输入命令对语音信号进行时域,频谱变换。利用正弦信号产生噪声信号,模拟信号sint经过采样,并且采样的长度必须要和原始语音信号长度一样长,才可以实现噪声信号与原始语音信号的叠加。 把噪声信号加入到录制的语音信号中,用命令可以得到其频谱图。对该段合成的语音信号,用命令在MATLAB中设计一个恰当的滤波器对其进行滤波处理,此处用低通滤波器对其进行滤波,滤波后用命令可以绘制出其频谱图,回放语音信号。对原始语音信号、合成的语音信
11、号和经过滤波器处理的语音信号进行频谱的比较分析。2.2 语音信号的获取利用PC机上的硬件和WINDOWS操作系统可以很方便地进行数字信号的采样。打开电脑Windows窗口菜单中的附录子菜单里的录音机软件,录音机界面如图图(1)所示。使用录音机录制一小段声音片段“大家好”,然后保存文件名为“lgh.wav”,如下图2。图(2)在Matlab中,y,fs,bits=wavread('Blip',N1 N2);用于读取语音,采样值放在向量y中,fs表示采样频率(Hz),bits表示采样位数。N1 N2表示读取从N1点到N2点的值(若只有一个N的点则表示读取前N点的
12、采样值)。 sound(x,fs,bits);用于对声音的回放。向量y则就代表了一个信号(也即一个复杂的函数表达式”)也就是说可以像处理一个信号表达式一样处理这个声音信号。2.3 语音信号的时域频域分析在Matlab软件平台下可以利用函数wavread对语音信号进行采样,得到了声音数据变量y,同时把y的采样频率Fs=8000Hz和数据位Nbits=8Bit放进了MATALB的工作空间。上述程序是在Matlab软件中画出语音信号的时域波形(图3),回放录入声音。从图中可以看出在时域环境下,信号呈现出3个不规则的信号峰值。然后对语音信号进行频谱分析,在Matlab中可以利用函数fft对信
13、号行快速傅里叶变换,得到信号的频谱图如图3所示。2.4 干扰信号的构建在Matlab中人为设计一固定频率的噪声干扰信号。在本设计中用正弦序作为干扰信号。干扰信号为:f(t)=10sin(4000t)。2.5 信号合成在Matlab中把语音信号与噪声信号进行叠加。对其进行播放,并画出其频谱图如图5所示,从图中可以看出,在该语音信号的12000Hz处有一高峰,这正是干扰所造成的。2.6 数字滤波的设计并对加噪信号进行滤波处理数字滤波器分为FIR数字滤波器和IIR数字滤波器两种,可以用硬件和软件来设计实现。软件设计主要有脉冲响应不变法、双线性变换法、窗口函数法。本设计是用窗函数法设计FIR低通滤波器
14、。针对以上语音信号设定滤波器的性能指标用kaiser窗设计低通滤波器。用设计好的带阻滤波器对含噪语音信号进行滤波,在Matlab中FIR滤波器利用函数fftfilt对信号进行滤波,IIR滤波器利用函数filter对信号进行滤波。在一个窗口同时画出滤波前后的波形及频谱如图7所示。3 信号变化分析3.1 原始语音信号的程序实现和时域频域图在matlab软件平台下,利用wavread函数对语音信号进行采样,记住采样频率和采样点数。通过使用wavread函数,理解采样频率、采样位数等概念。wavread函数调用格式y=wavread(file),读取file所规定的wav文件,返回采样值放在向量y中。
15、y,fs,nbits=wavread(file),采样值放在向量y中,fs表示采样频率(hz),nbits表示采样位数。y=wavread(file,N),读取钱N点的采样值放在向量y中。y=wavread(file,N1,N2),读取从N1到N2点的采样值放在向量y中。对语音信号“lgh.wav”进行采样其程序如下: y,fs,bits=wavread('E:MATLAB7worklgh.wav');sound(y,fs)n=length(y)y_p=fft(y,n);f=fs*(0:n/2-1)/n;figure(1)subplot(2,1,1);plot(y);title
16、('原始语音信号时域波形');xlabel('时间轴(s)')ylabel('幅度(A)')subplot(2,1,2);plot(f,abs(y_p(1:n/2);axis(0 20000 0 2000);title('原始语音信号频谱图');xlabel('频率 HZ');ylabel('频率幅度');图(3)原始信号时域、频域图从上图可看出,在时域内,语音信号具有短时性的特点,而在频域内,语音信号的频谱分量主要集中在0-4000HZ的范围内。3.2 干扰信号在MATLAB软件中的实现我们对原始
17、信号加入的干扰信号是f(t)=10sin(4000t)如图4,其程序如下:y,fs,bits=wavread('E:MATLAB7worklgh.wav');n=1000t=(0:n-1)/100000;f=fs*(0:n/2-1)/n;y1=10*sin(2*pi*2000*t);y2=fft(y1,n);subplot(2,1,1);plot(y1)%噪音信号的时域波形图title('噪声信号时域波形图');xlabel('时间轴(s)')ylabel('幅度(A)')subplot(2,1,2);plot(f,abs(y2(
18、1:n/2);title('噪音信号频谱图');xlabel('频率 (HZ)');ylabel('频率幅度(A)');图(4)噪声信号时域、频域图3.3 对原始语音信号加入干扰信号加入噪声后回放的声音与原始的语音信号有明显的不同,其伴随较尖锐的干扰啸叫声。从含噪语音信号的频谱图中可以看出是含噪的语音信号的频谱,在1000Hz处有上高峰,这正是干扰所造成的。程序如下:L=length(y)%计算音频信号的长度t=(0:L-1)/8000;A=10;f=4000;d=A*sin(f*pi*t)' %产生等长度的正弦噪声信号y_z=y+d d
19、; %将两个信号叠加成一个新的信号sound(y_z,fs); %对加噪后的语音信号进行分析n=length(y); %选取变换的点数 y_zp=fft(y_z,n); %对n点进行傅里叶变换到频域f=fs*(0:n/2-1)/n; % 对应点的频率figure(2)subplot(2,1,1);plot(y_z); %加噪语音信号的时域波形图axis(0 130 -15 15);title('加噪语音信号的时域波形图');xlabel('时间轴')ylabel('幅度(A)')subplot(2,1,2);plot(f,abs(y_zp(1:n
20、/2); %加噪语音信号的频谱图axis(0 20000 0 2000);title('加噪语音信号频谱图');xlabel('频率(HZ)');ylabel('频率幅度');图(5)加噪语音信号时域、频域图3.4 用低通滤波器对加噪语音信号进行滤波处理当用低通滤波器(如图6)滤波后的含噪声语音信号,从图上可看出,干扰信号被成功滤除了。具体程序如下:fp=1500;fc=1700;As=100;Ap=1; %(以上为低通滤波器的性能指标)wc=2*pi*fc/fs;wp=2*pi*fp/fs;wdel=wc-wp;beta=0.112*(As-8
21、.7);N=ceil(As-8)/2.285/wdel);wn=kaiser(N+1,beta);ws=(wp+wc)/2/pi;b=fir1(N,ws,wn);figure(3);freqz(b,1); %(此前为低通滤波器设计阶段)接下来为去除噪声信号的程序x=fftfilt(b,y,z);X=fft(x,n);figure(4);subplot(2,2,1);plot(f,abs(y_zp(1:n/2);axis(0 20000 0 2000);title('滤波前信号的频谱');subplot(2,2,2);plot(f,abs(X(1:n/2);axis(0 20000 0 2000);title('滤波后信号频谱');subplot(2,2,3);plot(y_z);title('滤波前信号的波形')axis(0 200000 -15 15);subplot(2,2,4);plot(x);axis(0 200000 -1 1);title('滤波后信号的波形')图(6)数字滤波图(7)滤波前后的时域、频域比较心得体会 为期一周的课程设计结束了,我从中学到了很多东西,通过这次课程设计让我对MATLAB软件有了更清楚熟练度的了解
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 《轻叩诗歌的大门》
- 预防近视从我做起主题班会
- 学校病毒防控知识手册
- 餐饮安全操作培训课件
- 针对性的2024年CFA备考试题及答案
- 江西省丰城市第九中学2024-2025学年高一下学期开学考试历史试题(日新班)(解析版)
- 考生交流会的特许金融分析师试题及答案
- 自然灾害与投资风险试题及答案
- 海南省乐东县2024-2025学年高三下学期2月月考地理试题(解析版)
- 2025届福建省漳州市高三下学期第三次检测历史试题(含解析)
- JBT 14585-2024 信号蝶阀(正式版)
- 文具店合作意向协议书
- JBT 7248-2024 阀门用低温钢铸件技术规范(正式版)
- 2024专升本英语答题卡浙江省
- 2024年荆门市水务局事业单位公开招聘工作人员招聘历年公开引进高层次人才和急需紧缺人才笔试参考题库(共500题)答案详解版
- 中国神话故事绘本火神祝融
- 【劳动教育一等奖教学案例】-二年级劳动教育-《三股辫儿我会编》活动方案
- 五星级酒店前厅管理常用表格
- 《养老护理员》-课件:老年人安全防范及相关知识
- 茶楼棋牌经营管理方案
- 水准测量记录数据自动生成表
评论
0/150
提交评论