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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

基于matlab语音信号的采集与分析.docx

1、基于matlab语音信号的采集与分析毕 业 论 文(设计) 题 目: 基于matlab语音信号的采集与分析 姓 名: 学 院: 理学与信息科学学院 专 业: 电子信息科学与技术 班 级: 学 号: 指导教师: 目 录摘要 iAbstract. ii1 绪论 11.1 选题的背景和意义 11.2语音信号处理的进展 22 系统设计的可行性研究 42.1语音信号处理的概念 42.2语音信号的特点 42.3语音信号处理的要求及可行性 52.4 Matlab仿真软件简介 53 系统设计 73.1系统设计的理论依据 73.2 系统的详细设计 93.2.1图形用户界面制作 93.2.2 系统功能的实现 10

2、4 系统调试及运行 16总结 25致谢 27参考文献: 28基于matlab语音信号的采集与分析电子信息科学与技术专业 马晓敏指导教师 曹红波摘要:语音信号处理是研究用数字信号处理技术对语音信号进行处理的一门学科。语音信号处理的目的是得到某些参数以便高效传输或存储,或者是用于某种应用,如人工合成出语音、辨识出讲话者、识别出讲话内容、进行语音增强等1。本文简要介绍了语音信号采集与分析的发展史以及语音信号的特征、采集与分析方法,并通过PC机录制一段声音,采集语音信号后,在MATLAB软件平台上进行频谱分析,并对所采集的语音信号加入干扰噪声,对加入噪声的信号进行频谱分析,设计合适的滤波器滤除噪声,恢

3、复原信号。利用MATLAB来读入(采集)语音信号,将它赋值给某一向量。再将该向量看作一个普通的信号,对其进行FFT变换实现频谱分析,再依据实际情况对它进行滤波。然后我们还可以通过sound命令来对语音信号进行回放,以便在听觉上来感受声音的变化。关键词:语音信号;采集与分析;信号处理 ; Matlab Audio signal acquisition and analysis based on MatlabStudent major in Electronic information science and technology Name: MaxiaominTutor CaohongboAbs

4、tract: Voice signal processing is a subject that we use digits signal processing to deal with Audio signal. The purpose of the signal processing is to get some certain parameters which is to transport or stored efficiently, or is used in some applications, such as synthesis the voice artificially, r

5、ecognize the speaker, identify the speech content, process speech enhancement and so on. This paper introduces the voice signal acquisition and analysis of the history of the development, as well as the characteristics of speech signal,collection and analysis methods,Recording a voice through the PC

6、 and after the speech signal acquisition, We process the spectrum analysis in MATLAB software platform and add noise interference to the speech signal , and then process signal spectrum analysis to the speech signal adding noise , design appropriate filters filter out noise to restore the original s

7、ignal. Using MATLAB to read (acquisition) speech signal , It is assigned to a vector, Then see the vector as a common signal, and transform their FFT to carry out spectrum analysis, and then it is filtered based on the actual situation. We can also play back on the speech signal though sound command

8、 to feel up the change of the voice.Key words:audio signal; acquisition and analysis; signal processing; MATLAB1 绪论1.1 选题的背景和意义语言是人类特有的功能,它是创造和记载几千年人类文明史的根本手段,没有语言就没有今天的人类文明。语音是语言的声学表现,是相互传递信息的最重要的手段,是人类最重要、最有效、最常用和最方便的交换信息的形式。通过语言相互传递信息是人类最重要的基本功能之一。让计算机能听懂人类的语言,是人类自计算机诞生以来梦寐以求的想法,用现代手段研究语音信号,使人们能更

9、加有效地产生、传输、存储、获取和应用语音信息2。通过语音传递倍息是人类最重要、最有效、最常用和最方便的交换信息的形式。语言是人类持有的功能声音是人类常用的工具,是相互传递信息的最主要的手段。因此,语音信号是人们构成思想疏通和感情交流的最主要的途径。并且,由于语言和语音与人的智力活动密切相关,与社会文化和进步紧密相连,所以它具有最大的信息容量和最高的智能水平3。现在,人类已开始进入了信息化时代,用现代手段研究语音信号,使人们能更加有效地产生、传输、存储、获取和应用语音信息,这对于促进社会的发展具有十分重要的意义。 让计算机能听懂人类的语言,是人类自计算机诞生以来梦寐以求的想法。随着计算机越来越向

