当今监控的主要缺点在于人工操作员的参与,这很容易分心,因此我们需要一个可以自主连续监控区域、在识别不需要或令人讨厌的事物的同时做出决策并做出相应响应的系统。使用计算机视觉进行对象跟踪对于实现自动化监视至关重要。
我做这个项目是为了建造一个基本的球跟踪车。在这里,我的机器人使用相机拍摄帧并进行图像处理以追踪球。可以使用球的颜色、形状、大小等特征。
但我的目标是为这样的机器人制作一个基本原型,它可以感知颜色和形状并跟随它。我的机器人试图找到一种硬编码的颜色,如果它找到一个该颜色的球,它就会跟随它。
我选择 raspberry pi 作为这个项目的微控制器,因为它为使用 Raspberry Pi 相机模块提供了极大的灵活性,并允许在 Python 中编码,这是非常用户友好的 OpenCV 库,用于图像分析。
为了控制电机,我使用 H 桥从顺时针切换到逆时针或停止电机。当必须在不同的障碍情况下控制方向和速度时,我通过代码集成了这一点。
逐帧检测图像的关键是避免任何帧丢失,因为如果机器人在几帧丢失后无法预测球的方向,机器人就会进入不确定状态。即使它管理掉帧,如果球超出相机的范围,它也会进入不确定状态,在这种情况下,然后我让我的机器人对其环境进行 360 度视图,直到球来回到相机的范围内,然后开始朝着它的方向移动。
对于图像分析,我正在拍摄每一帧,然后用所需的颜色对其进行掩蔽。然后为了降噪,我正在侵蚀噪音并扩大主要斑点。然后我找到所有的轮廓并找到其中最大的一个并将其绑定在一个矩形中。并在主图像上显示矩形并找到矩形中心的坐标。我附上了图像分析部分的算法(伪代码),并在视频中演示了这部分。
最后,我的机器人尝试将球的坐标带到其假想坐标轴的中心。我的机器人就是这样工作的。我喜欢在这个项目上工作很多,这是一次很好的经历。
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
全部0条评论
快来发表一下你的评论吧 !