ORB-SLAM3 provides a comprehensive set of example programs for testing and running SLAM with various sensor configurations and datasets. All examples are built automatically when you compile the library.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/UZ-SLAMLab/ORB_SLAM3/llms.txt
Use this file to discover all available pages before exploring further.
Available Example Programs
The library includes examples for all supported sensor configurations:Monocular
Single camera SLAM
mono_eurocmono_tum_vimono_kittimono_realsense_D435imono_realsense_t265
Stereo
Dual camera SLAM
stereo_eurocstereo_tum_vistereo_kittistereo_realsense_D435istereo_realsense_t265
RGB-D
Depth camera SLAM
rgbd_tumrgbd_realsense_D435i
Visual-Inertial
Camera + IMU fusion
mono_inertial_eurocmono_inertial_tum_vistereo_inertial_eurocstereo_inertial_tum_vimono_inertial_realsense_D435imono_inertial_realsense_t265stereo_inertial_realsense_D435istereo_inertial_realsense_t265
Supported Datasets
ORB-SLAM3 has been extensively tested on several public datasets:EuRoC MAV Dataset
Recorded with two pinhole cameras and an IMU. Contains 11 sequences with ground truth trajectories.- Visual (monocular/stereo)
- Visual-Inertial (monocular/stereo + IMU)
- Pinhole camera model
TUM-VI Dataset
Recorded with two fisheye cameras and an IMU. Includes indoor and outdoor sequences.- Visual (monocular/stereo)
- Visual-Inertial (monocular/stereo + IMU)
- Fisheye camera model
KITTI Dataset
Autonomous driving dataset with stereo cameras.- Monocular sequences
- Stereo sequences
- Large-scale outdoor environments
Live Camera Support
Run SLAM in real-time with Intel RealSense cameras.- RealSense D435i (stereo infrared + IMU)
- RealSense T265 (fisheye stereo + IMU)
Running Examples
Build the library
First, ensure ORB-SLAM3 is compiled:This creates executables in the
Examples/ folder.Download or prepare data
For dataset examples, download the sequence data.
For live cameras, connect your device via USB.
Expected Outputs
When running examples, ORB-SLAM3 produces:Real-time Visualization
Real-time Visualization
A Pangolin viewer window displays:
- Current frame with tracked features
- 3D map points
- Camera trajectory
- Keyframes
Trajectory Files
Trajectory Files
Saved trajectories in TUM or EuRoC format:
CameraTrajectory.txt- All frame posesKeyFrameTrajectory.txt- Keyframe poses only
Console Output
Console Output
Terminal displays:
- Tracking status (SLAM, Tracking Only, Lost)
- Frame processing times
- Number of tracked features
- Map statistics
Timing Statistics (Optional)
Timing Statistics (Optional)
When compiled with
REGISTER_TIMES:ExecTimeMean.txt- Execution time statistics- Per-module timing breakdowns
Evaluation Tools
ORB-SLAM3 includes scripts for trajectory evaluation:EuRoC Evaluation
TUM-VI Evaluation
Python Evaluation Tools
The library uses Python scripts for trajectory alignment:Evaluation scripts require Python with NumPy installed.
Common Arguments
Most examples follow this pattern:| Argument | Description |
|---|---|
vocabulary | Path to ORB vocabulary file (usually Vocabulary/ORBvoc.txt) |
settings | YAML configuration file with camera calibration and parameters |
sequence_path | Path to dataset sequence folder |
output_name | (Optional) Prefix for output trajectory files |
Performance Tips
Hardware
- Use a powerful CPU (i7 or better recommended)
- Run on native Linux for best performance
- Close unnecessary applications
Configuration
- Adjust
ORBextractor.nFeaturesfor speed/accuracy trade-off - Use image downsampling for faster processing
- Disable viewer for maximum speed
Next Steps
EuRoC Dataset
Run examples with pinhole cameras and IMU
TUM-VI Dataset
Run examples with fisheye cameras
KITTI Dataset
Process autonomous driving sequences
RealSense Cameras
Real-time SLAM with live cameras