10、便携化方向发展,随着计算环境的日趋复杂化,人们越来越迫切要求摆脱键盘的束缚而代之以语音输人这样便于使用的、自然的、人性化的输人方式。作为高科鼓应用领域的研究热点,语音信号采集与分析从理论的研究到产品的开发已经走过了几十个春秋并且取得了长足的进步。它正在直接与办公、交通、金融、公安、商业、旅游等行业的语音咨询与管理工业生产部门的语声控制,电话、电信系统的自动拨号、辅助控制与查询以及医疗卫生和福利事业的生活支援系统等各种实际应用领域相接轨,并且有望成为下一代操作系统和应用程序的用户界面。可见,语音信号采集与分析的研究将是一项极具市场价值和挑战性的工作。我们今天进行这一领域的研究与开拓就是要让语音信

11、号处理技术走进人们的日常生活当中,并不断朝更高目标而努力4。语音信号采集与分析之所以能够那样长期地、深深地吸引广大科学工作者去不断地对其进行研究和探讨,除了它的实用性之外,另一个重要原因是,它始终与当时信息科学中最活跃的前沿学科保持密切的联系并且一起发展。语音信号采集与分析是以语音语言学和数字信号处理为基础而形成的一门涉及面很广的综合性学科,与心理、生理学、计算机科学、通信与信息科学以及模式识别和人工智能等学科都有着非常密切的关系。对语音信号采集与分析的研究一直是数字信号处理技术发展的重要推动力量。因为许多处理的新方法的提出,首先是在语音信号处理中获得成功,然后再推广到其他领域。1.2语音信号

12、处理的进展语音信号处理是研究用数字信号处理技术和语音学知识对语音信号进行处理的新兴的学科,是目前发展最为迅速的信息科学研究领域的核心技术之一。60年代之前的发展主要有:1876年Bell发明电话, 1939年H.Dudley研制成功第一个声码器,1942年Bell实验室发明了语谱仪,1948年美国Haskin实验室研制成功“语图回放机”,1952年Bell实验室研制成能识别十个英语数字的识别器。60年代以后,随着计算机技术的发展,语音信号处理技术获得了长足的进步,计算机模拟实验取代了硬件研制的传统做法。各种突破性的思想不断涌现。20世纪60年代中期形成的一系列数字信号处理的理论和算法,如数字滤

13、波器、快速傅立叶变换(FFT)等是语音信号数字处理的理论和技术基础,主要的有Martin等人为邮局研制了邮政编码阅读机。随着信息科学技术的飞速发展,语音信号处理取得了重大的进展:进入70年代之后,提出了用于语音信号的信息压缩和特征提取的线性预测技术(LPC),并已成为语音信号处理最强有力的工具,广泛应用于语音信号的分析、合成及各个应用领域,以及用于输入语音与参考样本之间时间匹配的动态规划方法;80年代初一种新的基于聚类分析的高效数据压缩技术矢量量化(VQ)应用于语音信号处理中;而用隐马尔可夫模型(HMM)描述语音信号过程的产生是80年代语音信号处理技术的重大发展,目前HMM已构成了现代语音识别

14、研究的重要基石。近年来人工神经网络(ANN)的研究取得了迅速发展,语音信号处理的各项课题是促进其发展的重要动力之一,同时,它的许多成果也体现在有关语音信号处理的各项技术之中5。2 系统设计的可行性研究2.1语音信号处理的概念语音信号处理简称语音处理,是以语音学和数字信号处理为基础而形成的一门综合性学科,处理的目的是要得到一些语音参数以便高效的传输或存储,或者通过处理的某种运算以达到某种用途的要求,例如人工合成出语音,辨识出说话者,识别讲话的内容等。它包括语音编码、语音合成、语音识别和说话人识别四大分支6。语音是人类发音器官发出的、具有一定意义的、能起社会交际作用的声音,能够代表一定的意义,这是

