语音识别技术在微机器人控制系统中的应用

发布者:等放假的zr0最新更新时间:2009-01-21 来源: 电子技术应用关键字:微机器人  语音识别  隐式马尔可夫模型  嵌入式系统 手机看文章 扫描二维码
随时随地手机看文章

  本文基于毫米级全方位无回转半径移动机器人课题。微系统配置示意图如图1所示。主要由主机Host(配有图像采集卡)、两个CCD摄像头(其中一个为显微摄像头)、微移动装配平台、微机器人本体和系统控制电路板等组成。计算机和摄像机组用于观察微机器人的方位,控制系统控制微机器人的移动。

  本文在系统控制电路中嵌入式实现语音识别算法,通过语音控制微机器人。

  微机器人控制系统的资源有限,控制方法比较复杂,并且需要有较高的实时性,因此本文采用的语音识别算法必须简单、识别率高、占用系统资源少。

  HMM(隐马尔可夫模型)的适应性强、识别率高,是当前语音识别的主流算法。使用基于HMM非特定人的语音识别算法虽然借助模板匹配减小了识别所需的资源,但是前期的模板储存工作需要大量的计算和存储空间,因此移植到嵌入式系统还有一定的难度,所以很多嵌入式应用平台的训练部分仍在PC机上实现。

  为了使训练和识别都在嵌入式系统上实现,本文给出了一种基于K均值分段HMM模型的实时学习语音识别算法,不仅解决了上述问题,而且做到了智能化,实现了真正意义上的自动语音识别。

1 增量K均值分段HMM的算法及实现

  由于语音识别过程中非特定的因素较多,为了提高识别的准确率,针对本系统的特点,采用动态改变识别参数的方法提高系统的识别率。

  训练算法是HMM中运算量最大、最复杂的部分,训练算法的输出是即将存储的模型。目前的语音识别系统大都使用贝斯曼参数的HMM模型,采取最大似然度算法。这些算法通常是批处理函数,所有的训练数据要在识别之前训练好并存储。因此很多嵌入式系统因为资源有限不能达到高识别率和实时输出。

  本系统采用了自适应增量K均值分段算法。在每次输入新的语句时都连续地计算而不对前面的数据进行存储,这可以节约大量的时间和成本。输入语句时由系统的识别结果判断输入语句的序号,并对此语句的参数动态地修改,真正做到了实时学习。

  K均值分段算法是基于最佳状态序列的理论,因此可以采用Viterbi算法得到最佳状态序列,从而方便地在线修改系统参数,使训练的速度大大提高。

  为了达到本系统所需要的功能,对通常的K均值算法作了一定的改进。在系统无人监管的情况下,Viterbi解码计算出最大相似度的语音模型,根据这个假设计算分段K均值算法的输入参数,对此模型进行参数重估。首先按照HMM模型的状态数进行等间隔分段,每个间隔的数据段作为某一状态的训练数据,计算模型的初始参数λ=f(a,A,B)。采用Viterbi的最佳状态序列搜索,得到当前最佳状态序列参数和重估参数θ,其中概率密度函数P(X,S|θ)代替了最大似然度算法中的P(X,θ),在不同的马尔科夫状态和重估之间跳转。基于K均值算法的参数重估流程如下:

  为了使参数能更快地收敛,在每帧观察语音最佳状态序列的计算结束后,加入一个重估过程,以求更快地响应速度。

  可以看到,增量K均值算法的特点为:在每次计算完观察值最佳状态序列后,插入一个重估过程。随时调整参数以识别下一个句子。

  由于采用混合高斯密度函数作为输出概率分布可以达到较好的识别效果,因此本文采用M的混合度对数据进行训练。

  对λ重估,并比较收敛性,最终得到HMM模型参数训练结果。

  可见,用K均值法在线修改时,一次数据输入会有多次重估过程,这使系统使用最近的模型估计后续语句的最佳状态序列成为可能。但是对于在线修改参数要求,快速收敛是很重要的。为了得到更好的Viterbi序列,最佳状态序列使用了渐增的算法模型,即快速收敛算法。

  语音识别的具体实现过程为:数字语音信号通过预处理和特征向量的提取,用户通过按键选择学习或者识别模式;如果程序进入训练过程,即用户选择进行新词条的学习,则用分段K均值法对数据进行训练得到模板;如果进入识别模式,则从Flash中调出声音特征向量,进行HMM算法识别。在识别出结果后,立即将识别结果作为正确结果与前一次的状态做比较,得到本词条更好的模板,同时通过LED数字显示和语音输出结果。系统软件流程如图2所示。

  对采集到的语音进行16kHz、12位量化,并对数字语音信号进行预加重:

  L选择为320个点,用短时平均能量和平均过零率判断起始点,去除不必要的信息。

  对数据进行FFT运算,得到能量谱,通过24通道的带通滤波输出X(k),然后再通过DCT运算,提取12个MFCC系数和一阶二阶对数能量,提取38个参数可以使系统识别率得到提高。

  为了进行连接词识别,需要由训练数据得到单个词条的模型。方法为:首先从连接词中分离出每个孤立的词条,然后再进行孤立词条的模型训练。对于本系统不定长词条的情况,每个词条需要有一套初始的模型参数,然后按照分层构筑的HMM算法将所有词串分成孤立的词条。对每个词条进行参数的重估,判断是否收敛。如果差异小于某个域值就判断为收敛;否则将得到的参数作为新的初始参数再进行重估,直到收敛。

