introlab/rtabmap_ros

RTAB-Map's ROS package.

解决的问题

rtabmap_ros 是 RTAB-Map 库的 ROS 2 封装器,提供了一个完整的同步定位与地图构建 (SLAM) 系统。它允许机器人使用各种传感器构建未知环境的 3D 地图,并通过识别先前访问过的位置来修正地图误差,从而在环境中进行导航。

工作原理

该项目组织成一个模块化的软件包堆栈,处理 SLAM 流程的不同部分:

  • SLAM Core: rtabmap_slam 软件包处理基于外观的闭环检测、图优化和地图组装。
  • Odometry: rtabmap_odom 提供用于 RGB-D、立体视觉和 ICP 里程计的节点,以追踪机器人移动。
  • Synchronization: rtabmap_sync 确保相机和激光雷达数据同时到达 SLAM 节点。
  • Processing & Utilities: rtabmap_util 处理点云过滤、障碍物检测和格式转换。
  • Visualization: rtabmap_viz 和 rtabmap_rviz_plugins 提供 GUI 和 RViz 显示,用于实时图监控和特征匹配。

适用对象

使用 ROS 2 (Humble 或更新版本) 并需要强大、基于图的 SLAM 解决方案,且支持多种传感器模式 (RGB-D、立体视觉或激光雷达) 的机器人开发人员和研究人员。

特点

  • 多传感器支持: 可与 RGB-D 相机、立体相机和激光雷达数据配合使用。
  • 闭环检测: 使用基于外观的检测来识别重访地点并优化地图图表。
  • 灵活输出: 将地图导出为占用网格、点云或 OctoMaps。
  • 模块化架构: 分割成小型软件包以最小化依赖关系,仅保留特定流程所需的依赖项。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目