基于matlab的语音识别系统

机电信息工程学院
专业综合课程设计
系:
信息与通信工程
专业:
通信工程
废旧电池的回收与利用
班级:
081
设计题目:
基于matlab语音识别系统
学生姓名:
指导教师:
实物展台
完成日期:20111227
设计任务及要求
1.1设计任务
作为智能计算机研究的主导方向和人机语音通信的关键技术,语音识别技 术一直受到各国科学界的广泛关注。以语音识别开发出的产品应用领域非常广泛,有声控电话交换、语音拨号系统、信息网络查询、家庭服务、宾馆服务、 旅行社服务系统、订票系统、声控智能玩具、医疗服务、银行服务、股票查询 服务、计算机控制、工业控制、语音通信系统、军事监听、信息检索、应急服务、翻译系统等,几乎深入到社会的每个行业、每个方面,其应用和经济社会 效益前景非常广泛。本次任务设计一个简单的语音识别系。
1.2设计要求
要求:使用matlab软件编写语音识别程序
算法方案选择
2.1设计方案
语音识别属于模式识别范畴,它与人的认知过程一样,其过程分为训练和识别两个阶段。 在训练阶段,语音识别系统对输入的语音信号进行学习。学习结束后,把学习内容组成语音模型库存储起来;在识别阶段,根据当前输入的待识别语音信号,在语音模型库中查
出相应的词义或语义。
语音识别系统与常规模式识别系统一样包括特征提取、模式匹配、模型库等3个基本单元,它的基本结构如图1所示
语音识别系统基本结构图
本次设计主要是基于HMM模型(隐马尔可夫模型)。这是在20世纪80年代引入语音识别领域的一种语音识别算法。该算法通过对大量语音数据进行数据统计,建立识别词条的统计模型,然后从待识别语音信号中提取特征,与这些模型进行匹配,通过比较匹配分数以获得识别结果。通过大量的语音,就能够获得一个稳健的统计模型,能够适应实际语音中的各种突发情况。并且,HMM算法具有良好的识别性能和抗噪性能。
2.2方案框图
HMM语音识别系统
2.3隐马尔可夫模型
HMM过程是一个双重随机过程一重用于描述非平稳信号的短时平稳段的统计特征(信号的瞬态特征);另一重随机过程描述了每个短时平稳段如何转变到下一个短时平稳段,即短时统计特征的动态特性(隐含在观察序列中)。人的言语过程本质上也是一个双重随机过程,语音信号本身是一个可观测的时变列。可见,HMM手机应急充电器合理地模仿了这一过程,是一种较为理想的语音信号模型。其初始状态概率向量π,状态转移概率矩阵向量A,以及概率输出向量B一起构成了HMM3个特征参量。HMM 模型通常表示成λ={πAB}
2.4HMM模型的三个基本问题
   
HMM模型的核心问题就是解决以下三个基本问题:
(1)识别问题:在给定的观测序列O和模型λ=A,B,π)的条件下,如何有效地计算λ产生观测序列O的条件概率 P(O︱λ)最大。常用的算法是前后向算法,它可以使其计算量降低到N2T次运算。
(2)最佳状态链的确定:如何选择一个最佳状态序列Q=q1q2…qT,来解释观察序列O。常用的算法是Viterbi算法。
(3)模型参数优化问题:如何调整模型参数λ=(A,B,π),使P(O︱λ)最大:这是三个问题中最难的一个,因为没有解析法可用来求解最大似然模型,所以只能使用迭代法(Baum-Welch)或使用最佳梯度法。
第一个问题是评估问题,即已知模型λ=(A,B,π)和一个观测序列O,如何计算由该模型λ产
生出该观测序列O的概率,问题1的求解能够选择出与给定的观测序列最匹配的 HMM模型。
第二个问题力图揭露模型中隐藏着的部分,即出正确的状态序列,这是一个典型的估计问题。
第三个问题是使模型参数最优化,即调整模型参数,以使模型能最好地描述一个给定观测序列,最好说明这个观测序列就是最优化模型产生出来的。用于调整模型参数,使之最优化的观测序列称为训练序列。通过训练自适应调整模型参数使之适应于训练序列并最优化,从而得到实际应用中最好的模型。
系统设计
3.1系统框图
                  3 系统整体结构框图
3.2实施方案
实施方法及具体过程如下:
    (1)端点检测vad(x):采用双门限的算法。输入为采样语音数据x,输出X1 X2是起始端点和结束端点的帧数,并将xix2帧的语音数据存sample(k)wave无级调速器结构数组中。
    (2)MFCC参数算法mfcc(x):输入为采样语音数据x,输出为mfcc参数,取x1—2x2—2帧的自助式洗衣机mfcc参数到sample(k)data结构数组中。
    (3)HMM参数初始化inithmm(samplesM):输入为samplesNX*1的数组MN为状态数,M是每个状态包含的高斯混合个数。
    (4)viterbit识别算法:输入删模型和mfcc参数,回溯最佳状态路径,返回输出概率和状态路径。
    (5)训练过程train(sampleM):对一次迭代函数baumm实施nir测试次迭代( 置迭代次数)。输出为训练后的HMM模型参数和总输出概率,将模型参数存入 hmm{i}(hmm为一个cell数组)
    (6)识别主程序(recog):对输入待识别的语音用函数vad进行端点检测, 计算出MFCC参数之后,交由识别函数viterbim计算得到其对数形式的输出概率,最后显示出识别结果。
四.心得体会
   
通过这次课题,我们在自己的亲身实践中掌握了有关Labview以及matlab设计的思想和方法,对专业知识有了进一步的理解,对语言识别领域有了初步的认识。我们将以前学习的知识在这次设计中进行了充分的应用,通过解决问题得到了很多实践的经验,有助于我们以后的学习.
通过自己搜集的资料和相关的专业知识,我们完成了理论算法与实际应用的设计,虽然在设计的过程中不断的遇到了很多问题,但是我们克服困难,一步步前进,这不仅丰富了我们的知识,给我们对理论与知识的结合与应用提供了动力,也给我们最后解决问题提供了欣喜的源泉,为我们今后的工作打下了坚实的基础。

参考文献
1. 郭圣权,连晓峰.MATLAB环境下的基于HMM模型的语音识别系统.计算机测量与控制,2004,12(5):470- 475.
2. 王炳锡,屈丹,彭宜.实用语音识别基础.北京:国防工业出版社,2005:258-266.
3. 刘么和.语音识别与控制应用技术.北京:科学出版社,2008: 1- 35.
4. 胡广书.现代信号处理教程.北京:清华大学出版社,2004: 397- 398.

本文发布于:2024-09-25 06:18:15,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/2/153965.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:语音   识别   模型   系统   序列   服务   问题   参数
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议