基于语音识别专用芯片的非特定人语音识别、语音提示方法

文档序号:2818890阅读:740来源:国知局
专利名称:基于语音识别专用芯片的非特定人语音识别、语音提示方法
技术领域
本发明属于语音技术领域,尤其涉及采用8位或16位单片MCU微控制器实现小词表特定人、非特定人语音识别方法。特别适合用于8位微控制器的语音识别专用芯片。
特定人语音识别专用芯片,近年来在国外发展很快。国外一些语音技术和半导体公司都投入大量人力和物力开发语音识别专用芯片,并对自己的语音识别方法进行专利保护。这些专用芯片的语音识别性能也各不相同。通常语音识别的过程如

图1所示,输入的语音信号首先经过A/D进行采样,频谱整形加窗预加重处理,提高高频成分,进行实时特征参数提取,提取的参数为线性预测倒谱系数(LPCC)或Me1频标倒谱系数(MFCC),然后进行端点检测,提取有效语音参数,并进行语音识别模板训练或语音识别模板匹配,并将最好的识别结果输出。其专用芯片的硬件系统一般如图2所示,包括执行语音识别和语音合成方法的8位或16位单片MCU微控制器及与其相连的自动增益控制(AGC)、音频前置放大器、低通滤波器、数/模(A/D)、模/数(D/A)、音频功率放大器、语音合成器、随机存储器(RAM)、只读存储器(ROM)、脉宽调制(PWM)。目前美国Sensory公司生产的语音识别专用芯片RSC-164系列产品是目前国际上可以买到识别性能最好专用芯片之一。这些语音识别专用芯片已经用于不同的手机和无绳电话中。随着语音识别技术提高,语音识别专用芯片将被广泛地应用于各种家用电器和控制系统中,形成信息家电产业,这是一个迅速发展而且潜力很大的新兴高科技产业。目前Philips公司和韩国三星公司推出的具有特定人语音识别声控拨号功能的手机。识别人名的个数为10~20个。而且并不具有非特定人语音识别的能力。目前还未见到基于专用芯片的非特定人的中文语音识别方法,非特定人的英文语音识别方法也只能识别极少量词汇,如yes、no等。
本发明的目的是为克服已有技术的不足之处,提出一种基于语音识别专用芯片的非特定人语音识别、语音提示方法,可在廉价8位单片或16位MCU微控制器实现高精度特定人语音识别,具有方法复杂度低,识别精度高和稳健性好的特点。特别是对汉语数码语音识别性能达到、甚至超过当前的国际先进水平。
本发明提出一种基于语音识别专用芯片的非特定人语音识别、语音提示方法,包括A/D采样,频谱整形加窗预加重处理,特征参数提取,端点检测,语音识别模板训练,语音识别模板匹配,识别结果输出,以及语音合成,其特征在于,具体包括以下步骤A、非特定人语音识别的预先训练训练过程要求有大量的语音库,训练过程在PC机上完成,将训练后的模板存入芯片中,其训练方法包括采用基于多项式的分类方法;识别模型的参数用多项式的系数来表示;通过多项式来逼近后验概率;模型参数通过线性方程组的优化计算方法求得;B、语音识别参数提取(1)语音信号输入后采用A/D进行采样,成为原始的数字语音,采用电平增益控制,以确保采样的高精度;(2)对所说的原始数字语音信号进行频谱整形及分帧加窗处理,以保证分帧语音的准平稳性;(3)对所说的分帧语音的特征进行语音特征提取,主要特征参数采用线性预测倒频谱系数(LPCC),并存储用于后面动态分段和模板提取;(4)使用语音信号的过零率与短时能量特征进行端点检测,去除无声区的语音帧,以保证各帧语音特征的有效性;C、非特定人语音命令的识别识别过程采用两级识别结构,分为粗识别和精识别。对不容易混淆的命令粗识别就可以得出结果,对易于混淆的命令通过更精细的模型进行识别;D、非特定人语音识别的说话人自适应学习对说话人具有地方口音或说话不规范时,识别系统会造成误判,采用说话人自适应方法对识别模板进行调整;所说的自适应调整方法采用最大后验概率方法,通过迭代方法逐步修正识别模板参数;E.语音提示语音提示使用语音合成与语音编解码技术,但考虑到系统资源的限制,应该尽可能减小系统的开销;语音合成模型参数分析提取过程在计算机上完成,然后存储在芯片中,因此语音分析参数提取方法可以非常复杂,从而保证有高质量的合成语音,但需要存储的语音合成模型参数应尽可能少,语音合成方法也要尽可能简单;本发明的语音合成模型使用多脉冲语音合成模型。
所说的语音特征提取中的电平增益控制可包括对输入语音信号采样精度进行判断,如果输入语音信号采样精度不够高,通过自适应电平控制,调整语音的放大量,提高语音采样精度;所说的端点检测方法为根据设定的端点门限,搜索静音段,确定语音的起、始端点;所说的倒谱参数是根据语音的线性预测模型(LPC)计算得到。
所说的语音识别的预先训练方法中的识别模型训练过程可为建立要识别语音命令的数据库,然后提取语音的特征参数,特征参数提取的过程与前面相同。通过迭代的学习过程,提取基于多项式的分类模型的识别参数。学习过程采用次优方法,每次调整多项式的分类模型中一个参数,直到所要求的模型参数都计算出来;整个训练过程在计算机上完成,最后将训练后得出的模型参数存入语音识别专用芯片中,作为识别模型;这是与特定人语音识别不同的地方;所说的语音命令识别方法的中识别过程可为计算每个多项式的分类模型的输出结果,取输出概率最大的模型为识别结果;识别过程采用粗识别和精识别两级识别;其区别在于粗识别的模型参数较少,识别速度快,精识别模型参数较多。对易于混淆的命令通过精识别可以提高识别率。
所说的语音命令的识别方法中的自适应采用模型自适应调整技术,对识别错误的语音命令,通过自适应学习后,识别率可以明显改进。自适应过程可为输入要求自适应的语音数据,采用基于最大后验概率的自适应方法,通过迭代分别对语音识别参数进行调整,使模型之间鉴别测度保持最大鉴别性。
所说的语音提示中的采用语音合成方法,具体可包括以下步骤(1)使用多脉冲语音合成模型,在PC机上通过优化方法提取语音合成模型的LPC参数与激励参数。
(2)LPC参数的量化用10个比特进行矢量量化;LPC模型的激励脉冲的个数为25个,采用一阶基音周期环路,这些参数使用189个比特进行标量量化。
(3)为保证合成语音的平滑,在帧间进行线性插值。
本发明具有如下特点(1)本发明为基于语音识别专用芯片的中小词汇量非特定人语音识别方法。这些方法具有复杂性低、识别精度高、稳健性好等特点。
(2)采用识别参数与编码参数共享的办法,从而大大减少了对系统资源的要求,同时保证有很高的编码质量。
(3)由于采用8位MCU或16位DSP为核心,采用10位线性A/D、D/A,因此该芯片具有体积小、重量轻、耗电省、成本低等突出特点。在通信、工业控制、智能型家用电器、智能玩具、汽车电子等领域有着极大的应用价值。
(4)本发明的语音识别命令条数在8位芯上为10条以内,在16位芯片上为30条。对8位芯片识别率为95%以上,对16位芯片识别率为98%以上。
附简要说明图1为通常语音识别的过程示意框图。
图2为一般语音专用芯片的硬件系统组成示意图。
图3为本发明实施例的方法总体构成示意图。
图4本实施例的端点检测方法框图如所示。
图5为本实施例的非特定人语音训练过程整体流程框图。
图6为本实施例的非特定人孤立词识别器的识别流程框图。
图7为本实施例的识别判决过程详细流程图。
本发明提出的一种基于语音识别专用芯片的非特定人语音识别、语音提示方法实施例结合各图详细说明如下本发明的实施例整个方法构成如图3所示,整个过程可以分为(1)A/D采样及采样后语音的与加重,提高高频信号的能量,加窗分帧处理;(2)语音特征参数的提取(包括端点检测参数、识别模型参数)、(3)端点检测,确定有效的语音参数;(4)对有效的语音特征参数进行动态分段,以减小参数的模板存储空间;(5)语音识别通过模式匹配方法进行模板比较,并将语音识别结果输出。每个步骤的细节说明如下。1、语音识别参数特征提取(1)语音信号首先进行低通滤波器,然后通过10-位线性A/D进行采样,成为原始的数字语音,采用10位A/D的目的是为了降低芯片的成本。由于A/D的精度低,因此从方法上要对增益控制放大器进行控制、以及对输入信号的能量和过载情况进行判断,以便确保充分利用好10位A/D的动态范围,得到尽可能高的采样精度。(2)对原始数字语音信号进行频谱整形及分帧加窗处理,保证分帧语音的准平稳性。预加重滤波器取为1-0.95z-1,过零率计算中,抬起电平取为4。(3)对分帧语音的特征进行语音特征提取,语音特征包括LPCC倒谱系数、能量、过零率等,并存储用于后面动态分段。其中很重要的一步相关函数值的计算需要实时完成,由于基于8位的单片机仅有8位的无符号乘法,因此计算相关函数值的过程如下α(n)=s(n)+128R(i)=Σns(n)×s(n+i)=Σn(a(n)-128)×(a(n+i)-128)]]>=Σna(n)×a(n+i)-128×Σn(a(n)+a(n+i))+Σn128×128]]>上式中,s(n)为有8位有符号数,转换成为无符号数α(n)。显然乘积用三个字节保存不可能发生溢出(帧长不大于256)。2、端点检测(1)保证各帧语音特征的有效性,消除无关的噪声,必须进行语音的端点检测和判断。本发明的端点检测方法分为两步,首先根据语音信号能量对端点进行初步判决,当能量大于某一确定值后,确定为初步的起始点,然后从该起点继续向后寻找语音信号能量更大的浊音帧,进行浊音段定位。如果浊音帧存在说明该端点判断基本正确,从浊音帧开始向前、向后搜索静音帧作为语音的起始帧。将搜索的结果输出。端点检测框图如图4所示。它的基本方法为ZERO_RATE_TH是过零率的一个阈值,ACTIVE_LEVEL、INACTIVE_LEVEL和ON_LEVEL是能量的阈值。(2)系统的初始值定为无声状态。在无声状态下,当过零率超过阈值ZERO_RATE_TH或能量超过阈值ACTIVE_LEVEL′时,转入激活状态,若能量超过阈值ON_LEVEL,则直接转入有声状态。记此帧为语音的前端点。(3)在激活状态下,若能量超过阈值ON_LEVEL,则转入有声状态;若连续若干帧(由常数CONST_DURATION设定)能量都超不过阈值ON_LEVEL,转入无声态。(4)在有声状态,若能量低于阈值INACTIVE_LEVEL,则转入非激活状态。标记此帧为语音的后端点。(5)在非激活状态,若连续若干帧(由常数CONST_DURATION设定)能量都超不过阈值INACTIVE_LEVEL,则语音结束;否则转入有声状态。
参数的实际取值如下ZERO_RATE_TH取为0.4,ACTIVE_LEVEL更据背景噪音设置,INACTIVE_LEVEL取为ACTIVE_LEVEL的4倍,ON_LEVEL取为ACTIVE_LEVEL的8倍,CONST_DURATION设为20帧。
3、语音特征动态分段、加权平均(1)对输入语音特征进行动态分段和加权平均,提高清辅音特征参数在识别中的比重,提取语音特征中最重要的模板参数。语音特征分段是该系统语音识别方法的核心之一。
(2)动态分段采用计算不同帧间的语音特征参数的归一化欧氏距离。当变化超过一定的门限,认定该点为语音特征重要分界点。对不同段内语音特征进行加权平均,并把它们作为新的语音特征参数保存下来,并清除早先的语音特征。
通过平均使模型参数大大地减小,不仅节省存储空间,而且减少了运算的复杂度和提高了系统运算速度。
4、非特定人语音识别模板的训练非特定人语音识别模板参数的训练在计算机上完成,首先进行语音特征参数的提取,使用基于多项式分类模型,通过多项式来逼近后验概率。多项式模型的阶数和模型精度有关,采用二次多项式分类模型就可以达到很高识别精度。整个方法如下令F(V)=(f1(V)f2(V)…f10(V))T=ATX(V)其中f1(V)是多项式逼近函数,X(V)是多项式的特征矢量,它由语音特征矢量不同分量之间的相互乘积组成。基于最小均方误差(MSE)准则优化方法,用D(V)估计后验概率A=argminAE{|D(V)-P|2}=argminAE{|ATX(V-)Y|2}---(1)]]>其中P是概率矢量。Y=(0,0,0,…,0,1,0,…,0)是P的近似矢量,仅仅与V相对应的类的值为1,其它值为0。满足等式(1)的解为E{XXT}A*=E{XYT} (2)非特定人语音识别系统的训练流程图如图5所示,详细说明如下(1)由输入的语音特征矢量计算多项式的特征矢量X(V)。
其中vtk是Vi的第k维分量。(2)将多项式特征矢量分K类,K为识别词数。Ω是分类器训练集合。Ci表示第i类,i=1,…,K。{Xci}表示所有属于第i类的语音的所有多项式特征。
(3)为了提高训练效率,预先把有关的一阶统计量E(X)与二阶统计量E(XXT)计算完成。
(4)基于最小均方误差准则优化方法,采用次优的优化方法,每次调整多项式的分类模型中鉴别性最高的一个模型参数,直到满足模型的精度要求。并从高维的多项式特征矢量X中计算出实际使用的特征分量,构成分类器训练特征矢量X*,(5)采用公式(2)重新优化整体多项式分类模型参数,系统训练完成。
5、非特定人语音识别非特定人语音识别流程图如图6所示。详细的步骤如下(1)输入语音信号,提取语音识别特征,方法与前面相同。
(2)计算多项式的特征矢量X(V)。
(3)计算每一个多项式模型的输出概率值。di=(1TΣi=1TXi)Tai---(4)]]>其中αi是多项式分类模型参数A的第i分量A=[α1α2…αK]T。(4)由(4)式判决找出输出概率最大的为识别结果。为提高识别速度和识别精度,识别判决过程还分为粗识别和精识别两个过程。详细流图如图7所示。粗识别的模型参数较少,模型参数为300个,粗识别速度快。对一些易混的语音和粗识别可信测度差的语音必须进行精识别,精识别模型的参数较多,比粗识别多100个左右。精识别模型的训练方法和粗识别方法相同。首先进行粗识别,将粗识别头3选识别结果送入可信测度计算模块,当识别结果的可信度低或存在易混语音,则将粗识别结果送入精识别模块,对粗识别前三选结果进行进一步精识别,然后将精识别结果送入可信测度模块进一步判定可信测度判决。如果仅识别的结果仍然不满足可信测度的要求,系统进行拒识,提示重新输入语音。(5)可信测度计算方法比较复杂,为将第一选识别概率与前三选识别结果的平均概率构成的似然比,以及第一选识别概率与第二选概率构成的似然比组合成为综合可信测度估值,如果该似然比值小于某个门限(该值约为3,根据不同环境噪声可以设定不同值),则认为可信测度低。6、非特定人语音识别模型的自适应(1)自适应过程为说话人对识别错误的语音进行有监督学习,通过实时的调整识别多项式模型的参数,增加模型之间的鉴别度。如果一次自适应后,不能达到结果,可以进行多次自适应学习,直到得到满意识别结果为止。(2)自适应方法采用迭代方法,对识别模板进行修正,该方法是具有鉴别特性的方法,在修正错误模板的同时也能够同时调整其它相关的模板,调整步长α的取值要小于0.01,否则容易造成过调整。自适应调整方法如下Ak+1T=E{XXT}k+1-1E{XYT}k+1]]>≈AkT+αE{XXT}k+1-1Xk+1[Yk+1T-Xk+1TAkT]----(5)]]>其中Ak+1为更新后模型参数,Ak为更新前模型参数。α为调整步长,取值约为10-3,x为多项式的特征矢量。用英语TI-digit数据库训练英语数字识别模型,对某些中国人发音的英语数字识别率很低(78%),但通过自适应调整后,识别率有了明显提高,达到99%以上。
7、语音提示处理(1)采用多脉冲激励LPC语音合成模型;模型参数在计算机上预先进行处理,编辑,压缩,然后存入专用芯片的ROM中;LPC分析帧长为20毫秒;LPC参数的量化用10个比特进行矢量量化;基音周期5比特量化,基音预测器系数3比特量化,激励脉冲的个数为25个,每个脉冲位置用4比特量化,最大幅度的脉冲在对数域用6个比特量化,其余脉冲的幅度在对数域用3个比特量化。
(2)为减少对多脉冲位置参数量化的比特数,对多脉冲参数的估值方法进行改进;该方法对脉冲的最小间距进行限制,脉冲的位置序号仅仅可以出现在以3位倍数的点上;脉冲之间的最大间距不允许超过48;最大脉冲间距的限制条件,不可能在脉冲提取的优化过程中一次满足;每次脉冲提取的优化完成后,将码冲幅度最小的5个脉冲去掉,插入到脉冲间距大于48的两个脉冲之间;该过程重复直到满足脉冲间距要求的条件为止。
(3)参数的解码过程采用查表方法;为保证合成语音的平滑,在解码过程进行帧间线性插值;对每帧语音的头1/3与后1/3分别对LPC参数进行帧间线性插值。
(4)为进一步提高语音合成的主观质量,使用感觉加权滤波器进行后滤波处理。
本实施例基于上述方法开发了一种语基于音识别专用芯片的中小词汇量特定人、非特定人语音识别方法。通常语音识别专用芯片内包括音频预放大器、自动增益控制(AGC)、数/模(A/D)转换器、模/数(D/A)转换器、MCU核(8051)、脉宽调制器(PWM)、随机存储器(RAM)、只读存储器(ROM)、闪烁存储器(FLASH)。ROM中存储有语音合成方法、语音编码方法、语音识别训练方法和语音识别方法,以及提示语音。语音识别的模板和提示语音存于FLASH中。
权利要求
1.一种基于语音识别专用芯片的非特定人语音识别、语音提示方法,包括A/D采样,频谱整形加窗预加重处理,特征参数提取,端点检测,语音识别模板训练,语音识别模板匹配,识别结果输出,以及语音提示,其特征在于,具体包括以下步骤A、非特定人语音识别的预先训练训练过程要求有大量的语音库,训练过程在PC机上完成,将训练后的模板存入芯片中,其训练方法包括采用基于多项式的分类方法;识别模型的参数用多项式的系数来表示;通过多项式来逼近后验概率;模型参数通过线性方程组的优化计算方法求得;B、语音识别参数提取(1)语音信号输入后采用A/D进行采样,成为原始的数字语音,采用电平增益控制,以确保采样的高精度;(2)对所说的原始数字语音信号进行频谱整形及分帧加窗处理,以保证分帧语音的准平稳性;(3)对所说的分帧语音的特征进行语音特征提取,主要特征参数采用线性预测倒频谱系数(LPCC),并存储用于后面动态分段和模板提取;(4)使用语音信号的过零率与短时能量特征进行端点检测,去除无声区的语音帧,以保证各帧语音特征的有效性;C、非特定人语音命令的识别识别过程采用两级识别结构,分为粗识别和精识别。对不容易混淆的命令粗识别就可以得出结果,对易于混淆的命令通过更精细的模型进行识别;以提高识别的平均速度和识别精度;D、非特定人语音识别的说话人自适应学习对说话人具有地方口音或说话不规范时,识别系统会造成误判,采用说话人自适应方法对识别模板进行调整;所说的自适应调整方法采用最大后验概率方法,通过迭代方法逐步修正识别模板参数;E.语音提示语音提示使用语音合成与语音编解码技术,语音合成模型参数分析提取过程在计算机上完成,然后存储在芯片中用语语音合成,因此语音分析参数提取方法可以非常复杂,从而保证有高质量的合成语音,但需要存储的语音合成模型参数应尽可能少,语音合成方法也要尽可能简单;语音合成模型使用多脉冲语音合成模型。
2.如权利要求1所述的的非特定人语音识别、语音提示方法,其特征在于,所说的语音特征提取中的电平增益控制包括对输入语音信号采样精度进行判断,如果输入语音信号采样精度不够高,通过自适应电平控制,调整语音的放大量,提高语音采样精度;所说的端点检测方法为根据设定的端点门限,搜索静音段,确定语音的起、始端点;所说的倒谱参数是根据语音的线性预测模型(LPC)计算得到。
3.如权利要求1所述的非特定人语音识别、语音提示方法,其特征在于,所说的语音识别的预先训练方法中的识别模型训练过程为建立要识别语音命令的数据库,然后提取语音的特征参数,特征参数提取的过程与前面相同。通过迭代的学习过程,提取基于多项式的分类模型的识别参数。学习过程采用次优方法,每次调整多项式的分类模型中一个参数,直到所要求的模型参数都计算出来;整个训练过程在计算机上完成,最后将训练后得出的模型参数存入语音识别专用芯片中,作为识别模型;这是与特定人语音识别不同的地方;
4.如权利要求1所述的非特定人语音识别、语音提示方法,其特征在于,所说的语音命令识别方法的中识别过程为计算每个多项式的分类模型的输出结果,取输出概率最大的模型为识别结果;识别过程采用粗识别和精识别两级识别;其区别在于粗识别的模型参数较少,识别速度快,精识别模型参数较多。对易于混淆的命令通过精识别可以提高识别率。
5.如权利要求1所述的非特定人语音识别、语音提示方法,其特征在于,所说的语音命令的识别方法中的自适应采用模型自适应调整技术,对识别错误的语音命令,通过自适应学习后,识别率可以明显改进。自适应过程为输入要求自适应的语音数据,采用基于最大后验概率的自适应方法,通过迭代分别对语音识别参数进行调整,使模型之间鉴别测度保持最大鉴别性。
6.如权利要求1所述的非特定人语音识别、语音提示方法,其特征在于,所说的语音提示中的采用改进的多脉冲语音合成方法,其中包括多脉冲幅度和位置的估值方法;帧间模型参数的插值方法。
全文摘要
本发明属于语音技术领域,包括:非特定人语音识别的预先训练、语音识别参数提取、非特定人语音命令的识别、非特定人语音识别的说话人自适应学习、语音提示。本识别方法具有方法简单、识别率高、稳健性好等特点。构成的系统可以用于玩具控制、声控拨号、智能性家用电器、学习机、以及生产环节的控制系统中。
文档编号G10L15/00GK1264887SQ00105548
公开日2000年8月30日 申请日期2000年3月31日 优先权日2000年3月31日
发明者刘加, 李晓宇, 史缓缓, 刘润生 申请人:清华大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1