ROS(indigo) 语音工具 科大讯飞 百度 pocketsphinx julius rospeex 16.11.22更新 ROS中文语音
ROS语音工具汇总,目前先给出链接,只用过一些简单的命令。
中文语音:
参考链接:使用科大讯飞库
1 http://www.ncnynl.com/archives/201611/1069.html
2 http://blog.csdn.net/zhouge94/
pocketsphinx:
1 https://github.com/cmusphinx
2 http://cmusphinx.sourceforge.net/
julius:
1 https://github.com/julius-speech/julius
rospeex:
----
将语音识别实现,然后用ROS控制机器人,完成接口就可。
补充其他资料:
hark:
HARK是开源的机器人试听软件,即机器人的声音处理。 它包括声源定位模块,声源分离模块和分离的语音信号的自动语音识别模块,其工作在具有任何麦克风配置的任何机器人上。
百度语音接口:
http://wiki.ros.org/baidu_speech
https://github.com/DinnerHowe/simple_voice
推荐阅读:
http://rosclub.cn/post-571.html
http://rosclub.cn/post-572.html
|
在demo_mic函数中主要调用了三个函数来完成整个识别过程: (1)sr_init()函数,主要进行参数的初始化,本地结构体变量的状态初始化,设置服务器参数的回调函数。在此函数中进一步调用了科大讯飞提供的create_recorder()函数和open_recorder()函数,但是这些函数最终都是调用ALSA接口完成的pcm设备的初始化和打开设备。 (2)sr_start_listening()函数,主要完成的功能是调用QISRSessionBegin()函数与服务器进行通信,开始进行一次语音识别,调用成功后服务器返回会话ID,获取到ID后,调用start_recorder()函数,来开始从麦克风中获取音频数据,并通过回调函数将获取到的音频数据传至科大讯飞服务器,服务器然后会返回识别的结果,是否识别到VAD等回调各种状态。若识别到VAD则会自动关闭麦克风,停止继续获取音频流数据,服务器返回识别结果,通过回调函数通知到本地。 (3)sr_stop_listening()函数,主要完成收尾工作,关闭麦克风,销毁创建麦克风申请的各种资源,缓冲区等。 在整个代码解析过程中,我认为可能大家会比较感兴趣的地方都在开始的图片里展示出来了。 首先是为什么头文件中在声明函数地方,都要加上 #ifdef __cplusplusextern "C" {#endif ..int function();... #ifdef __cplusplus}#endif 就是为了在c++代码中,编译时防止函数名词被修改,因为C语言编译和c++编译过程不相同,函数名称会被修改。如果在C++编译中不加这个宏定义进行包裹,那么C编译的so文件库可能在C++中调用可能就会有问题。 然后就是在打印调试信息方面有个小技巧,如下: #define SR_DBGON 1 --SR_DBGON 这个名词可以根据需要自行修改#if SR_DBGON == 1# define sr_dbg printf ---sr_deb也可以自行修改,这个名词就代替了printf#else# define sr_dbg #endif 在最开始的#define SR_DBGON 1这个就是所以调试信息的总开关,如果设置为1,那么 sr_dbg 就是等同于printf这个函数, 示例:...sr_dbg("mem alloc failed\n");... 那么示例中的sr_deb就会被替换成,printf("mem alloc failed\n"); 如果设置SR_DBGON 为0,那么根据#if SR_DBGON == 1这个判断可得,#define sr_dbg 就会被识别为空,那么示例中代码就会被替换成如下: ("mem alloc failed\n");即调试信息不会输出了。 本次教程的优酷视频地址如下: http://v.youku.com/v_show/id_XMTg0NzcxMzA3Ng==.html |
ROS(indigo) 语音工具 科大讯飞 百度 pocketsphinx julius rospeex 16.11.22更新 ROS中文语音的更多相关文章
- ROS Learning-001 安装 ROS indigo
如何在 Ubuntu14.04 上安装 ROS indigo 我使用的虚拟机软件:VMware Workstation 11 使用的Ubuntu系统:Ubuntu 14.04.4 LTS ROS 版本 ...
- ROS(indigo)MoveIt!控制ABB RobotStudio 5.6x 6.0x中机器人运动
Gazebo以及相关参考文献,参考: ROS(indigo)ABB机器人MoveIt例子 这里需要配置RobotStudio,请参考ROS官网教程.下面列出要点: window端配置结束后,在Ub ...
- 机器人操作系统ROS(indigo)与三维仿真软件V-Rep(3.2.1)通信接口使用笔记
关键字:ROS(indigo),V-Rep(3.2.1), vrep_ros_bridge(lagadic). vrep_ros_bridge提供了V-Rep和ROS之间的通信接口,可以实现使用ROS ...
- Installing ROS Indigo on the Raspberry Pi
Installing ROS Indigo on the Raspberry Pi Description: This instruction covers the installation of R ...
- ROS indigo 删除和安装
删除比较容易: sudo apt-get remove ros-jade-desktop-full 但是如果怕删不干净可以采用: sudo apt-get remove ros-* ,但是不确定会 ...
- Ubuntu14.04安装和配置ROS Indigo(一)
安装ROS 配置Ubuntu的软件源 配置Ubuntu要求允许接受restricted.universe和multiverse的软件源,可以根据下面的链接配置: https://help.ubuntu ...
- ubuntu 14.04 (desktop amd 64) 安装和配置ROS Indigo
安装ROS 配置Ubuntu的软件源 配置Ubuntu要求允许接受restricted.universe和multiverse的软件源,可以根据下面的链接配置: https://help.ubuntu ...
- ubuntu 14.04 server(amd64) 安装ros indigo
1.添加软件源(添加了正确的软件源,操作系统就知道去哪里下载程序,并根据命令自动安装软件) sudo sh -c 'echo "deb http://packages.ros.org/ros ...
- 学习使用turtlebot2——安装ROS Indigo系统
最近在学习使用turtlebot2,特此做一些学习记录. 安装ROS前要先决定自己电脑的Ubuntu(乌班图)系统.现在学习ROS常使用的Ubuntu系统有Ubuntu 16.04 和Ubuntu14 ...
随机推荐
- [LeetCode] Second Minimum Node In a Binary Tree 二叉树中第二小的结点
Given a non-empty special binary tree consisting of nodes with the non-negative value, where each no ...
- 实战分享:如何成功防护1.2T国内已知最大流量DDoS攻击
作者:腾讯云宙斯盾安全团队&腾讯安全平台部 引言: DDoS攻击势头愈演愈烈,除了攻击手法的多样化发展之外,最直接的还是攻击流量的成倍增长.3月份国内的最大规模DDoS攻击纪录还停留在数百G规 ...
- Spring MVC 知识点记忆
1.Dao 用的 @Repository 2.Handler 用的 @Controller 3. @Autowired 消除了对get set方法 4. @RequestMapping(value= ...
- python基础面试
1 请用自己的算法, 按升序合并如下两个list, 并去除重复的元素: list1 = [2, 3, 8, 4, 9, 5, 6]list2 = [5, 6, 10, 17, 11, 2] 答案: ...
- 关于Go 的 Interface
最近在用Go语言写程序, 其中遇到一个场景:写了一个接口,3个实现接口的struct. 另外一个struct包含此接口,根据构造函数赋予不同的结构实现. 一开始struct里写的是接口的地址,但是在创 ...
- Shiro集成Web
Shiro不仅可以集成到web中,也可以集成Spring. 1.在WEB中添加Shrio支持 2.WEB中INI配置 3.JSP/GSP标签 在WEB中添加Shrio支持 如果要想在web中使用Shr ...
- [USACO07NOV]牛继电器Cow Relays
题目描述 给出一张无向连通图,求S到E经过k条边的最短路. 输入输出样例 输入样例#1: 2 6 6 4 11 4 6 4 4 8 8 4 9 6 6 8 2 6 9 3 8 9 输出样例#1: 10 ...
- 2015 多校联赛 ——HDU5303(贪心)
Delicious Apples Time Limit: 5000/3000 MS (Java/Others) Memory Limit: 524288/524288 K (Java/Other ...
- Python中的变量类型
原文传送门:点击
- React框架 dva 和 mobx 的使用感受
最近在用react写web项目,领导为了让前端便于维护要求都用react作为开发基础,框架选型不限.在使用 react 的时候或多或少会接触到状态管理,从开始学 react 到现在也挺久了,做一些前端 ...

