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