ROS语音交互
语音交互功能:根据https://code.corvin.cn/corvin_zhang/ros_voice_system开源代码进行改编;(1)准备工作:申请科大讯飞帐号,下载SDK注意选对sdk版本,以及选择好对应的功能(2)准备工作:申请图灵机器人帐号创建机器人:记录创建机器人apikey做为连接端口;(3)利用科大讯飞源码和图灵机器人建立ros节点建立文本...
语音交互功能:
根据https://code.corvin.cn/corvin_zhang/ros_voice_system开源代码进行改编;
(1)准备工作:申请科大讯飞帐号,下载SDK



注意选对sdk版本,以及选择好对应的功能
(2)准备工作:申请图灵机器人帐号
创建机器人:
记录创建机器人apikey做为连接端口;
(3)利用科大讯飞源码和图灵机器人建立ros节点
建立文本转语音ros节点:

建立语音转文本ros节点:

建立图灵机器人ros节点:

- 创建art_driver节点,其中实现了一直给iflytek_wakeup节点发送确认消息,使iflytek_wakeup节点一直处于监听状态;
std_msgs::String msg;
msg.data = "y";
while(1){
pub.publish(msg);
}

(5)仿照iflytek_asr节点创建iflytek_wakeup节点,这个节点一直处于监听状态,一但本节点确认到关键词(这里我定义的是小艾),一句话中只要有小艾这个词就会被激活,发送激活消息给ifytek_asr节点,并且持续三分钟,三分钟以后需要再次唤醒;ifytek_asr节点继续监听我们询问的问题,并且转换成对应文本,文本发给tuling_nlu节点,并通过接口api下拉智能机器人回馈消息,并把文本输入到iflytek_tts节点进行文本转语音进行播放;
(6)替换成我们的接口
科大讯飞asr:
<node pkg="iflytek_asr" type="iflytek_asr_node" name="iflytek_asr_node" output="screen">
<param name="app_id" type="String" value="57207923" />
appid需要替换成我们的appid值
并且.so库换成我们在科大讯飞官网上下载sdk包中的.so库;

科大讯飞tts:
同asr流程。
图灵机器人:
<node pkg="tuling_nlu" type="tuling_nlu_node" name="tuling_nlu_node" respawn="true" output="screen">
<param name="tuling_key" type="String" value="5149fb75f6434b029480f3aa8dd77945" />
<rosparam file="$(arg config_file)" command="load" />
需要我们填写自己的apikey
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐



所有评论(0)