Page 17 - 网络电信2019年6月刊上
P. 17
软件设计通过此架构实现语音采集识别、多语音识别引擎
图 6 语音远程扩展模块硬件结构 图 9 语音识别流程
切换、多模式交互控制与反馈、语音识别距离扩展等功能,下
面对此做具体介绍。
1.语音采集与识别
语言信息的采集与识别是本系统获取信息的主要途径,
也是软件必须要实现的核心功能,主要包括语音唤醒、语音识
别、语音合成等功能。本系统采用讯飞开放平台的语音识别
[8]
库进行声音到文字或指令的转换 。语言信息采集和播放使用
WM8960,WM8960将外界声音利用高精度模数转换器(analog to
digital converter,ADC)转换为数字信号,随后软件将声音
[9]
的数字信息传入语音识别库即可获取到声音的文字信息 。控
制板利用文字信息进行一系列逻辑判断,通过ZigBee网络对终
图 7 语音远程扩展模块
响导致延时甚至直接无法工作,导致用户体验变差 [12] 。 另一种
常用的识别模式是离线语音识别,其使用本地的语音识别算法
进行语音识别,不需要经过网络,在速度方面快于云端识别,
但多样化与识别精度方面不及在线识别。
汲取两种识别模式的优势,本系统的设计采用一种创新模
式,自动切换两种识别模式进行识别。在网络情况良好时,优
先使用在线语音识别引擎;当网络出现拥堵时,自动切换至离
线语音识别引擎。随时保证用户命令能够成功识别。云端语音
识别引擎和离线语音识别引擎的自动切换是本设计的特点,两
者自动切换的软件实现过程如图10所示。采集语音数据后,根
据当时“ping”命令的网络延时情况,进行识别引擎选择:当网
端设备下发指令,终端设备接收指令后按照指令完成一系列动
络延迟较低时,选择云端语音识别引擎;当网络延迟很高时,
作,并反馈信息到控制板,控制板接收信息并通过声音和文字
的方式将信息呈现给用户。具体识别过程如图9所示 [10-11] 。 采用离线语音识别引擎。考虑到网络可能在识别过程中突然拥
堵,因此,云端语音识别引擎在一段时间内没有返回识别结果
图 8 软件整体结构框图 时,结束语音识别并使用离线语音识别引擎直接解析返回结
果,保证每次语音识别都能得到最优化结果。
图 10 多语音识别引擎切换流程图
2.多语音识别引擎切换
传统语音控制系统大多采用在线网络,基于云端语音识别
引擎得出识别结果,此识别模式提供多样化的语音服务和高精
度的识别结果,但需要接入网络,语音的识别可能受到网络影
网络电信 二零二零年六月 23