实时语音识别系统在家庭监护机器人的实现 - 中国一卡通网
用户名密码 [免费注册] [找回密码] 推广技巧 发布求购 建商铺  发产品  会员体制比较  
 

实时语音识别系统在家庭监护机器人的实现

来源:中国一卡通网  作者:不详  发布时间:2012-05-22 09:39:05  字体:[ ]

关键字:语音识别  嵌入式Linux  家庭监护机器人  

摘   要:文中阐述的是家庭监护机器人项目中语音识别系统设计的部分,通过DSP、DMA和ARM Cortex-A8的并行处理,利用双缓冲的方法,在嵌入式Linux上实现了基于ATK的实时语音识别系统。文中对该系统的软硬件进行了设计。在硬件方面,给出语音识别系统的硬件组成原理,并提供了关键部分原理图;在软件方面,提出实时语音识别的方法,给出应用程序实现流程。最后通过真人说话来进行语音识别实验,实时语音识别率达到了94.67%以上,实验验证了系统的软件硬件设计的正确性。


  基于HTK的语言识别时,识别结果适用只能显示在DOS或终端上,而且不利于将结果保存、移植或者二次开发利用。在本语音识别系统中使用了HTK接口工具ATK(AnApplication Toolkit for HTK)。ATK是由英国剑桥大学开发的开源语音识别工具,是对HTK的C++多线程封装,跟HTK一样,它支持Linux和Windows,它包括HTK(HTKLib)、AHTK、AGram、ANGram、ADict、AHMMs、AResource、ARMan、ARec、ACode、ASour ce、ATee、AComponent、ABuffer、APacket、Asyn、FLite(SYNLib)、ALog模块部件。

  基于ATK的语音识别软件应用系统的由语音信号采集模块、基于DMA的双向高速RAM存取模块、ATK语音识别模块、系统管理模块、语音输出模块等模块组成,如图4所示。 



  图4 系统软件设计结构图 

  在软件设计中,系统管理模块主要负责系统的总体管理调度,是应用系统的调度中心;语音信号采集模块主要负责控制数据采集芯片TPS 65930;基于DMA的双向RAM存取模块主要负责实现DMA驱动及双向RAM的读写存取,使用了通道1来实现高速地把语音信号采集到的数据存储到RAM上,并使用通道2实现高速地把RAM的数据取出来,用于语音的识别;语音输出模块主要负责把相应的音频数据送到TPS65930,并控制TPS6 5930对接收到的音频解码输出到功放电路,实现语音输出的功能。软件的设计流程图如图5所示。 



  图5 软件设计流程

  2 语音识别系统实验及结果

  文中设计的语音识别系统如图6所示。在实验中总共进行了3轮话语测试,每轮300句话语测试,其中150句为家庭监护机器人需要识别的话语,150句话语为机器人不予置理的无关话语。本系统只设置10个需要识别的话语,由15名学生分别读音进行测试。同时对无关话语也是由该15名学生,每人10句分别随机读音测试。从显示结果可以看出,第1轮中,先测试的150句无关话语中,能正确识别出无关话语数为150句,识别出无关话语率为100%,但对需识别的话语中,正确识别出148句,2句识别出错,识别率为98.67%;在第2轮中,同样先测试的150句无关话语中,能正确识别出无关话语数为150句,识别出为无关话语率为100%,但对需识别的话语中,正确识别出142句,8句识别出错,识别率为94.67%;在第3轮中,同样先测试的150句无关话语中,能正确识别出无关话语数为150句,识别出无关话语率为100%,但对需识别的话语中,正确识别出146句,识别率为97.33%.在3轮测试中,系统都能实时响应所有语句,未出现漏句现象。并且在实验测试的过程中,系统的响应速度都非常快,感观上没有时间延迟,与真人交流速度相当。 



  图6 系统实验界面

  从实验测试结果可看出,对于识别10个需要识别的话语的识别率高达94.67%以上,具有较高的识别率,因而该语音识别系统较好达到了家庭监护机器人使用的要求。

  3 结论

  文中通过DSP、DMA和ARM Cortex-A8的并行处理,利用双缓冲的方法,在嵌入式Linux上实现了基于ATK的实时语音识别系统。该系统可以实时地实现语音识别,具有较高识别率,较快的响应速度。可以应用在家庭监护机器人及其相关领域中。

更多

新闻投稿合作邮箱:yktchina-admin@163.com    字体[ ] [收藏] [进入论坛]

推荐文章

论坛热帖