论文部分内容阅读
自动语音识别是当前学术界与工程界中的一个很活跃的研究领域。语音识别的目的在于让机器“理解”人类的话语,从而使得信息的直接输入能在更广泛的领域以更快捷、更自然地替代间接输入(如键盘、手写板、扫描仪等录入设备),甚至完全淘汰间接输入。语音识别是一门涉及到很多学科的交叉学科。近年来,国内外在此领域取得持续进步,使语音识别逐步从实验室走向市场。语音识别技术将应用于工业、家电、通信、汽车电子、医疗、家庭服务、消费电子产品等各个领域。尤其是在以嵌入式系统为核心的终端电子消费产品中,语音识别技术正在成为其人机界面和智能辅助操作的重要的应用手段。本文深入地研究了自动语音识别中各个环节的算法与信号处理流程。从研究孤立词语的识别算法入手,讨论了包括语音产生机理和语音信号采集、去噪、变换、参数提取、训练以及模式匹配识别在内的信号流程和算法原理,对于提高识别正确率的引马尔可夫模式进行了分析;针对连续语音识别相对于孤立词语识别面临的新问题:如语言模式、语法规则约束等进行了讨论;在基于W3C的SRGS标准规范上,设计了一套实验用语法规则文件规范。分析了一个语法文件的案例,并在GNU Octave平台进行算法验证。本文还利用C/C++语言在桌面PC平台下开发了一套算法程序以测试性能。并且使用CMU提供的LetsGoData语音数据库做了性能上的测试,分析了识别误差的产生原因和算法的改进方向。在桌面PC机器上程序通过验证后,在Windows Mobile 5.0嵌入式平台上进行了移植。随后描述了向此平台移植程序的过程,分析了嵌入式系统上我们设计的语音识别系统的性能瓶颈所在。针对所面临的问题,又提出了一种针对特定的没有浮点协处理器的嵌入式平台的提高识别速度与正确率的算法策略上的改进。并且设计了一种定点运算方式,用于替换软件模拟的浮点运算数学库以提高识别系统的速度性能。实验证明,在损失一定识别精度的条件下,通过调整算法策略与使用定点运算程序能显着改善嵌入式平台上的识别实时性能。