一种基于soc芯片的语音唤醒方法技术

技术编号:15262383 阅读:43 留言:0更新日期:2017-05-03 17:55
本发明专利技术公开了一种基于soc芯片的语音唤醒方法,包括以下步骤:S1、芯片采集语音数据,并对其进行采样,将模拟信号转换成数字信号;S2、将数字信号的语音数据进行MFCC特征提取;S3、对MFCC特征值进行语音活动检测,判断当前MFCC特征值的新一帧MFCC数据是否为语音帧,若否则返回步骤S2并释放数据,若是则将MFCC特征值进入下一步骤处理;S4、通过基于HMM模型的语音识别算法对MFCC特征值进行识别,若识别结果为有效指令,则唤醒控制设备;反之则返回步骤S2。本发明专利技术方法通过采用鲁棒性高的算法实现的实时系统具有较高的识别率,达到低功耗和高性能的要求。

【技术实现步骤摘要】

本专利技术涉及语音识别
,尤其涉及一种基于soc芯片的语音唤醒方法。
技术介绍
随着时代的发展,越来越多的电子设备进入人们的日常生活中,人们在享受电子设备带来便利的同时,希望电子设备能更加智能,实现无触控的交互方式。语音唤醒,即用户说出设定的语音指令,让处于休眠状态下的设备直接进入到等待指令状态。通过该技术,任何人在任何环境、任何时间对设备直接说出预设的唤醒词,就能激活设备,从而实现低功耗和无触控的交互。然而目前出现的语音唤醒技术大部分是基于计算机和手机终端实现的,需要强大的处理器进行支撑,不适合用于工业应用。而基于mcu实现的语音唤醒技术虽然成本低廉,但是由于处理器性能的限制无法达到理想的效果。
技术实现思路
本专利技术要解决的技术问题在于,提供一种基于soc芯片的语音唤醒方法,通过采用鲁棒性高的算法实现的实时系统具有较高的识别率,达到低功耗和高性能的要求。为解决上述技术问题,本专利技术提供如下技术方案:一种基于soc芯片的语音唤醒方法,包括以下步骤:S1、芯片采集语音数据,并对其进行采样,将模拟信号转换成数字信号;S2、将数字信号的语音数据进行MFCC特征提取;S3、对MFCC特征值进行语音活动检测,判断当前MFCC特征值的新一帧MFCC数据是否为语音帧,若否则返回步骤S2并释放数据,若是则将MFCC特征值进入下一步骤处理;S4、通过基于HMM模型的语音识别算法对MFCC特征值进行识别,若识别结果为有效指令,则唤醒控制设备;反之则返回步骤S2。进一步地,所述步骤S2中MFCC特征提取,其具体为:1)、数字信号的预处理,包括预加重、分帧和加窗;2)、对每一帧信号进行FFT变换,求频谱,进而求得幅度谱|Xn(k)|;3)、对幅度谱|Xn(k)|加Mel滤波器组Wl(k),公式如下:其中k指FFT的第k个点;o(l)、c(l)、h(l)分别为第l个三角滤波器的下限频率、中心频率和上限频率;4)、对所有的滤波器输出做对数运算,再进一步做离散余弦变换DCT得MFCC特征值,公式如下:其中N、L为26,指滤波器个数;i指MFCC系数阶数,i取12,即为得到了12个倒谱特征;此外,再加上一帧的对数能量作为第13个特征参数,定义如下:其中,Xn(k)为幅度,由此可得到13个特征参数,包括12个倒谱特征加1个对数能量;5)、所求的13个标准的倒谱参数MFCC只反映了语音参数的静态特性,语音的动态特性根据所述静态特征的差分谱来描述;计算13个MFCC特征的一阶差分dtm(i)和二阶差分dtmm(i):13个标准MFCC特征和它的13个一阶差分、13个二阶差分组成39维的MFCC特征参数,至此MFCC特征提取完毕。进一步地,所述步骤S3中对特征值进行语音活动检测,采用基于GMM模型的语音活动检测方法,其假设语音和背景噪音在特定的特征空间中符合高斯混合分布,在特征空间中分别构建静音模型、非静音模型;接着对MFCC特征的新一帧MFCC数据进行计算,分别算出静音模型的似然值P1、非静音模型的似然值P2;比较似然值P1、似然值P2的大小,若P1大于P2则当前MFCC数据帧为语音帧,否则静音帧。进一步地,若所述当前MFCC数据帧被判断为语音帧后,判断下一帧MFCC数据帧时,似然值P1和似然值P2分别乘以对应的转移概率,比较两个乘积结果,若似然值P1的乘积结果大于似然值P2的乘积结果,则当前MFCC数据帧为语音帧,否则为静音帧;若所述当前MFCC数据帧被判断为静音帧后,判断下一帧MFCC数据帧时,似然值P1和似然值P2分别乘以对应的转移概率,比较两个乘积结果,若似然值P1的乘积结果大于似然值P2的乘积结果,则当前MFCC数据帧为语音帧,否则为静音帧;所述对应的转移概率为预先设置好的模型数据。进一步地,所述静音模型的似然值P1、非静音模型的似然值P2的计算方法,具体为:其中静音模型、非静音模型均由13个39维高斯模型构成;一个M阶高斯模型的概率密度函数是由M个高斯概率密度函数加权求和得到的,如下式3.1:式中,M为多维高斯模型个数,M取13;X为一个D维随机矢量,即为39维MFCC特征值;bi(X)为子分布,ωi为混合权重;每个子分布是D维的联合高斯概率分布,如下式3.2:其中μi是第i维的均值;σi2为方差;xi为输入的第i维的MFCC特征值;D表示总维数,D取39;由于式3.2计算过于复杂,对其进行推导简化:式两边取对数可得:可知加号左边都为训练好的模型中已知的参数,可以提前训练好,故设gconst作为模型的一个参数:所以式3.2变换为求下式:进而式3.1简化为:将MFCC数据帧和模型参数带入上式中,即可得到该帧数据的静音模型的似然值和非静音模型的似然值。进一步地,所述将将MFCC数据帧和模型参数带入上式中,即可得到该帧数据的静音模型的似然值和非静音模型的似然值,具体步骤为:1)、对每一帧语音的MFCC特征值分别与静音模型和非静音模型进行匹配计算,先进行(xi-μi)2/σ2计算,计算结果进行累加,得到两个模型的多维高斯分布的指数部分fa0和fa1:其中均值μi和方差从模型数据中直接获取;2)、对上一步的计算结果进行如下计算,可得到多维高斯分布的似然值b:其中gconst为提前训练的数据,从模型数据中直接获取,至此完成式3.3中的多维高斯分布似然值lnbi(X)计算;3)、由上文可知静音模型和非静音模型分别包含13个多维高斯分布,所以步骤1、2循环13次后可得13个多维高斯分布的似然值lnbi(X),将这些似然值和相应的权重ωi带入下式,得当前帧对静音模型的似然值P1和对非静音模型的似然值P2:进一步地,所述步骤S4基于HMM模型的语音识别算法,其具体为:S41、载入HMM模型,构造HMM链的识别网络;S42、将MFCC特征值与HMM模型的识别网络匹配,计算初始似然值;S43、根据初始似然值,TokenPassing算法找到HMM链网络中的最佳路径,完成译码的工作;S45、判断语音指令是否与HMM链匹配,若是则为有效语音,若否则为无效语音。采用上述技术方案后,本专利技术至少具有如下有益效果:(1)本专利技术通过将原算法中部分计算转换到log域,把大量乘法运算转换成加法运算,成功降低了在微处理器上实现时的时延;通过专用硬件对算法的复杂计算进行加速,降低时延,最终达到了实时识别的目的;(2)本专利技术通过采用鲁棒性高的算法实现的实时系统具有较高的识别率;(3)本专利技术具有易升级性,本专利技术的算法分为独立的三个模块特征提取、语音活动检测和语音识别,后续有性能更佳的算法可以通过单独替换子模块的方式对系统进行优化。附图说明图1是本专利技术一种基于soc芯片的语音唤醒方法的整体流程图;图2是本专利技术一种基于soc芯片的语音唤醒方法的三角滤波器示意图;图3是本专利技术一种基于soc芯片的语音唤醒方法的三角滤波器组示意图;图4是本专利技术一种基于soc芯片的语音唤醒方法的语音活动检测流程图;图5是本专利技术一种基于soc芯片的语音唤醒方法的39维高斯模型的参数构成示意图;图6是本专利技术一种基于soc芯片的语音唤醒方法的语音活动检测步骤流程图;图7是本专利技术一种基于soc芯片的语音唤醒方法的在语音活动检测中预先训练好的模型数据示意图;图8是本专利技术一种基于soc芯片的语音唤醒方本文档来自技高网...

