智能机器人真正走进家庭,真正为人们的生活提供服务需要机器人不仅能够听懂人们的讲话,还要具有对周围环境的认知能力,并把语音理解与环境认知结合起来。本项目旨在初步探索语音识别与物体检测两者之间的匹配过程,实现一个样例来提供简易的智能服务。
项目功能1、APP可以识别到语音并进行语义分词。
2、APP可以检测到相机图像中的多个物体,并确定各个物体的位置信息。
3、APP可以简单理解语义信息并将语音识别的结果与物体检测的结果对应起来。
4、APP可以进行语音合成,将服务结果通过语音播放。
项目设计本项目中的语音部分采用科大讯飞[1]提供的语音云服务来完成。百度的云API没有物体检测相关的接口,且高通SNPE对于物体检测网络中的某些网络层不友好,这些网络层只能跑在CPU上,而CPU和GPU之间的数据交换会造成较大延迟,所以物体检测部分采用腾讯的开源框架NCNN[2]来实现。
项目实现
本项目的流程图一所示,首先AI KIT会接收到人们的语音指令,AI KIT会调用科大讯飞提供的语音服务来完成语音识别与语义分词的功能,最后将分词结果返回。然后根据语音内容调用摄像头拍照,将物体检测的结果与语义分词的结果进行匹配,将匹配完成的服务结果通过科大讯飞的云服务进行语音合成,最后通过语音进行播放。
本项目中的物体检测采用轻量化的MobileNet-SSD网络结构[4],MobileNet-SSD网络在NCNN框架上运行,充分利用到了高通845平台上的8核CPU实现高效率推理。MobileNet-SSD的网络结构如下图所示。
参考资源
[1] 讯飞开放平台-以语音交互为核心的人工智能开放平台. https://www.xfyun.cn/
[2] 一个为手机端极致优化的高性能神经网络前向计算框架: ncnn. https://github.com/Tencent/ncnn
[3] yolov2-Tiny-NCNN-Android-demo. https://github.com/yuace/yolov2-Tiny-NCNN-Android-demo
[4] A caffe implementationof MobileNet-SSD detection network, with pretrained weights on VOC0712 andmAP=0.727. https://github.com/chuanqi305/MobileNet-SSD
Comments