Table of contents
Open Table of contents
Quick Summary
A compact comparison of four widely used visual-inertial (VIO/VISLAM) systems.
- OpenVINS — A filter-based VIO framework using EKF and sliding-window estimation, focusing on lightweight, consistent estimation and extensibility.
- VINS-Mono — A tightly-coupled nonlinear optimization-based monocular VIO system with robust initialization, loop closure, and high accuracy.
- OKVIS — A keyframe-based nonlinear optimization VIO system emphasizing bundle adjustment and marginalization strategies.
- ORB-SLAM3 — A feature-based SLAM framework supporting visual, visual-inertial, and multi-map modes with mapping and loop closure.
Algorithmic Approach
OpenVINS
OpenVINS uses a filter-based estimation framework:
- Error-state Extended Kalman Filter (ES-EKF)
- Sliding window of camera states
- IMU preintegration
- Modular estimator architecture
Its main advantage is computational efficiency and predictable runtime, making it suitable for embedded and real-time applications.
VINS-Mono
VINS-Mono uses nonlinear optimization:
- Sliding-window optimization
- IMU preintegration
- Visual-inertial residual optimization
- Bundle adjustment style estimation
It provides:
- Robust initialization
- Failure recovery
- High estimation accuracy
It is widely used in aerial robotics and handheld devices.
OKVIS
OKVIS (Open Keyframe-based Visual-Inertial SLAM) adopts:
- Keyframe-based optimization
- Nonlinear bundle adjustment
- IMU preintegration
- Marginalization strategies
The keyframe mechanism maintains computational efficiency while preserving estimation accuracy.
ORB-SLAM3
ORB-SLAM3 is a feature-based SLAM framework using:
- Feature extraction and matching
- Bundle adjustment
- Visual-inertial estimation
- Loop closure
- Multi-map management
It supports:
- Monocular cameras
- Stereo cameras
- RGB-D cameras
- Visual-inertial sensors
Accuracy, Robustness, and Drift
Optimization-based methods generally achieve higher absolute accuracy than lightweight filtering approaches.
Optimization-based systems
Including:
- VINS-Mono
- OKVIS
- ORB-SLAM3
Advantages:
- Higher trajectory accuracy
- Better global consistency
- Improved drift correction
They benefit from:
- Sliding-window optimization
- Bundle adjustment
- Loop closure
Filter-based systems
OpenVINS provides:
- Lower computational cost
- Lower memory usage
- More predictable latency
The trade-off is slightly lower peak accuracy compared with optimization-based approaches.
Features and Practical Differences
Sensor Support
| System | Sensor Support |
|---|---|
| OpenVINS | Monocular / Stereo + IMU, calibration and time-offset estimation |
| VINS-Mono | Mainly Monocular + IMU |
| OKVIS | Monocular / Stereo + IMU |
| ORB-SLAM3 | Monocular / Stereo / RGB-D / Visual-Inertial |
Mapping and Loop Closure
ORB-SLAM3
Provides full SLAM capabilities:
- Loop closure
- Map reuse
- Multi-map management
- Global optimization
Suitable for persistent mapping applications.
VINS-Mono
Provides:
- Loop detection
- Pose graph optimization
- Global trajectory correction
It is mainly designed as a VIO system with additional mapping capabilities.
OpenVINS and OKVIS
Primarily focus on odometry:
- OpenVINS emphasizes filter-based VIO research.
- OKVIS emphasizes accurate keyframe optimization.
Initialization and Failure Recovery
VINS-Mono
Strong points:
- Robust initialization
- Failure detection
- Recovery mechanisms
ORB-SLAM3
Uses:
- IMU initialization
- MAP estimation strategies
- Multi-mode tracking recovery
OpenVINS
Provides:
- EKF-based initialization
- Flexible estimator design
It is especially suitable for researchers developing new estimation methods.
Compute and Real-Time Constraints
| System | Computational Requirement |
|---|---|
| OpenVINS | Low, suitable for embedded systems |
| VINS-Mono | Medium–High, requires optimization computation |
| OKVIS | Medium–High, keyframe optimization |
| ORB-SLAM3 | High, full SLAM pipeline |
Optimization-based approaches usually require:
- More CPU resources
- More memory
- Higher computational capability
Codebase and Community
OpenVINS
Advantages:
- Research-oriented architecture
- Modular implementation
- Calibration tools
- Easy algorithm modification
VINS-Mono
Advantages:
- Mature implementation
- Large research community
- Many robotics applications
OKVIS
Advantages:
- Classical academic implementation
- Good reference for keyframe VIO methods
ORB-SLAM3
Advantages:
- Large community
- Extensive downstream applications
- Strong benchmark performance
Typical Benchmark Behavior
Common evaluation datasets include:
- EuRoC MAV
- TUM-VI
- KITTI
General observations:
- ORB-SLAM3 and VINS-Mono achieve excellent results on many benchmarks.
- Optimization-based methods usually outperform filter-based approaches in absolute trajectory error.
- OpenVINS provides better computational efficiency.
Recommendations
Choose OpenVINS if you need:
- Lightweight VIO
- Embedded deployment
- Deterministic latency
- Research on state estimation algorithms
Choose VINS-Mono if you need:
- High-accuracy monocular VIO
- Robust initialization
- Aerial robotics applications
Choose OKVIS if you need:
- Classical keyframe-based VIO
- Accurate bundle adjustment
- Reference implementation for optimization methods
Choose ORB-SLAM3 if you need:
- Full SLAM system
- Mapping
- Loop closure
- Multi-sensor support
- Persistent environments
Decision Table
| Aspect | OpenVINS | VINS-Mono | OKVIS | ORB-SLAM3 |
|---|---|---|---|---|
| Core Method | ES-EKF Filter | Sliding-window Optimization | Keyframe BA Optimization | MAP / BA + Loop Closure |
| Best For | Embedded VIO, Research | High Accuracy Monocular VIO | Accurate Keyframe VIO | Full SLAM and Mapping |
| Loop Closure | No | Optional | Not Primary | Yes |
| Complexity | Low | Medium–High | Medium–High | High |
| Typical Platforms | Embedded, Drones | Drones, Handheld Devices | Research Robots | Robotics, AR/VR, Mapping |