Skip to content
Visual-Inertial Odometry component of ILLIXR
C++ CMake Other
Branch: master
Clone or download
Pull request Compare This branch is 21 commits ahead, 23 commits behind rpng:master.

Latest commit

Fetching latest commit…
Cannot retrieve the latest commit at this time.

Files

Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
docs
ov_core
ov_data
ov_eval
ov_msckf UPDATE: code cleanup Dec 12, 2019
.gitignore
CMakeLists.txt
Doxyfile
Doxyfile-mcss
ILLIXR_INSTRUCTIONS.MD
LICENSE
ReadMe.md

ReadMe.md

Part of ILLIXR, the Illinios Extended Reality Benchmark Suite. For instructions on how to use OpenVINS for ILLIXR, see ILLIXR_INSTRUCTIONS.MD

Open VINS

Welcome to the Open VINS project! The Open VINS project houses some core computer vision code along with a state-of-the art filter-based visual-inertial estimator. The core filter is an Extended Kalman filter which fuses inertial information with sparse visual feature tracks. These visual feature tracks are fused leveraging the Multi-State Constraint Kalman Filter (MSCKF) sliding window formulation which allows for 3D features to update the state estimate without directly estimating the feature states in the filter. Inspired by graph-based optimization systems, the included filter has modularity allowing for convenient covariance management with a proper type-based state system. Please take a look at the feature list below for full details on what the system supports.

News / Events

  • August 21, 2019 - Open sourced ov_maplab for interfacing OpenVINS with the maplab library.
  • August 15, 2019 - Initial release of OpenVINS repository and documentation website!

Project Features

  • Sliding window visual-inertial MSCKF
  • Modular covariance type system
  • Comprehensive documentation and derivations
  • Extendable visual-inertial simulator
    • On manifold SE(3) b-spline
    • Arbitrary number of cameras
    • Arbitrary sensor rate
    • Automatic feature generation
  • Five different feature representations
    1. Global XYZ
    2. Global inverse depth
    3. Anchored XYZ
    4. Anchored inverse depth
    5. Anchored MSCKF inverse depth
  • Calibration of sensor intrinsics and extrinsics
    • Camera to IMU transform
    • Camera to IMU time offset
    • Camera intrinsics
  • Environmental SLAM feature
    • OpenCV ARUCO tag SLAM features
    • Sparse feature SLAM features
  • Visual tracking support
    • Monocular camera
    • Stereo camera
    • KLT or descriptor based
  • Static IMU initialization (sfm will be open sourced later)
  • Out of the box evaluation on EurocMav and TUM-VI datasets
  • Extensive evaluation suite (ATE, RPE, NEES, RMSE, etc..)

Credit / Licensing

This code was written by the Robot Perception and Navigation Group (RPNG) at the University of Delaware. If you have any issues with the code please open an issue on our github page with relevant implementation details and references. For researchers that have leveraged or compared to this work, please cite the following:

@article{TBD,
  author    = {},
  title     = {},
  journal   = {},
  volume    = {},
  year      = {2019},
}

The codebase is licensed under the GNU General Public License v3 (GPL-3).

You can’t perform that action at this time.