introlab/rtabmap_ros

RTAB-Map's ROS package.

What it solves

rtabmap_ros is a ROS 2 wrapper for the RTAB-Map library, providing a comprehensive system for Simultaneous Localization and Mapping (SLAM). It allows robots to build 3D maps of unknown environments using various sensors and navigate within them by recognizing previously visited locations to correct mapping errors.

How it works

The project is organized into a modular stack of packages that handle different parts of the SLAM pipeline:

  • SLAM Core: The rtabmap_slam package handles appearance-based loop closure detection, graph optimization, and map assembly.
  • Odometry: rtabmap_odom provides nodes for RGB-D, stereo, and ICP odometry to track robot movement.
  • Synchronization: rtabmap_sync ensures that camera and lidar data reach the SLAM node simultaneously.
  • Processing & Utilities: rtabmap_util handles point cloud filtering, obstacle detection, and format conversions.
  • Visualization: rtabmap_viz and rtabmap_rviz_plugins provide a GUI and RViz displays for live graph monitoring and feature matching.

Who it’s for

Robotics developers and researchers who use ROS 2 (Humble or newer) and need a robust, graph-based SLAM solution that supports multiple sensor modalities (RGB-D, stereo, or lidar).

Highlights

  • Multi-sensor support: Works with RGB-D cameras, stereo cameras, and lidar data.
  • Loop Closure: Uses appearance-based detection to recognize revisited places and optimize the map graph.
  • Flexible Output: Exports maps as occupancy grids, point clouds, or OctoMaps.
  • Modular Architecture: Split into small packages to minimize dependencies and and dependencies to only what is needed for a specific pipeline.

Related

  • Project
  • Project
  • Project
  • Project
  • Project