嵌入式平台语音识别软件开发包
嵌入式语音识别在消费类电子产品市场应用上大约分成三类:手提设备,游戏/ 玩具以及汽车。我们已经开发出能安装在智能手机Smartphone 上的连续语音及短语语音识别软件:Wanson ASR Chip1.0 ,它是专门为微小芯片上而开发的嵌入式语音识别引擎。,可以为用户提供语音拨号和声音命令控制等功能。这些软件可以 作用在智能手机Smartphone,CDMA/2.5G/3.5G芯片,智能玩具以及汽车的导航 系统上。该语音识别软件兼顾到识别速度和识别准确率的平衡,能运用于一系列从语音命令控制,语音人名拨号到语音翻译,语言学习的实际应用中,使得我们的OEM 伙伴能快速地推出他们的新产品。
1、Wanson ASR Chip1.0 综述:
引擎可以为您已有的硬件平台上(无论是16位MCU、DSP、或者ARM)上增加语音识别的功能,比如手机控制器平台。全套的解决方案包括了公司专有的非特定人语音识别引擎,不需要您现有控制器作大的硬件改动(仅需要增加音频的输入和输出电路)。
2、Wanson ASR Chip1.0 系统
2.1 系统框图及概述
Wanson ASR Chip1.0 是一套功能强大,具有全部开发工具的语音识别系统,使开发者可以方便而快速地开发出一系列不同的应用。Wanson ASR Chip1.0 提供的特性包括有:
• 该语音识别软件附带了一系图形化界面的软件开发包,使厂商可以很快在现有的产品上增加语音识别功能;
• 秉承Wanson ASR电信级语音识别软件的高准确率和稳定性,持续提高客户意度;
• 软件采用标准C书写核心算法,使得该软件能很快地移植到其他操作系统和处理器上;
• 提供了常规的,功能强大的API 接口,能够很方便地与设备上的现有软件集成
上图示为Wanson ASR Chip1.0 的系统框图。如图所示,由系统所构筑的语音识别应用程序和四部分相结合。对语音识别而言,将接收到的语音文件包通过录音接口传给语音识别引擎。该引擎在执行语音识别任务时,根据系统指令从资源文件中调用所需要的语言模型,声学模型,字典等资源。当语音识别任务完成后,系统将识别出来的结果放在系统队列中,供下级设备读取。
2.2 应用程序开发
开发具有嵌入式语音识别功能的应用程序大约需要以下的步骤:
• 性能的定义开发商在开发应用程序时,首先要定义的是准备给用户提供什么样的特性和功能。例如,唤醒功能(该引擎可以使产品工作在待机状态,等待清晰的唤醒命令,启动语音识别软件工作)等等;
• 现有硬件环境分析定义完性能之后,需要结合现有设备的硬件条件分析能否支持上述性能的实现。如果必须的话,是否需要另加RAM 和ROM,或者提高CPU的速度;
• 用户界面的设计因为是基于消费类电子产品开发的应用程序,用户界面是否友好事关重大。
Wanson ASR Chip1.0 提供了一系列的开发包模拟运行环境,可以不断调试,直到满意为止;
• 开发以上所有步骤完成之后,可以进行代码编写和集成的工作。
3 硬件环境
Wanson ASR Chip1.0 是模块式的系统体系,单处理器处理所有模块程序的运行。下图示出系统在运行时主要硬件元素的工作流程。
前端模块
前端模块主要包括语音信号处理和参数提取,将原始的语音文件转换成语音识别需要的语音参数序列。在某些特定的情况下,前端模块还需要进行噪声处理和声道归一化处理以提高系统的鲁棒性(Robust ability)。前端语音信号处理和参数提取需要大量的数值计算,CPU 的运算能力以及RAM 的速度会对响应速度有很大影响。
后端模块
后端模块是语音识别的核心部分,完成从语音到文本的转换。该部分包括:语法生成、调入声学和语言模型以及发音字典、路径搜索等。该部分需要大量的概率和数值计算,并且需要多次访问和调用声学模型和发音字典等资源文件。一般情况下,声学模型和字典等资源将预先调入ROM和闪存(Flash Memory)。影响语音识别响应速度的因素主要有:CPU 性能,Memory 的存取速度以及CPU是否过载等等。对于CPU 的运算能力,一般而言,在不同的系统配置下,需要做到实时识别并且不影响其他任务执行所需要的最低配置为6MIPS,具体取决于识别词汇量大小和硬件配置等,也就是说一些高端的16bit MCU、ARM7以及之上的处理器都可以做语音识别,只不过识别的词汇量大小不同而已。
语音合成
语音合成部分完成从文本到音的转换,主要是将语音识别输出的文本转换成语音
播报给用户。在某些特定的情况下,例如在开车的时候,用户可以方便的听到识
别结果而不需要去看。
RAM和ROM需求
对于嵌入式的语音识别系统,RAM 和ROM 的大小需求是由应用系统的功能设计所决定的。同时,不同的RAM 和ROM 大小又影响着识别的准确率和响应速度。一般情况下,较大的RAM 和ROM 存储空间和快速的RAM和ROM 速度更有利于识别速度和识别准确率的提高。更多的情况下,在实际应用中,考虑到性能价格比,一般会选择适当的RAM 和ROM 尺寸以达到速度和识别率的平衡。同时不同语种的语音库也是决定ROM大小的因素。如下表所示:
表中所列的RAM和ROM的空间需求是一个近似数字(ROM不含语音库)
4 功能及特性
Wanson ASR Chip1.0 嵌入式语音识别系统提供了一系列独到的功能和特性,以适应不同的开发厂商的需求。
• 话者独立该软件无需事先对用户的语音训练,任何人拿起来均可使用。可以支持多国语种;
• 独特的口音的处理技术用户不用说播音员般标准的普通话,全国各地带有口音的用户亦可以毫无问题得顺畅使用该系统;
• 高识别率
在一定的硬件环境下,一次性载入词汇量达到1000 中文词条时,平均准确率达到95%以上,并且实时识别;
• 可移植的代码
软件采用标准C书写核心算法,使得该软件能很快地移植到其他操作系统和处理器上;
• 小封装,低系统配置
如前所述,Wanson ASR Chip1.0 对系统硬件资源要求很少,因此可以适用于一系列消费类电子产品上,例如:
a) PDA,Smart phone
b) CDMA,GSM,GPS 手机
c) MP3 播放器
d) 玩具
e) 车载GPS 系统
f) 其他手提设备
• 在线更改语音资源用户在每次增加/删减/更改词汇集合后,无需关闭和重新启动应用程序,系统可以即时在线更新系统资源,使用户可以马上使用;
• 环境噪音该系统带有噪音消除技术,对于应用环境噪音一定范围之内,仍可保证高识别率;
• 动态词汇库
适用在不同的硬件条件下,词汇集合可以从零到1000 词条,采用系统软件开发包,可以方便创建新的词汇以适用于不同的应用(例如:命令控制集,地址簿,人名等等)。