4.2冰达机器人:视觉实例-机器人视觉循线、视觉实例-调整循线颜色

4.2.10a视觉实例-机器人视觉循线

本节内容演示一个机器人视觉的视觉循线实例

准备工作:布置一块区域作为循线场所,如下图所示。用蓝色胶带在地面贴一条路线(机器人极限转弯半径0.5m,不要贴得过于曲折),将机器人摄像头调整为倾向地面30度左右,机器人放置到路线上。

机器人端启动摄像头roslaunch robot_vision robot_camera.launch

机器人端启动视觉循线roslaunch robot_vision line_follow.launch

PC 用两个终端打开两个rqt_image_view工具,分别订阅/image_raw/compressed和/result_image/compressed

左侧图像是循线的结果,红色点是机器人定位到线的中心位置,右侧为正常摄像头图像。

在右侧窗口改为订阅/mask_image/compressed就可以显示机器人找到的线的位置

机器人端启动底盘roslaunch base_control base_control.launch

机器人就会自动开始沿着线走到线的末端。

4.2.10b视觉实例-调整循线颜色

本节内容介绍循线颜色的调整,在上一节中演示了一个机器人视觉的视觉循线实例,在例程中默认使用的是蓝色线条。接下来介绍如果想用其他颜色的线要如何调整。

首先在蓝色线旁边布置一条其他颜色的线,这里以红色为例

机器人端启动摄像头roslaunch robot_vision robot_camera.launch

机器人端启动循线节点并传入test_mode参数:

roslaunch robot_vision line_follow.launch test_mode:=true

PC端用两个终端打开两个rqt_image_view工具,分别订阅/mask_image/compressed和/result_image/compressed

可以看到左侧图像有一个红色准心,这是整个图像的中心。而右侧图像就是机器人找到的蓝色线。

在启动循线时我们传入了test_mode参数,这个参数会让不断输出左侧图像中红色准心处的HSV色彩空间值。例如现在显示的就是地面的HSV值。

将机器人的位置移动一下,让准心对准红色路线,此时信息已经变成红色线路的HSV值。

PC 启动动态调参工具rosrun rqt_reconfigure rqt_reconfigure

HSV参数的上限必须严格限制在检测到的参数范围,因为我这里使用的红线上面还带有白色log,所以下限适当放宽提高获取图像的效果。可以看到现在/mask_image/compressed话题输出的图像就只显示处红色线条的位置了。

因为动态调参的结果是一次性的,只在这一次应用中有效,如果想要持续生效需要直接修改机器人端的launch文件。

roscd robot_vision/launch

vim line_follow.launch

将line_follow.launch文件中的HSV值直接改成红色线路的值

机器人端启动摄像头roslaunch robot_vision robot_camera.launch

机器人端启动视觉循线roslaunch robot_vision line_follow.launch

PC 用两个终端打开两个rqt_image_view工具,分别订阅/mask_image/compressed和/result_image/compresse

这里重新循线后就只显示红色线路了。我这里因为光线变化,显示效果受到影响,大家自己操作的时候遇到了可以重新修改参数调节。

相关推荐
old_power34 分钟前
【PCL】Segmentation 模块—— 基于图割算法的点云分割(Min-Cut Based Segmentation)
c++·算法·计算机视觉·3d
通信.萌新42 分钟前
OpenCV边沿检测(Python版)
人工智能·python·opencv
ARM+FPGA+AI工业主板定制专家44 分钟前
基于RK3576/RK3588+FPGA+AI深度学习的轨道异物检测技术研究
人工智能·深度学习
赛丽曼1 小时前
机器学习-分类算法评估标准
人工智能·机器学习·分类
伟贤AI之路1 小时前
从音频到 PDF:AI 全流程打造完美英文绘本教案
人工智能
weixin_307779131 小时前
分析一个深度学习项目并设计算法和用PyTorch实现的方法和步骤
人工智能·pytorch·python
helianying551 小时前
云原生架构下的AI智能编排:ScriptEcho赋能前端开发
前端·人工智能·云原生·架构
池央1 小时前
StyleGAN - 基于样式的生成对抗网络
人工智能·神经网络·生成对抗网络
PaLu-LI2 小时前
ORB-SLAM2源码学习:Initializer.cc⑧: Initializer::CheckRT检验三角化结果
c++·人工智能·opencv·学习·ubuntu·计算机视觉
小猪咪piggy2 小时前
【深度学习入门】深度学习知识点总结
人工智能·深度学习