【技术保护点】
一种基于soc芯片的语音唤醒方法,其特征在于,包括以下步骤:S1、芯片采集语音数据,并对其进行采样,将模拟信号转换成数字信号;S2、将数字信号的语音数据进行MFCC特征提取;S3、对MFCC特征值进行语音活动检测,判断当前MFCC特征值的新一帧MFCC数据是否为语音帧,若否则返回步骤S2并释放数据,若是则将MFCC特征值进入下一步骤处理;S4、通过基于HMM模型的语音识别算法对MFCC特征值进行识别,若识别结果为有效指令,则唤醒控制设备;反之则返回步骤S2。

【技术特征摘要】
1.一种基于soc芯片的语音唤醒方法,其特征在于,包括以下步骤:S1、芯片采集语音数据,并对其进行采样,将模拟信号转换成数字信号;S2、将数字信号的语音数据进行MFCC特征提取;S3、对MFCC特征值进行语音活动检测,判断当前MFCC特征值的新一帧MFCC数据是否为语音帧,若否则返回步骤S2并释放数据,若是则将MFCC特征值进入下一步骤处理;S4、通过基于HMM模型的语音识别算法对MFCC特征值进行识别,若识别结果为有效指令,则唤醒控制设备;反之则返回步骤S2。2.如权利要求1所述的一种基于soc芯片的语音唤醒方法,其特征在于,所述步骤S2中MFCC特征提取,其具体为:1)、数字信号的预处理,包括预加重、分帧和加窗;2)、对每一帧信号进行...

【专利技术属性】
技术研发人员:陈晓鹏殷瑞祥徐向民张伟彬邢晓芬
申请(专利权)人:华南理工大学
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1