2 实验结果

  实验采用30个人(15男,15女)的声音模型进行识别。首先由10人(5男,5女)对5个命令词(前进、后退、左移、右移、快速)分别进行初始数据训练,每人每词训练10次,得到训练模板。然后再由这30人随机进行非特定人语音识别。采用6状态的HMM模型,高斯混合度选为14,得到图3的实验结果。

  逐步增加高斯混合度数目,可以得到图4的实验结果。可见高斯混合度在18的时候达到较好的识别效果,混合度太高识别率反而会有所下降,这是由于嵌入式系统的资源有限,运算复杂度的增长超过了嵌入式设备的限制所造成的。

  为了使微机器人能够正确地执行人的声音指令,本文将语音识别的过程嵌入微机器人的控制系统中,根据微机器人控制系统资源有限、对实时性要求高的特点,使用增量K均值分段HMM的算法,简化计算节省了所需的硬件资源,实现了实时学习的语音识别,能方便地对微机器人进行控制。

  本系统的识别率达到了较高的标准,又由于加入了智能化的用户选择部分,用户可随时选择学习新的语句,使其有更广阔的应用前景。
  由于嵌入式平台受到处理速度、存储空间的限制,所以能够对微机器人发出的指令十分有限,识别率还有待提高。因此,研究语音识别算法,比较各种算法的优缺点,进而在嵌入式微机器人控制系统上实现大词汇量非特定人的语音识别,实现真正意义上的人机交流是今后进一步的工作。

关键字:微机器人  语音识别  隐式马尔可夫模型  嵌入式系统 引用地址:语音识别技术在微机器人控制系统中的应用

上一篇:利用VB 6.0实现网络远程PC与单片机通信
下一篇:基于嵌入式系统的远程参数测量的方法和实现

推荐阅读最新更新时间:2024-05-02 20:45

嵌入式系统U盘实时启动技术
引 言   随着USB技术的发展,优盘在PC机系统上已得到广泛的应用,基本上取代了软盘,PC机系统可以实现从优盘启动。由于优盘性能稳定,体积小巧,访问速度快,因此它也非常适合作为嵌入式实时系统的存储设备。这为嵌入式实时系统的启动提供了一种崭新的思路,即从优盘启动。这种方法对嵌入式实时系统板上的程序存储空间要求不高,只要在Flash中存储嵌入式实时系统的Bootrom程序即可,将系统的映像文件放在优盘上,实现实时操作系统从优盘加载。 目前基于VxWorks设计的嵌入式实时系统应用非常广泛。嵌入式实时系统的启动方式多种多样,WindRiver公司提供的参考BSP(Board support Package)包中就提供了几种启
[工业控制]
<font color='red'>嵌入式</font>系统U盘实时启动技术
嵌入式系统设计师必备的在线ARM仿真器知识
  本文提供了一些关于在线 ARM 仿真器的信息,以及给作为嵌入式系统设计师的你带来的好处。根据你的需要,你将在产品开发中对开发工具作出更恰当的选择。    一、嵌入式产品的开发周期   典型的嵌入式微控制器开发项目的第一个阶段是用C编译器从源程序生成目标代码,生成的目标代码将包括物理地址和一些调试信息。目前代码可以用软件模拟器、目标Monitor或在线仿真器来执行和调试。软件模拟器是在PC机或工作站平台上,以其CPU(如x86)及其系统资源来模拟目标CPU(如P51XA),并执行用户的目标代码;而目标Monitor则是将生成的目标代码下载到用户目标板的程序存储器中,并在下载的代码中增加一个Monitor任务软件,用来监视
