一、语音识别简介
语音识别是以语音为研究对象,通过语音信号处理和模式识别让机器自动识别和理解人类口述的语言。
语音识别技术,也被称为自动语音识别ASR,就是让机器通过识别和理解过程把语音信号转变为相应的文本或命令的技术。
语音识别SDK开发包是各大语音识别公司为用户提供的一套有关语音识别的二次开发接口,用户可以利用这个接口快速地开发符合客户需求的语音识别应用。
目前主要的语音识别服务商有:
百度、腾讯、科大讯飞、云知声、阿里巴巴、华为
百度、讯飞、腾讯、阿里等服务商的语音识别均已开始收费,但提供有限时间的试用。
华为的HiAI是免费的,但仅限于华为终端使用。
二、华为HiAI简介
华为语音识别基于HUAWEI HiAI开放平台。
HUAWEI HiAI是面向智能终端的AI能力开放平台,基于 “芯、端、云”三层开放架构。
HUAWEI HiAI的优势在于充分利用了华为麒麟芯片的NPU能力,结合华为EMUI把能力内置于端侧,可实现快捷接入,轻量级部署,Engine与App解耦独立部署,快速升级支持模型在线更新。另一个优势在于华为HiAI 是免费开放给开发者使用的。
华为语音识别引擎是面向移动终端的语音识别能力,向开发者提供人工智能应用层API,可以将语音文件、实时语音数据流转换为汉字序列,准确率达到90%以上
三、华为语音识别的使用
1.注册认证下载
首先需要注册认证,进入华为开发者联盟页面,登录华为开发者联盟官网。
接着进入服务接入,首先点击 “管理中心” > “开发服务”,点击HUAWEI HiAI卡片添加HUAWEI HiAI服务。
接着签署华为开发者HiAI服务协议
然后就可以进行SDK的下载了,点击“SDK下载”下载SDK压缩包。
开发HiAI应用建议使用Android Studio 3.0.1及以上版本,终端处理器不低于kirin 970,并且系统软件版本不低于EMUI 8.1.0。
2.开发步骤
(1)添加依赖库
将huawei-hiai-pdk-1.0.0.aar、huawei-hiai-asr-10.0.4.309.aar包复制至工程中的app/libs下。
在build.gradle中将huawei-hiai-pdk-1.0.0.aar、huawei-hiai-asr-10.0.4.309.aar添加至工程中。
(2)程序设计
1)语音识别引擎的初始化,
调用createAsrRecognizer()方法创建引擎,
配置语音输入来源和静音检测时间,
调用mAsrRecognizer.init方法进行初始化,init方法有两个参数:
第一个参数是intent,将刚才设置的语音输入来源和静音检测时间传入。
第二个参数是一个AsrListener,用来监听语音识别的各种状态,这个Listener需要实现。
2)初始化完成后,当用户点击语音识别按键时,调用startListening()方法进行语音识别。
AsrListener类中的onResults和onPartialResults方法可以获取识别结果,获取了识别结果或部分识别 结果后,需要对有用的结果进行处理,如果识别到了“前”,则需要发送小车端需要的前进命令 “ONA”,如果识别到了“左”,则发送左转命令“ONC”,以此类推。
3)当不需要识别时,可以调用取消或停止识别方法。
4)页面销毁时,需要调用引擎释放方法,释放引擎。
四、完整代码
关注公众号“ Android硬开发 ”,回复“蓝牙小车”