Skip to content

introlab/rtabmap_ros

Folders and files

NameName
Last commit message
Last commit date

Latest commit

6c6c41a · May 10, 2025
Jul 21, 2024
Mar 23, 2025
Mar 2, 2025
Mar 30, 2025
May 10, 2025
May 2, 2025
Feb 13, 2025
Mar 2, 2025
Mar 16, 2025
Feb 13, 2025
Feb 13, 2025
Feb 13, 2025
Mar 30, 2025
Feb 13, 2025
Mar 30, 2025
Mar 29, 2025
Oct 5, 2021
Dec 1, 2024
Aug 1, 2019
Jul 18, 2016
May 2, 2025

Repository files navigation

rtabmap_ros

RTAB-Map's ROS2 package (branch ros2). ROS2 Humble minimum required: currently most nodes are ported to ROS2. The interface is the same than on ROS1 (parameters and topic names should still match ROS1 documentation on rtabmap_ros).

CI Latest

ROS 1 Build Status
Build Status
ROS 2 Build Status

ROS Binaries

ROS 1 Noetic Build Status
ROS 2 Humble Build Status
Jazzy Build Status
Rolling Build Status
Docker rtabmap_ros Docker Pulls

Usage

  • For sensor integration examples (stereo and RGB-D cameras, 3D LiDAR), see rtabmap_examples sub-folder.

  • For robot integration examples (turtlebot3 and turtlebot4, nav2 integration), see rtabmap_demos sub-folder.

Logging

To make RTAB-Map's logs appear ordered with RCLCPP's logs, set the following environment variables in your .bashrc (see official "About Logging" documentation for more info):

export RCUTILS_LOGGING_USE_STDOUT=1
export RCUTILS_LOGGING_BUFFERED_STREAM=1
# Optional, but if you like colored logs:
export RCUTILS_COLORIZED_OUTPUT=1

Recommended DDS

If RTAB-Map's GUI or topic frequency feel laggy (even if processing time looks fast enough), it may be caused by the DDS. I recommend to use Cyclone DDS, you can try it by adding this before launching any nodes/launch files (or add to your .bashrc):

export RMW_IMPLEMENTATION=rmw_cyclonedds_cpp
# Cyclone prefers multicast by default, if your router got too much spammed, 
# disable multicast with (https://github.com/ros2/rmw_cyclonedds/issues/489):
export CYCLONEDDS_URI="<Disc><DefaultMulticastAddress>0.0.0.0</></>"

Installation

Binaries

sudo apt install ros-$ROS_DISTRO-rtabmap-ros

From Source

  • Make sure to uninstall any rtabmap binaries:

    sudo apt remove ros-$ROS_DISTRO-rtabmap*
    
  • RTAB-Map ROS2 package:

    cd ~/ros2_ws
    git clone https://github.com/introlab/rtabmap.git src/rtabmap
    git clone --branch ros2 https://github.com/introlab/rtabmap_ros.git src/rtabmap_ros
    rosdep update && rosdep install --from-paths src --ignore-src -r -y
    export MAKEFLAGS="-j6" # Can be ignored if you have a lot of RAM (>16GB)
    colcon build --symlink-install --cmake-args -DCMAKE_BUILD_TYPE=Release
  • To build with rgbd_cameras>1 support and/or subscribe_user_data support:

    colcon build --symlink-install --cmake-args -DRTABMAP_SYNC_MULTI_RGBD=ON -DRTABMAP_SYNC_USER_DATA=ON -DCMAKE_BUILD_TYPE=Release