Dataset Overview
The EuRoC dataset provides:- Two synchronized cameras (stereo pinhole, 20 Hz)
- IMU measurements (200 Hz gyroscope, 200 Hz accelerometer)
- Ground truth trajectories (Vicon/Leica motion capture)
- 11 sequences with varying difficulty levels
- Indoor environment (machine hall at ETH Zurich)
Sequence Categories
- Easy
- Medium
- Difficult
MH_01_easyMH_02_easyV1_01_easyV2_01_easy
Download Instructions
Visit the dataset website
Download sequences from:
http://projects.asl.ethz.ch/datasets/doku.php?id=kmavvisualinertialdatasets
Running Monocular Examples
Run monocular SLAM using only the left camera:Multiple Sequences
Run multiple sequences sequentially with map reuse:The system automatically saves sub-map trajectories and loads the atlas for subsequent sequences.
Running Stereo Examples
Run stereo SLAM using both cameras:Code Overview
The stereo example (stereo_euroc.cc:132) passes both images to the SLAM system:The EuRoC.yaml file includes rectification matrices. The system will rectify images online if needed.
Running Monocular-Inertial Examples
Fuse monocular vision with IMU data:IMU Integration
The inertial examples (mono_inertial_euroc.cc:180-184) collect IMU measurements between frames:Running Stereo-Inertial Examples
The most accurate configuration - stereo cameras with IMU:- Stereo vision: Accurate scale and depth estimation
- IMU: Robust tracking during fast motion and feature-poor scenes
- Sensor fusion: Highest accuracy and robustness
Running All Sequences
Use the provided batch script:Evaluation with Ground Truth
EuRoC provides ground truth trajectories for quantitative evaluation.Coordinate Frame Notes
Ground truth is provided in the IMU body reference frame. Pure visual trajectories are in the left camera reference frame. The evaluation folder includes transformed ground truth for visual-only sequences.
Running Evaluation
Compute RMS ATE
The script automatically:
- Runs each sequence
- Aligns estimated trajectory with ground truth
- Computes Root Mean Square Absolute Trajectory Error (RMS ATE)
Manual Evaluation
For custom evaluation:Configuration Files
EuRoC examples use pre-calibrated settings files:- Monocular
- Stereo
- Monocular-Inertial
- Stereo-Inertial
Examples/Monocular/EuRoC.yaml- Camera intrinsics (left camera)
- ORB extractor parameters
- Viewer settings
Expected Performance
Typical results on EuRoC sequences:| Configuration | Accuracy | Robustness | Speed |
|---|---|---|---|
| Monocular | Good | Moderate | Fast |
| Stereo | Excellent | Good | Medium |
| Monocular-Inertial | Excellent | Excellent | Fast |
| Stereo-Inertial | Best | Best | Medium |
Stereo-Inertial configuration provides the most accurate and robust results, typically achieving sub-centimeter accuracy on easy sequences.
Troubleshooting
Tracking Lost
Tracking Lost
If tracking fails:
- Start with easier sequences (MH_01_easy, V1_01_easy)
- Ensure proper illumination
- Check that timestamp files match the sequence
- Verify camera calibration parameters
Slow Performance
Slow Performance
To improve speed:
- Reduce
ORBextractor.nFeaturesin YAML - Close the viewer window
- Use a more powerful computer
IMU Not Working
IMU Not Working
Common issues:
- Verify IMU noise parameters in YAML
- Check camera-IMU extrinsics
- Ensure sufficient IMU measurements before first frame
Next Steps
TUM-VI Dataset
Try examples with fisheye cameras
Camera Configuration
Learn about camera calibration
IMU Configuration
Configure IMU parameters
Custom Datasets
Use your own data