dtw算法原理分析与源码

dtw算法原理分析与源码

ID:13752179

大小:89.00 KB

页数:28页

时间:2018-07-24

dtw算法原理分析与源码_第1页
dtw算法原理分析与源码_第2页
dtw算法原理分析与源码_第3页
dtw算法原理分析与源码_第4页
dtw算法原理分析与源码_第5页
资源描述:

《dtw算法原理分析与源码》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、引言随着时代的发展,人们越来越注重生活的品质。便捷时尚成为当代人们的追求目标。现在,语音信号处理的技术趋于完善,语音识别技术的应用有两个发展方向:一个是大词汇量连续语音识别系统,主要应用于计算机的听写输入等;另一个是小型化﹑便携式语音模块的应用,如手机的拨号﹑汽车设备的语音控制等方面的应用,这些应用大多都需要使用硬件实现。在此次课程设计中,我们引用现今较为成熟的语音信号处理技术,设计一个简单的非实时语音信号识别系统。其主要技术指标是识别率和计算量,其关键是特征参数的提取和模式识别方法。测试模板将预先录制好的0-9的语音文件用按键方式输入,经过A

2、/D转换芯片0809后转化为数字信号,在单片机AT89C52中,先用端点检测将语音中有用的语音部分提取出来(即将头部和尾部的静音部分除掉),然后用LPC算法提取语音信号的特征参数,进行动态归整(DTW算法)后与模板库里面的标准语音作比较,最后将识别结果进行D/A转化后播放出来。在本部分的设计中,则主要完成语音识别的模式匹配算法部分的软件实现。1为什么要用DTW算法孤立词识别方案主要有:(1)采用动态规划(DynamicProgramming)的方法。这是一种运算量较大,但技术上较简单,正识率也较高的方法。其中的失真测度可以用欧氏距离(适于短时谱

3、或倒谱参数),也可以用对数似然比距离(适于LPC参数).决策方法可用最近邻域准则.(2)采用矢量量化(Vector Quantization)的方法.它既可用于语音通信中的波形或参数的压缩,也可用于语音识别.尤其有限状态矢量量化(FSVQJ)方法,对于语音识别更为有效。决策方法一般用最小平均失真准则。(3)采田隐马尔柯夫横型(HMM)的方法,该模型的参数既可以用离散概率分布函数,也可以用最新的连续概率密度函数(如:正态高斯密度,高斯自回归密度等)。决策方法则用最大后验概率准则.(4)采用混合技术的方法。例如:用矢量量化作为第一级识别(作为预处理

4、,从而得出若干候选的识别结果),然后,再用DTW或HMM方法做最后的识别,因此,可有VQ/DTW和VQ/HMM等识别方法.目前,语音识别的匹配主要应用HMM和DTW两种算法。DTW算法由于没有一个有效地用统计方法进行训练的框架,也不容易将低层和顶层的各种知识用到语音识别算法中,因此在解决大词汇量、连续语音、非特定人语音识别问题时较之HMM算法相形见绌。HMM是一种用参数表示的,用于描述随机过程统计特性的概率模型。而对于孤立词识别,HMM算法和DTW算法在相同条件下,识别效果相差不大,又由于DTW算法本身既简单又有效,但HMM算法要复杂得多。它需

5、要在训练阶段提供大量的语音数据,通过反复计算才能得到参数模型,而DTW算法的训练中几乎不需要额外的计算。鉴于此,DTW更适合本系统的要求。2DTW算法原理在孤立词语音识别中,最为简单有效的方法是采用DTW(DynamicTimeWarping,动态时间归整)算法,该算法基于动态规划(DP)的思想,解决了发音长短不一的模板匹配问题,是语音识别中出现较早、较为经典的一种算法。用于孤立词识别,DTW算法与HMM算法在训练阶段需要提供大量的语音数据,通过反复计算才能得到模型参数,而DTW算法的训练中几乎不需要额外的计算。所以在孤立词语音识别中,DTW算

6、法仍然得到广泛的应用。无论在训练和建立模板阶段还是在识别阶段,都先采用端点算法确定语音的起点和终点。已存入模板库的各个词条称为参考模板,一个参考模板可表示为R={R(1),R(2),……,R(m),……,R(M)},m为训练语音帧的时序标号,m=1为起点语音帧,m=M为终点语音帧,因此M为该模板所包含的语音帧总数,R(m)为第m帧的语音特征矢量。所要识别的一个输入词条语音称为测试模板,可表示为T={T(1),T(2),……,T(n),……,T(N)},n为测试语音帧的时序标号,n=1为起点语音帧,n=N为终点语音帧,因此N为该模板所包含的语音帧

7、总数,T(n)为第n帧的语音特征矢量。参考模板与测试模板一般采用相同类型的特征矢量(如MFCC,LPC系数)、相同的帧长、相同的窗函数和相同的帧移。假设测试和参考模板分别用T和R表示,为了比较它们之间的相似度,可以计算它们之间的距离 D[T,R],距离越小则相似度越高。为了计算这一失真距离,应从T和R中各个对应帧之间的距离算起。设n和m分别是T和R中任意选择的帧号,d[T(n),R(m)]表示这两帧特征矢量之间的距离。距离函数取决于实际采用的距离度量,在DTW算法中通常采用欧氏距离。若N=M则可以直接计算,否则要考虑将T(n)和R(m)对齐。对

8、齐可以采用线性扩张的方法,如果N

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。