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
/detect/image_yellow_lane_marker/compressed:黄色范围颜色过滤的图像。
/detect/image_white_lane_marker/compressed:白色范围的彩色过滤图像。
打开一个新终端并执行 rqt_reconfigure。
rosrun rqt_reconfigure rqt_reconfigure
单击detect_lane,然后调整参数,以便正确过滤黄色和白色。
TIP : 线色过滤的校准过程有时会因为物理环境而变得困难,例如房间里的光线亮度等。
为了让一切快速,请将位于turtlebot3_auatorace_detect/param/lane/的lane.yaml文件的值设置为on重新配置参数,然后开始校准。 首先校准色调低 - 高值。(1) 色调值表示颜色,每种颜色,如,,都有自己的色调值区域(参考hsv图)。 然后校准饱和度低 - 高值。(2) 每种颜色也有自己的饱和度。
yellowwhite
最后,校准亮度低-高值。(3) 但是在源代码中,有自动调整功能,所以校准亮度低值是没有意义的。只需将亮度高值设置为 255。
清晰过滤的线条图像将为您提供清晰的车道结果。
打开位于turtlebot3_autorace_detect/param/lane/中的lane.yaml文件。您需要将修改后的值写入文件。这将使相机在下次启动时设置您在此处设置的参数。
关闭终端或在rqt_reconfigure和detect_laneCtrl终端上使用+终止。C
打开一个新终端并启动不带校准选项的车道检测节点。
roslaunch turtlebot3_autorace_detect detect_lane.launch
打开一个新的终端并启动下面的节点以开始车道跟踪操作。
roslaunch turtlebot3_autorace_driving turtlebot3_autorace_control_lane.launch