TurtleBot3自动驾驶Noetic-3.车道线检测

在接收来自 TurtleBot3 或 Gazebo 模拟的摄像头图像上运行的车道检测包,Remote PC以检测行驶车道并沿着车道驾驶 Turtlebot3。

以下说明描述了如何通过 rqt 使用和校准车道检测功能。

将 TurtleBot3 放置在黄色和白色车道之间。

注意:车道检测在左侧过滤黄色,而在右侧过滤白色。确保黄色车道位于机器人的左侧。

打开一个新终端并启动 Autorace Gazebo 模拟。将使用roslaunch命令 roscore自动启动。

roslaunch turtlebot3_gazebo turtlebot3_autorace_2020.launch

打开一个新终端并启动内在校准节点。

roslaunch turtlebot3_autorace_camera intrinsic_camera_calibration.launch

打开一个新终端并启动外部校准节点。

roslaunch turtlebot3_autorace_camera extrinsic_camera_calibration.launch

打开一个新终端并启动车道检测校准节点。

roslaunch turtlebot3_autorace_detect detect_lane.launch mode:=calibration

打开一个新终端并启动 rqt.

rqt

通过选择Plugins > Cisualization > Image view来启动 rqt 图像查看器。

可以运行多个 rqt 插件。


在每个图像查看器中显示三个主题

1./detect/image_lane/compressed

noetic_detect_image_lane.png


/detect/image_yellow_lane_marker/compressed:黄色范围颜色过滤的图像。

noetic_detect_yellow_lane.png

/detect/image_white_lane_marker/compressed:白色范围的彩色过滤图像。

noetic_detect_white_lane.png

打开一个新终端并执行 rqt_reconfigure。

rosrun rqt_reconfigure rqt_reconfigure

单击detect_lane,然后调整参数,以便正确过滤黄色和白色。

noetic_lane_reconfigure.png

TIP : 线色过滤的校准过程有时会因为物理环境而变得困难,例如房间里的光线亮度等。

为了让一切快速,请将位于turtlebot3_auatorace_detect/param/lane/的lane.yaml文件的值设置为on重新配置参数,然后开始校准。 首先校准色调低 - 高值。(1) 色调值表示颜色,每种颜色,如,,都有自己的色调值区域(参考hsv图)。 然后校准饱和度低 - 高值。(2) 每种颜色也有自己的饱和度。

yellowwhite

最后,校准亮度低-高值。(3) 但是在源代码中,有自动调整功能,所以校准亮度低值是没有意义的。只需将亮度高值设置为 255。

清晰过滤的线条图像将为您提供清晰的车道结果。

打开位于turtlebot3_autorace_detect/param/lane/中的lane.yaml文件。您需要将修改后的值写入文件。这将使相机在下次启动时设置您在此处设置的参数。

noetic_lane_yaml.png

关闭终端或在rqt_reconfigure和detect_laneCtrl终端上使用+终止。C

打开一个新终端并启动不带校准选项的车道检测节点。

roslaunch turtlebot3_autorace_detect detect_lane.launch

打开一个新的终端并启动下面的节点以开始车道跟踪操作。

roslaunch turtlebot3_autorace_driving turtlebot3_autorace_control_lane.launch