来源: 树莓派语音聊天机器人(基于讯飞语音和图灵机器人) – 河间老王的博客 – 博客频道 – CSDN.NET
使用方法:
终端进入/../../man_machine_interaction/bin/目录,运行source first.sh
实现过程:
通过语音识别技术将语音转换成文字,图灵机器人生成对话数据反馈回本地,语音合成技术将对话数据合成语音并播放,实现
实时人机语音交互
程序开发步骤(树梅派平台):
1:分别修改samples文件夹下三个文件夹中的32bit_make.sh文件,把x86换成RaspberryPi(如果使用first.sh文件此操作可省)
2:分别修改samples文件夹下三个文件夹中的Makefile文件,把x86和x64换成RaspberryPi
3:创建frist.sh
4:新建write_text.txt,read_text.txt,man.wav和tuling.wav四个文件,存储程序运行过程中产生的中间变量
5:新建sound_to_text.py,text_to_sound.py,turing.py和interface.py四个python文件,编写代码分别实现对应功能
6:修改tts_sample.c文件,修改生成音频名称,添加读取read_text.txt文件代码,,在c源程序139行添加自己的appid
7:修改iat_sample.c文件,添加写入write_text.txt代码,在c源程序238行添加自己的appid
8:创建iat.sh,tts.sh文件
9:编写python文件
文件功能说明:
first.sh -> 编译samples文件夹下的源代码并生成可执行文件存放在bin文件夹下,用source执行
-> 执行完毕后在bin文件夹下会生成三个可执行文件
-> 代码内容和含义详见原文档
-> 运行python文件,启动程序
write_text.txt -> 语音识别成文字后文本内容将储存在本文件中,本文件须在iat_sample.c文件中添加相应代码让反馈文
-> 本写入本txt文件,供turing读取
read_text.txt -> 存储图灵反馈数据供语音合成程序读取,本文件由turing.py文件写入,存储图灵反馈文本内容,供
-> tts_sample.c读取
man.wav -> 人说话的音频将存储在此文件中
turing.wav -> 合成语音将存储在此文件中以供播放,本文件由tts_sample.c文件产生,修改此c文件可修改默认名称
sound_to_text.py -> 提供声音转文字功能
text_to_sound.py -> 提供文字转语音功能
turing.py -> 提供人机对话功能(图灵)
interface.py -> 主程序及软件界面(不打算用tkiter编写界面了,有兴趣的可以自己写写)
tts.sh -> 用于在任何目录启动tts_sample
iat.sh -> 用于在任何目录启动iat_sample
again.wav -> 我没有听清楚,有本事你在跟我说一遍 的音频
SDK文档说明 -> 讯飞SDK文件功能说明,修改c源程序可以依据此文档进行修改
注:
1:声卡在每次运行程序时会失灵,运行程序前重新拔插一下即可
2:语音识别和语音合成是科大迅飞的接口,对话部分是图灵机器人的接口
3:有什么不明白的可以QQ:1879369860联系我
4:readme.txt文件在bin目录下,先看一下
5:Linux平台SDK源代码(支持树莓派).zip为讯飞语音支持树莓派的源SDK文件,现在讯飞取消了对树莓派的支持,故必须用老版本
6:man_machine_interaction.zip为我自己编写的树莓派语音聊天机器人
7:下载地址http://download.csdn.NET/detail/lingdongtianxia/9745626