1392浏览
查看: 1392|回复: 1

【临沂】文字识别聊天机器人

[复制链接]
上节课我们学习了使用摄像头识别文字,这节课我们继续使用摄像头制作一个文字识别聊天机器人
本课所需硬件
树莓派主板、古德微扩展板,摄像头、LED灯、按钮、音箱(耳机)、母对母杜邦线若干
首先连接硬件,可以用古德微的使用摄像头的专用设备,也可以用乐高积木等搭建一个放置摄像头的设备。
【临沂】文字识别聊天机器人图1
音箱接口在摄像头右侧,如果没有音箱也可以使用耳机,在16号口接入led灯,按钮接入18号管脚。
硬件连接好之后,接下来我们就要识别文字,把事先准备好的问题,平行于架子,放在摄像头正下方,不要放反了,我们的问题可以是中文的问题,也可以是英文问题或者数学表达式比如34 + 13 =,问题最好是印刷版的,这样识别效果好,也支持手写输入,书写的内容不同识别效果也会有所出入。

一切准备就绪,现在我们开始编写程序,我们希望达到的效果是聊天机器人不工作时LED灯熄灭,按下按钮开始工作,工作时LED灯亮,拍照结束,聊天机器人识别完我们的问题后会说:“您的问题是:XXX”,“我的回答是:XXX”并且我们在右侧的Log显示区能够看到问题和回答。
所以首先我们设置16号管脚的LED灯熄灭,新建变量“按钮反馈”并赋值“按钮反馈”为从GPIO18读取信号,如果“按钮反馈”为1,也就是按钮按下,LED灯亮起,摄像头拍照并识别文字,使用“人工智能”——“基础”中的“文本回答问题积木,回答识别出来的问题”该积木的作用是以文字的方式回答后面的问题,
【临沂】文字识别聊天机器人图2
使用“文本”中的“追加”积木,在“你的问题是:”后面追加“识别到的文字”并把返回的文本赋值给变量“strtemp”,继续在“strtemp”后面追加文本“我的回答是:问题回答内容”,
【临沂】文字识别聊天机器人图3
我们已经把机器人要说的话储存到变量strtemp”中了,如何让它说出来呢?在“人工智能”中的“语音识别”模块里有一个播放语音积木,这个积木的作用就是播放第一个参数中的文字,目前只能识别中文字符,第二个参数设置为0时是普通女声,1是普通男生的声音,3为女声情感合成,4为男声情感合成,第三个参数设置语调,取值范围是0-15,第四个参数设置语速,取值范围也是0-15,大家可以根据自己的喜好设置不同的发音、语调和语速。在这里我们使用默认值播放变量“strtemp”,并在右侧的log区输出变量“strtemp”,等待5秒,LED灯熄灭。

【临沂】文字识别聊天机器人图4
完整程序如下:

【临沂】文字识别聊天机器人图5
     程序已经编写好了,是不是迫不及待的和机器人对话了呢?拿出准备好的问题,上传程序与机器人聊天吧!

DFrJ5KYVQaH  中级技匠

发表于 2020-2-20 11:29:01

好,学习中
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

为本项目制作心愿单
购买心愿单
心愿单 编辑
[[wsData.name]]

硬件清单

  • [[d.name]]
btnicon
我也要做!
点击进入购买页面
上海智位机器人股份有限公司 沪ICP备09038501号-4

© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed

mail