15、语言的声音同自然界其他一切声音的本质区别。人体外的声音自不必说(如钟声、风声、动物叫声、机器声),就是人的发音器官发出的声音,也并非都是语言,如打喷嚏、打嗝儿、打哈欠、咳嗽等等,虽然也传递出了某种信息病了,饱了,困了或是醒了,但声音的发出不是为了交际,而是人体本能的生理反映;又如吹口哨、口技演员的表演、哭、笑等等,这些声音的发出是有目的的,是一定的心理活动的表现,不是单纯的生理现象,但声音同意义之间没有固定的结合关系,不能成为代表意义的声音符号,只能表示情绪,展示技巧。以上这些声音都不是语言7。语言的声音同它所代表的意义是相互依存的统一体,一方面,发音器官发出的声音必须同意义紧密结合、成为一定

16、意义的代表,才能成为语音;另一方面,意义必须借助声音才能成为可被人感知、被人接受的东西,没有声音,意义便无法表达出来。2.2语音信号的特点通过对大量语音信号的观察和分析发现,语音信号主要有下面两个特点:(1)在频域内,语音信号的频谱分量主要集中在3003400Hz的范围内。利用这个特点,可以用一个防混迭的带通滤波器将此范围内的语音信号频率分量取出,然后按8kHz的采样率对语音信号进行采样,就可以得到离散的语音信号。(2)在时域内,语音信号具有“短时性”的特点,即在总体上,语音信号的特征是随着时间而变化的,但在一段较短的时间间隔内,语音信号保持平稳。在浊音段表现出周期信号的特征,在清音段表现出随

17、机噪声的特征8。2.3语音信号处理的要求及可行性 本文简要介绍了语音信号采集与分析的发展史以及语音信号的特征、采集与分析方法,并通过PC机录制一段声音,采集语音信号后,在MATLAB软件平台上进行频谱分析,并对所采集的语音信号加入干扰噪声,对加入噪声的信号进行频谱分析,设计合适的滤波器滤除噪声,恢复原信号。利用MATLAB来读入(采集)语音信号,将它赋值给某一向量。再将该向量看作一个普通的信号,对其进行FFT变换实现频谱分析,再依据实际情况对它进行滤波。然后我们还可以通过sound命令来对语音信号进行回放,以便在听觉上来感受声音的变化。运用Matlab进行仿真分析,最后加入噪声进行滤波处理,比

18、较滤波前后的变化。对语音信号进行研究,是一项极具市场价值和挑战性的工作,但在目前阶段,我们只能基于matlab进行分析仿真,经调试和分析,系统是可行的。2.4 Matlab仿真软件简介MATLAB是矩阵实验室(Matrix Laboratory)的简称,是美国MathWorks公司出品的商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和Simulink两大部分。MATLAB和Mathematica、Maple并称为三大数学软件。它在数学类科技应用软件中在数值计算方面首屈一指。MATLAB可以进行矩阵运算、绘制函数和数据、实现算法、

19、创建用户界面、连接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。MATLAB的基本数据单位是矩阵,它的指令表达式与数学、工程中常用的形式十分相似,故用MATLAB来解算问题要比用C,FORTRAN等语言完成相同的事情简捷得多,并且mathwork也吸收了像Maple等软件的优点,使MATLAB成为一个强大的数学软件。在新的版本中也加入了对C,FORTRAN,C+ ,JAVA的支持。可以直接调用,用户也可以将自己编写的实用程序导入到MATLAB函数库中方便自己以后调用,此外许多的MATLAB爱好者都编写了一些经典的程序,用户可以

20、直接进行下载就可以用9。 图形用户界面或图形用户接口(Graphical User Interface,GUI)是指采用图形方式显示的计算机操作环境用户接口。与早期计算机使用的命令行界面相比,图形界面对于用户来说更为简便易用。GUIDE是Matlab提供的图形用户界面开发环境,提供了一系列用于创建图形用户界面的工具,从而简化界面布局和编程工作。MATLAB 的应用范围非常广,包括信号和图像处理、通讯、控制系统设计、测试和测量、财务建模和分析以及计算生物学等众多应用领域。附加的工具箱(单独提供的专用 MATLAB 函数集)扩展了 MATLAB 环境,以解决这些应用领域内特定类型的问题。3 系统设

21、计3.1系统设计的理论依据 采样定理在进行模拟/数字信号的转换过程中,当采样频率fs.max大于信号中,最高频率fmax的2倍时,即:fs.max=2fmax,则采样之后的数字信号完整地保留了原始信号中的信息,一般实际应用中保证采样频率为信号最高频率的510倍;采样定理又称奈奎斯特定理。 1924年奈奎斯特(Nyquist)就推导出在理想低通信道的最高大码元传输速率的公式:理想低通信道的最高大码元传输速率=2W*log2 N (其中W是理想低通信道的带宽,N是电平强度) 采样频率采样频率(也称为采样速度或者采样率)定义了每秒从连续信号中提取并组成离散信号的采样个数,它用赫兹(Hz)来表示。采样

22、频率的倒数是采样周期或者叫作采样时间,它是采样之间的时间间隔。采样频率只能用于周期性采样的采样器,对于非周期性采样的采样器没有规则限制。采样频率与声音频率之间有一定的关系,根据奎斯特理论,只有采样频率高于声音信号最高频率的两倍时,才能把数字信号表示的声音还原成为原来的声音。这就是说采样频率是衡量声卡采集、记录和还原声音文件的质量标准。 语音的录入与打开在MATLAB中,y,fs,bits=wavread(Blip,N1 N2);用于读取语音,采样值放在向量y中,fs表示采样频率(Hz),bits表示采样位数。N1 N2表示读取从N1点到N2点的值(若只有一个N的点则表示读取前N点的采样值)10

23、。 sound(x,fs,bits); 用于对声音的回放。向量x则就代表了一个信号(也即一个复杂的“函数表达式”)也就是说可以像处理一个信号表达式一样处理这个声音信号。 时域信号的FFT分析FFT即为快速傅氏变换,是离散傅氏变换的快速算法,它是根据离散傅氏变换的奇、偶、虚、实等特性,对离散傅立叶变换的算法进行改进获得的11。在MATLAB的信号处理工具箱中函数FFT和IFFT用于快速傅立叶变换和逆变换。函数FFT用于序列快速傅立叶变换,其调用格式为y=fft(x),其中,x是序列,y是序列的FFT,x可以为一向量或矩阵,若x为一向量,y是x的FFT且和x相同长度;若x为一矩阵,则y是对矩阵的每

24、一列向量进行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进行处理。 语音信号的频域分析语音信号的频域分析就是分析语音信号的频域持征。从广义上讲,语音信号的频域分析包括语音信号的频谱、功率谱、倒频谱、频谱包络分析等,而常用的频域分析方法有带通滤波器组法、傅里叶变换法、线件预测法等几种。本文

25、介绍的是语音信号的傅里叶分析法。因为语音波是一个非平稳过程,因此适用于周期、瞬变或平稳随机信号的标准傅里叶变换不能用来直接表示语音信号,而应该用短时傅里叶变换对语音信号的频谱进行分析,相应的频谱称为“短时谱 ”。 数字滤波器设计原理数字滤波是数字信号分析中最重要的组成部分之一,与模拟滤波相比,它具有精度和稳定性高、系统函数容易改变、灵活性强、便于大规模集成和可实现多维滤波等优点。在信号的过滤、检测和参数的估计等方面,经典数字滤波器是使用最广泛的一种线性系统。数字滤波器的作用是利用离散时间系统的特性对输入信号波形(或频谱)进行加工处理,或者说利用数字方法按预定的要求对信号进行变换。 数字滤波器的

26、设计步骤不论是IIR滤波器还是FIR滤波器的设计都包括三个步骤: 按照实际任务的要求,确定滤波器的性能指标。 用一个因果、稳定的离散线性时不变系统的系统函数去逼近这一性能指标。根据不同的要求可以用IIR系统函数,也可以用FIR系统函数去逼近。 利用有限精度算法实现系统函数,包括结构选择、字长选择等。 IIR滤波器与FIR滤波器的性能比较FIR:Finite Impulse response,有限冲击响应IIR:Infinite Impulse response,无限冲击响应从性能上来说,IIR滤波器传输函数的极点可位于单位圆内的任何地方,因此可用较低的阶数获得高的选择性,所用的存贮单元少,所以

27、经济而效率高。但是这个高效率是以相位的非线性为代价的。选择性越好,则相位非线性越严重。相反,FIR滤波器却可以得到严格的线性相位,然而由于FIR滤波器传输函数的极点固定在原点,所以只能用较高的阶数达到高的选择性;对于同样的滤波器设计指标,FIR滤波器所要求的阶数可以比IIR滤波器高510倍,结果,成本较高,信号延时也较大;如果按相同的选择性和相同的线性要求来说,则IIR滤波器就必须加全通网络进行相位较正,同样要大增加滤波器的节数和复杂性12。3.2 系统的详细设计3.2.1图形用户界面制作MATLAB中图形用户界面的制作有两种方法:M文件和GUIDE,本设计采用GUIDE的方法制作GUI。 新

28、建一个空白GUI模板:进入MATLAB程序界面以后执行FileNewGUI过程,即可进入。 选择空白模板选项条,单击OK,一个空白GUI模板生成 拖拉白色框的右下角调整界面大小,现在就可以开始设计GUI功能界面了。从左边控件框选择所需要的控件放置在GUI面板中,然后对各个控件进行编辑,包括位置、大小、颜色、名称以及编写回调函数等。本设计主要用到坐标系和按钮,现分别介绍。 按钮设计:按钮键又称命令按钮或按钮,是小的长方形屏幕对象,常常在对象本身标有文本。将鼠标指针移至对象,单击鼠标按钮执行由回调字符串所定义的动作。单击空间框左侧的Push Button按钮,在图形编辑框中确定其位置后单击鼠标左键

29、即可放置。现在开始编写回调函数,确定按钮功能。在按钮上单击鼠标右键,选择view- callbackscallback即可在M文件中找到该按钮的回调函数位置。然后编写功能函数,本设计中该按钮的功能是绘制原始波形,那么只需要读取语音信号并画出波形。 坐标系设计:坐标轴对象是许多图形对象的父对象,每一个可视化显示用户数据的图形窗口都包含一个或多个坐标轴对象。坐标轴对象确定了图形窗口的坐标系统,所有绘图函数都会使用当前坐标轴对象或创建一个新的坐标轴对象,用于确定其绘图数据点在图形中的位置。单击空间框左侧的Axes按钮,在图形编辑框中确定其位置后单击鼠标左键即可放置。本次课程设计的最终图形用户界面如图

30、3-1所示。图3-1图形用户界面总体图3.2.2 系统功能的实现 信号的打开在“打开信号”按钮上单击鼠标右键,选择view- callbackscallback,在M文件中找到该按钮的回调函数位置,然后编写功能函数。功能函数如下。global I; global X; %定义全局变量global magX; global angX; H=*.wav; %定义打开信号的格式filename,pathname=uigetfile(H,请选择打开文件); file=strcat(pathname,filename); %文件的路径和文件名I=wavread(file); %打开文件X=fft(I,4

31、096);magX=abs(X); angX=angle(X); %取变换后的幅值和角度plot(I);title(原始信号波形); %显示信号波形 声音的播放 在“声音播放”按钮上单击鼠标右键,选择view- callbackscallback,在M文件中找到该按钮的回调函数位置,然后编写功能函数。功能函数如下。global I;sound (I); %播放声音信号执行此程序,系统会播放xinhao.wav的声音。 信号幅度、频谱和相位波形的显示 在“幅度”按钮上单击鼠标右键,选择view- callbackscallback,在M文件中找到该按钮的回调函数位置,然后编写功能函数。功能函数如

32、下。global I; global X;global magX; global angX; %定义全局变量X=fft(I,4096);magX=abs(X); angX=angle(X); %取变换后的幅值和角度plot(magX);title(原始信号幅值); %显示信号幅度波形信号频谱波形和相位波形的显示程序和信号幅度波形的显示程序类似,只需修改最后一行,分别改为plot(X); title(原始信号频谱)和plot(angX);title(原始信号相位)即可。 信号的定点分析 在“定点分析”按钮上单击鼠标右键,选择view- callbackscallback,在M文件中找到该按钮的回

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

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