[嵌入式]
嵌入式系统中应用Linux深入探究
计算机用于嵌入式控制设备领域的历史和计算机本身的历史一样久远。最初的用于控制机电式电话交换器的通讯设备中“固态控制程序”就是嵌入式程序。“计算机系统”在当时并不普遍;所以固态程序存放在内存中控制相应的设备。在那种时代,运行控制程序是很先进的思想,而且当时也只能如此而已。  那时的计算机是专为特定的用户设计,特殊的应用程序指令、I/O设备和主要的计算设备集成在一起。微处理器的产生改变了这种局面,价格低廉、结构小巧的 CPU和外设连接在总线上形成了比较大的系统。这种硬件架构很稳定,于是在这个基础上,这建立起了通用的软件开发环境和编程模式,且简化了编程,。  软件也在随着硬件的发展而发展;开始只有简单的工具用于编程和调试,而且每一个软
[嵌入式]
stm32利用语音识别与播报智能控制led灯
上次写了一个语音识别的文章,但是那个模块是用串口进行通信的。这次要讲的是另一种识别与播报模块,这种模块相对于上次那种,功能更多,当然价格也更贵。这种识别模块与播报模块都是利用IIC进行传输的,所以本次利用了stm32f103c8t6控制板上面的两个IIC分别是PB6、PB7以及PB10、PB11。本文章主要实现的功能是: 根据说出的指令让识别模块识别到相应的词语后,做出相应的动作,并且利用播报模块说出对应动作是否完成。在这里我只是简单的控制led灯,当然你也可以控制其他东西,如家用电器等等。 其中语音识别模块有三种模式,循环模式:模块时刻处于语音识别状态;口令模式:当检测到口令时候进行语音识别;按键模式:当按下按键后处于语音识
[单片机]
stm32利用<font color='red'>语音识别</font>与播报智能控制led灯
LabView开发嵌入式系统的挑战及应用解决方案
传统设计模式所应对的挑战 嵌入式系统正在渗入现代社会的各个方面,广泛地应用于航空航天、通信设备、消费电子、工业控制、汽车、船舶等领域,据统计,在美国平均每个中产阶级家庭要使用40~50个嵌入式系统。巨大的市场需求推动了嵌入式系统向更高的技术水平发展。设计师们一方面采用性能更强大的嵌入式处理器如32位、64位RISC芯片取代传统的8位、16位微处理器;另一方面嵌入式系统也由单处理器单操作系统的传统结构向混合型Multi-core系统发展,通过采用多个处理器和OS提高系统并行度来提高系统运行效能,并且设计师们往往同时采用MPU、DSP和FPGA等多种可编程器件来增强处理能力,满足应用功能的升级。 嵌入式系统复杂性的不断增加给设计师
[测试测量]
LabView开发<font color='red'>嵌入式</font>系统的挑战及应用解决方案
链道爱参评“维科杯·OFweek 2022中国机器人行业年度卓越技术创新企业奖”
维科杯·OFweek 2022中国 机器人 行业年度评选(简称OFweek Robot Awards 2022),是由中国高科技行业门户OFweek维科网及旗下权威的机器人专业媒体-OFweek维科网·机器人共同举办。该评选设立至今已有十余年,是中国机器人行业内的一大品牌盛会,亦是高科技行业具有专业性、影响力的评选之一。 此次活动旨在为机器人行业的产品、技术和企业搭建品牌传播展示平台,并借助OFweek维科网平台资源及影响力,向行业用户和市场推介创新产品与方案,鼓励更多企业投入技术创新;同时为行业输送更多创新产品、前沿技术,一同畅想机器人行业的未来。 今年,OFweek Robot Awards 2022将全新升级,在去年奖项的
[机器人]
股价一周暴涨80%,半年亏损4.5亿的机器人要翻盘
今日微创 机器人 -B(2252.HK)早盘一度拉升16%,自本月14日至今不过一周涨幅已超80%,截至今日收盘,股价达到31.75港元,市值为304.35亿港元,重回300亿港元上方。 消息面上,前不久国家卫健委发布通知,拟使用财政贴息贷款更新改造 医疗 设备。据透露,目前相关部门正在协商细则,预计每家医院贷款金额将不低于2000万。 业内人士表示,此次财政贴息政策涉及金额较大,将刺激医疗设备采购及更新换代需求,为医疗新基建“添薪加柴”,基层医院诊疗水平有望全面提升。预计今年四季度到明年,医疗器械将迎来采购高峰期,这也是国际型、平台型、创新型国产医疗设备厂商提升市占率、加速入院的良机。 资料显示,微创机器人是全球唯一一家业务覆
[机器人]
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved