基于MATLAB的语音倒谱分析-毕业论文_第1页
基于MATLAB的语音倒谱分析-毕业论文_第2页
基于MATLAB的语音倒谱分析-毕业论文_第3页
基于MATLAB的语音倒谱分析-毕业论文_第4页
基于MATLAB的语音倒谱分析-毕业论文_第5页
已阅读5页,还剩30页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

海 南 大 学 毕 业 论 文(设计) 题目:基于 MATLAB 的语音倒谱分析 学号: 姓名 年级 学院: 专业: 指导教师: 完成日期:2012 年 6 月 基于 MATLAB 的语音倒谱分析 I 摘摘要要 语言是人类最重要的交流工具,它自然方便、准确高效。随着社会的不断发 展, 各种各样的机器参与了人类的生产活动和社会活动,因此改善人与机器之间 的关系,使人对机器的操纵更加便利就显得越来越重要。随着电子计算机和人工 智能机器的广泛应用,人们发现,人和机器之间最好的通信方式是语言通信,而 语音是语言的声学表现形式。要使机器听的懂人话,就要对语音信号进行处理。 随着信息技术的不断发展,尤其是网络技术的日益普及和完善,语音信号处理技 术正发挥着越来越重要的作用。 为了寻找具有良好性能的特征及提取重要参数以 提高识别系统性能,各种科学的算法应运而生,倒谱法作为信号处理的重要的方 法之一,能够得到比较好的识别性能。 本文以 MATLAB 为平台,通过编程实现对语音信号的倒谱分析。首先,本 文简要说明了倒谱与语音的相关理论原理,包括倒谱原理和语音的组成元素,为 之后的进一步研究奠定理论基础。然后,对语音倒谱各个方面的应用进行了 MATLAB 编程,得到了语音基音检测和共振峰检测的实验仿真结果。 关键词关键词:语音信号;倒谱;MATLAB;基音检测;共振峰检测; 基于 MATLAB 的语音倒谱分析 II Abstract Language is one of the most important communication tools, it is convenient and efficient. With the continuous development of the society, a variety of machines are used in the humans production and social activities, thus improving the relationship between man and machinemakes the machine more convenient what becomes more and more important. With the wide application of electronic computers and artificial intelligence machine, it was discovered that language communication is the best means of communication between man and machine, while the voice is the acoustic manifestations of the language.To make the machine understandspeople, it is necessary to process the speech signal. With the continuous development of IT, especially the growing popularity of network technology and improvement of the voice signal processing technology is playing an increasingly important role, in order to find a good performance characteristics and extract important parameters to improve the performance of the recognition system, a variety of scientific algorithms have emerged, the cepstrum, as the signal processing one of the important methods, can get better recognition performance. MATLAB as a platform, can achieve cepstrum analysis of the speech signal by programming. First, the article briefly described the itheoretical principles of cepstrum and voice, including the the cepstrum principles and elements of voice,which laied the theoretical foundation for the further research . Then the speech cepstrum application in all aspects was programmed in MATLAB, thus wegot voice pitch detection , peak detection experiment simulation results by simulation. Keywords:speech signal; cepstrum;MATLAB; pitch detection; resonance peak detection; 基于 MATLAB 的语音倒谱分析 III 目目录录 1 绪论.1 1.1 目的及意义.1 1.2 语音信号研究现状.1 1.3 主要研究内容.3 2 倒谱的基本原理.5 2.1 复倒谱和倒谱的定义.5 2.2 复倒谱的计算方法.6 2.3 复倒谱与倒谱的关系.9 3 语音信号的组成分析.11 3.1 语音的两个分量.11 3.2 语音类型.13 4 语音倒谱的应用及 MATLAB 仿真. 15 4.1 倒谱的 MATLAB 实现.15 4.2 倒谱在同态信号处理系统的应用.16 4.3 倒谱在基音检测方面的应用.17 4.4 倒谱在共振峰检测方面的应用.21 5 总结.25 致谢.26 参考文献.27 附录 A.28 附录 B.28 附录 C.30 基于 MATLAB 的语音倒谱分析 1 1绪论绪论 1.11.1 目的及意义目的及意义 由于语言是人们在日常生活中的主要交流手段, 因此语音信号处理在现代信 息社会中占用重要地位。随着语音信号处理技术在实际生活中的应用的不断发 展,语音信号处理技术已经越来越贴近人们的生活。目前,语音信号处理技术处 于蓬勃发展的时期,不断有新的产品被研制开发,市场需求逐渐增加,具有良好 的应用前景。语音信号处理虽然包括语音通信,语音合成,语音识别等内容,但 是其前提和基础是对语音信号进行分析。 在语音信号处理中可以常用倒谱域来提 取语音的基频和共振峰,用于语音识别。倒谱系数是一种表征语音特征非常有效 的参数矢量, 它能将语音信号的声门激励信息及声道响应信息分离开来, 也就是 说倒谱具有解卷的特性,因此倒谱是说话人识别和语音识别中最常用的特征参数 之一。 由于倒谱在语音信号处理中的重要地位,倒谱的应用也越来越广泛。例如可 应用于通信、建筑声学、地震分析、地质勘探和语音处理等领域。尤其在语音处 理方面,应用复倒谱算法可制成同态预测声码器系统,用于高度保密的通信。 1.21.2 语音信号研究现状语音信号研究现状 声学是物理学的一个分支学科,而语言声学又是声学的一个分支学科。 它 主要的研究方向是人的发声器官机理,发声器官的类比线路和数学模型,听觉器 官的特性(如听阈、掩蔽、临界带宽、听力损失等) ,听觉器官的数学模型,语 音信号的物理特性(如频谱特性、声调特性、相关特性、概率分布等) ,语音的 清晰度和可懂度等。当今通信和广播的发展非常迅速,而语言通信和语言广播仍 然是最重要的部分,语言声学则是这些技术科学的基础。语言声学的发展和电子 学、计算机科学有着非常密切的关系。 在它发展的过程中,有过几次飞跃。第 一次飞跃是 1907 年电子管的发明和 1920 年无线电广播的出现。因为有了电子 管放大器,很微弱的声音也可以放大,而且可以定量测量。从而使电声学和语言 基于 MATLAB 的语音倒谱分析 2 声学的一些研究成果,扩展到通信和广播部门。第二次飞跃应该是在 20 世纪 70 年代初,由于电子计算机和数字信号处理的发展,人们发现:声音信号特别是语音 信号,可以通过模数转换器(A /D)采样和量化,它们转换为数字信号后,能够送 进计算机.这样就可以用数字计算方法,对语音信号进行处理和加工.。例如频谱 分析可以用傅里叶变换或快速傅里叶变换( FFT)实现,数字滤波器可以用差分方 程实现. 在这个基础上,逐渐形成了一门新学科语音信号处理。它的发展 很快,在通信、自动控制等领域,解决了很多用传统方法难以解决的问题。在信 息科学中占有很重要的地位,其中语音识别的研究也开始了飞速的发展。 语音识别的研究工作可以追溯到 20 世纪 50 年代 AT else a=0; end pitch=a %画图 figure(1); subplot(3,1,1); plot(time1,y); title(语音波形); axis tight ylim=get(gca,ylim); line(time1(startIndex),time1(startIndex),ylim,color,r); line(time1(endIndex),time1(endIndex),ylim,color,r); xlabel(样点数); ylabel(幅度); subplot(3,1,2); 基于 MATLAB 的语音倒谱分析 30 plot(frame); axis(0,400,-0.5,0.5) title(一帧语音); xlabel(样点数); ylabel(幅度); subplot(3,1,3); time2=-199:1:-1,0:1:200; plot(time2,cepstrum1); axis(-200,200,-0.5,0.5) title(一帧语音的倒谱); xlabel(样点数); ylabel(幅度); 附录附录 C clear all; y,fs,nbits=wavread(C:Documents and SettingsAdministrator桌面woo2.wav); frameSize=floor(40*fs/1000);%帧长 startIndex=round(45000);%起始序号 endIndex=startIndex+frameSize-1;%结束序号 frame=y(startIndex:endIndex);%取出该帧 frameSize=length(frame); frame2=frame.*hamming(length(frame);%加汉明窗 rwy=rceps(frame2);%求倒谱 ylen=length(rwy); cepstrum=rwy(1:ylen/2); %基音检测 LF=floor(fs/500); HF=floor(fs/70); cn=cepstrum(LF:HF); mx_cep ind=max(cn); %共振峰检测核心代码: %找到最大的突起的位置 NN=ind+LF; ham=hamming(NN); cep=cepstrum(1:NN); ceps=cep.*ham;%汉明窗 formant1=20*log(abs(fft(ceps); formant(1:2)=formant1(1:2); for t=3:NN 基于 MATLAB 的语音倒谱分析 31 %-do some median filtering z=formant1(t-2:t); md=median(z); formant2(t)=md; end for t=1:NN-1 if t=2 formant(t)=formant2(t); else formant(t)=formant2(t-1)*0.25+formant2(t)*0.5+formant2(t+1)*0.25; end end subplot(3,1,1); plot(cepstrum); title(倒谱); xlabel(样点数); ylabel(幅度); axis(0,160,-0.5,0.5) spectral=20*log10(abs(fft(frame2); subplot(3,1

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论