UGV Rover PI ROS2 5. 基于深度相机的三维建图

来自Waveshare Wiki
跳转至: 导航搜索
RaspRover
{{{name2}}}
{{{name3}}}
功能简介
特性 UGV Rover ROS2 小车
' 无特性,不解释
' 无特性,不解释
' 无特性,不解释
' 无特性,不解释
接口 TTL总线舵机控制接口 I2C UART

5. 基于深度相机的三维建图

本教程将介绍如何通过 RTAB-Map 算法基于激光雷达和深度相机进行三维建图。我们提供两种可视化途径的建图,在启动建图节点前,默认您已根据第一章 UGV Rover PI ROS2 1. 准备工作里的内容已结束主程序且远程连接上 Docker 容器。

5.1 在 RTAB-Map 中可视化

RTAB-Map(Real-Time Appearance-Based Mapping)是一种用于同时定位与建图(SLAM,Simultaneous Localization and Mapping)的开源算法,广泛应用于机器人导航、自动驾驶汽车、无人机等领域。它采用视觉和激光雷达传感器的数据来构建环境地图并进行定位,属于基于回环检测(loop closure detection)的SLAM方法。

启动 RTAB-Map 的可视化节点:

ros2 launch ugv_slam rtabmap_rgbd.launch.py use_rviz:=false

在一个新的 Docker 容器终端中,运行手柄控制或键盘控制节点任意一个:

#手柄控制(确保手柄接收器插入树莓派中)
ros2 launch ugv_tools teleop_twist_joy.launch.py
#键盘控制(保持运行键盘控制节点处于激活状态)
ros2 run ugv_tools keyboard_ctrl

这样,你就能控制底盘移动,来实现对周边环境的建图了。建图完毕后,直接按 Ctrl+c 退出建图节点,系统将会⾃动保存地图。地图默认保存路径 ~/.ros/rtabmap.db。


5.2 在 RViz 中可视化

启动 RTAB-Map 的可视化节点:

ros2 launch ugv_slam rtabmap_rgbd.launch.py use_rviz:=true

在一个新的 Docker 容器终端中,运行手柄控制或键盘控制节点任意一个:

#手柄控制(确保手柄接收器插入树莓派中)
ros2 launch ugv_tools teleop_twist_joy.launch.py
#键盘控制(保持运行键盘控制节点处于激活状态)
ros2 run ugv_tools keyboard_ctrl

这样,你就能控制底盘移动,来实现对周边环境的建图了。建图完毕后,直接按 Ctrl+c 退出建图节点,系统将会⾃动保存地图。地图默认保存路径 ~/.ros/rtabmap.db。