RTAB-Map

Labbé 2019 · Paper

One-line summary — A memory-managed, multi-sensor open-source SLAM library supporting RGB-D, stereo, and LiDAR, whose bounded-time loop closure detection enables large-scale, long-term, and multi-session operation.

Problem

Long-duration SLAM accumulates an ever-growing map, and loop-closure retrieval that scans all stored locations grows with it — eventually violating real-time constraints. For robots operating over hours, days, or multiple sessions, loop closure must run in bounded time regardless of exploration duration. Separately, real-world robots carry diverse sensor suites (stereo outdoors, RGB-D indoors, 2D/3D LiDAR, wheel odometry), yet most research systems supported exactly one configuration and were benchmarked on camera-only or LiDAR-only datasets, making visual-vs-LiDAR comparisons — let alone deployment — difficult.

Method & architecture

RTAB-Map is a graph-based SLAM node that treats odometry as an external, replaceable input. The map is a graph: each node stores an odometry pose, compressed raw sensor data, visual words, and a local occupancy grid, created at a fixed detection rate; links (neighbor, loop-closure, proximity) carry rigid transformations that constrain graph optimization.

Results

The Journal of Field Robotics paper evaluates RTAB-Map’s visual and LiDAR configurations on KITTI, TUM RGB-D, EuRoC, and the MIT Stata Center PR2 dataset. On KITTI (ATE, single CPU core): LiDAR S2S achieves 1.0 m on sequence 00 at 62 ms/frame average odometry time; stereo F2M 1.0 m at 82 ms; ORB-SLAM2-based odometry inside RTAB-Map is the most accurate visual variant (best ATE on 9 of 11 sequences, best translational error on 10 of 11) but exceeds 100 ms per frame on one core. The highway sequence 01 exposes a modality trade-off: LiDAR odometry drifts badly (24.0 m S2S, poor pitch from geometry-sparse scans) where stereo F2M reaches 4.7 m using distant visual features. On the KITTI odometry leaderboard, RTAB-Map (F2M, stereo) scores 1.26 % translation / 0.0026 deg/m rotation — close to ORB-SLAM2 (1.15 % / 0.0027) and LSD-SLAM (1.20 % / 0.0033), with LOAM at 0.61 %. The original IROS 2014 memory-management paper showed constant loop-closure processing time — under 700 ms per frame — even on maps with thousands of locations, and the JFR version demonstrates multi-session mapping and memory management keeping online operation real-time as maps grow (see paper for the full computation-performance study).

Why it matters for SLAM

RTAB-Map is one of the most widely deployed SLAM systems in practical robotics: its combination of bounded-time loop closure, support for virtually every common sensor configuration, and turnkey ROS integration lets non-specialists get reliable mapping running with minimal configuration. It is the go-to baseline when you need a robust, full-featured SLAM stack on a real robot rather than a research prototype, and its memory-management design remains the reference approach for long-term SLAM scalability.