【睿尔曼-RealMan】语音模块常见问题及解决方法

Ron 2024-04-09

一、创建工作空间并编译

打开终端运行以下命令

mkdir -p 自定义空间名称/src

将xf_mic_asr_offline_line文件夹放入工作空间的src目录下,然后进行编译

cd 自定义空间名称

catkin_make

1. 配置 so 库需要根据不同的主控架构进行配置,如果是在 Jetson-Nano 或者树莓派等微型主控可以配置 arm 文件夹的 so 库文件,如果使用的是 Linux 笔记本或者装有虚拟机的主机,那么配置的 so 库可以选择 x64 文件夹。本文以x64为例。配置 so 库到/usr/lib 目录下,而且编译 CMakeLists.txt 文件内的库依赖也需要同步进行更新运行 。具体路径与命令如下。

CMakeLists.txt配置同步如下。

 

用户参数文件放置在功能包的 config 文件夹中,可以根据备注说明修改参数, 修改后不需要编辑即可直接运行 launch 文件启动,具体参数如下图 所示。

 

ROS 语音功能包需要运行两个指令 base.launch 和 mic_init.launch,

在catkin_ws工作空间下打开终端分别运行一下两条指令

roslaunch xf_mic_asr_offline_line base.launch

roslaunch xf_mic_asr_offline_line mic_init.launch

若运行mic_init.launch时出现11212报错,则表明离线资源已经过期,需要进行更换离线资源,以下为更换的整个流程。

 

 

 二、离线语音注册

 2.1、注册科大讯飞账号

> 打开科大讯飞开放平台网页,网址:https://www.xfyun.cn,注册账号。

 2.2、创建应用

选择控制台→我的应用→创建新应用→填好对应资料后提交,可以看到自己的APPID。创建新应用会生成一个 APPID,与 SDK 中离线语音资源文件匹配。创建新应用试用期 90 天,若不购买服务,可以再次创建新应用重新替换 APPID 和离线

语音资源文件获得新的 90 天试用,每个实名制用户可以免费申请 5 个应用。

点击离线命令识别→下载Linux版本的SDK

 2.3、替换common.jet

将下载的SDK解压,将解压后文件夹中bin/msc/res/asr下的common.jet文件拷贝到自己ROS工作空间下

的/home/user/catkin_ws/src/xf_mic_asr_offline_line/config/msc/res/asr,替换掉原来的common.jet。

 2.4、替换APPID

打开/home/zjj/catkin_ws/src/xf_mic_asr_offline_line/config路径下的appid_params.yaml文件,将appid更改成自己的APPID,保存退出,改完之后需要重新编译功能包。

 

若再次运行base.launch 和 mic_init.launch指令出现11210错误,说明APPID与SDK不匹配,如图所示。

在/home/user/catkin_ws/src/xf_mic_asr_offline_line/src路径下的voice_control.cpp文件中需要更改为自己的APPID

 

再次运行base.launch 和 mic_init.launch,程序可以正常运行。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0 条评论

关于作者

Ron

这家伙很懒,什么也没写!

选择发帖板块
选择发帖板块