树莓派小车:智能捡球小车——Q宝

演示视频:浙工大工程实训树莓派——智能捡球小车Q宝_哔哩哔哩_bilibili

一、路线图

在起点播报“需要进行人脸认证”,人脸识别成功后,达到暂停点后,等待用户输入要寻找的目标小球类型,随后三个左转进行小球识别(识别成功后直接直行,不再继续识别下一小球),随后避开障碍物,三个左转进行二维码识别,将小球运送到对应的位置。在需要对用户进行提示(如需要用户操作或正确识别物体后等),会进行语音播报或微信消息推送。

 二、运行过程

 

 三、实验原理

八大模块:

1.巡线模块        2.超声波避障模块

由于我们的项目在分多个阶段进行,所以在不同阶段会调用不同的循迹的代码。

在第一阶段的循迹过程中,智能小车根据车头下方的感应器在判断前进,左右转弯等行为,在遇到第一个直角右转口后,进入阶段二,阶段二是智能小车减速,因为速度过快可能导致车头下方的检测出现小毛病,小车进入第一个左拐路口,增加左转时间,然后直行,到横线处,小车停止,进入阶段三,小车先识别前方的球类,然后倒车到拐口处,原地右转,之后的识别也是类似的操作,随后有一个简单的避障功能,利用超声波检测与前方障碍物的距离,在距离小于一定阈值的时候,小车不再是依靠黑线行动,而是右转绕过障碍物,进入下一个阶段,该阶段是寻找放置球类的地点,每个地点处都黏贴了一张二维码图,小车能够根据二维码图进入相应的停车位。至此结束循迹。

3.人脸识别模块

我们使用的分类器:haarcascade_frontalface_default.xml

使用OpenCV中检测的API函数:detectMultiScale(const Mat& image, vector& objects, double scaleFactor=1.1int minNeighbors, int flagcvSize

4.手势识别模块

树莓派的运算力有限,所以我们直接用百度API实现手势识别。

百度支持支持的24类手势列表:拳头、OK、祈祷、作揖、作别、单手比心、点赞、Diss、我爱你、掌心向上、双手比心(3种)、数字(9种)、Rock、竖中指。

5.小球识别模块

HSV域颜色检测和霍夫圆检测

6.二维码识别模块

使用pyzbar识别二维码

7.语音播报模块

使用百度智能云的语音合成技术,调用百度API生成MP3文件

使用pygame.mixer.music.load()函数播放MP3文件

8.微信通知模块

 使用Server酱,获取SendKey,调用API

四、问题与解决

1.电池电量好像会影响到动力,在进行超声波避障时容易无法回到正确轨道上。
2.WIFI有时候会莫名断开,在vscode端写代码时,还没保存就断开了。
2.进行球类识别测试时,在本地测试效果良好,但是投入实际应用中时,受到光线等因素的影响,识别球类的能力大大下降。
3.摄像头的使用无法共享        解决方法:关闭其他占用摄像头的进程
4.小车可以连接WIFI,但DNS配置错误无法调用外部API接口。解决方法:要通过修改/etc/resolv.conf更新DNS
5.小车摄像头精度不够,视角较小,在识别人脸时,需要不断移动人脸照片,让摄像头能够抓取人脸。

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值