语音识别--搭建一个简易对话机器人

⚠申明: 未经许可,禁止以任何形式转载,若要引用,请标注链接地址。 全文共计6243字,阅读大概需要3分钟
🌈更多学习内容, 欢迎👏关注👀【文末】我的个人微信公众号:不懂开发的程序猿
个人网站:https://jerry-jy.co/

❗❗❗知识付费,🈲止白嫖,有需要请后台私信或【文末】个人微信公众号联系我

搭建一个简易对话机器人🤖


一、任务需求

创建一个简单的对话机器人,当检测到我们说出特定语句时,机器人会回应预设的语句。

我们希望机器人能实现以下功能:

  • 当我们说’见到你很高兴’时,机器人会说’我也很高兴’
  • 当我们说’我爱你’时,机器人会说’我也爱你呀’
  • 当机器人没有检测到特定语句时,会说’对不起,我没有听清楚’

要求:创建一个能实现简单对话的机器人。

二、任务目标

1、我们输入一段语音
2、机器人获取语音,将其做为输入
3、机器人做语音识别,将语音转化为文字
4、机器人检测到特定句子时,会返回特定文字
5、机器人将返回文字合成为语音

三、任务环境

1、jupyter开发环境
2、python3.6
3、tensorflow2.4

四、任务实施过程

1、创建对话库(字典)

首先创建语句字典,用于存储机器人要检测的语句

chatbox = {‘很高兴见到你’:‘谢谢,我也很高兴’,‘我爱你’:‘我也爱你呀’}

当机器人检测到特定语句时,可以通过如下方式返回输出值

chatbox.get(‘我爱你’,‘对不起,我没有听清楚’)

‘我也爱你呀’

这样,当机器人检测不到特定语句时,可以返回’对不起,我没有听清楚’

‘对不起,我没有听清楚’

2、实现文本转语音(TTS)

为了避免硬件设备的问题(例如没有声卡),这里我们封装了一个自定义的语音合成工具tf_tts

自定义TTS的优点是合成效果较好,不依赖于声卡,缺点就是速度较慢。

如果有硬件设备支持,可以使用gtts等工具进行语音合成,速度较快

我们将该工具存放在'/home/jovyan/dependences/'目录下的utils.py

因此首先需要将该路径添加到系统变量当中,这样utils才能被顺利import进来

import sys
sys.path.append('/home/jovyan/dependences/')
from utils import tf_tts

尝试转换两个语句试试,首先转换一段中文

import warnings
warnings.filterwarnings('ignore')
test_audio = tf_tts('你爱我,我爱你,蜜雪冰城甜蜜蜜')
phoneme seq: sil n i3 #0 ^ ai4 #0 ^ uo3 #0 ^ uo3 #0 ^ ai4 #0 n i3 #0 m i4 #0 x ve3 #0 b ing1 #0 ch eng2 #0 t ian2 #0 m i4 #0 m i4 sil

播放出来听一听

import IPython.display as ipd
ipd.Audio(test_audio, rate=24000)

再转换一段英文试试


                
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

不懂开发的程序猿

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值