Home

Awesome

VINS-OS

A Robust and Versatile Visual-Inertial State Estimator support Omnidirectional Camera and/or Stereo Camera

VINS-OS is a real-time SLAM framework for Omnidirectional and/or Stereo Visual-Inertial Systems, modified from VINS-MONO. Same as VINS-MONO, it uses an optimization-based sliding window formulation for providing high-accuracy visual-inertial odometry. It features efficient IMU pre-integration with bias correction, automatic estimator initialization, online extrinsic calibration, stereo extrinsic self-calibration, failure detection and recovery. Remove the loop detection and global pose graph optimization of VINS-MONO. VINS-OS is primarily designed for state estimation and feedback control of autonomous drones equrped with a dual-fisheye omnidirectional stereo vison system. This code runs on Linux, and is fully integrated with ROS.

Authors: Wenlaing GAO, Tong Qin, Peiliang Li, Zhenfei Yang, and Shaojie Shen from the HUKST Aerial Robotics Group

Videos:

<a href="https://www.youtube.com/embed/mv_9snb_bKs" target="_blank"><img src="http://img.youtube.com/vi/mv_9snb_bKs/0.jpg" alt="euroc" width="240" height="180" border="10" /></a> <a href="https://www.youtube.com/embed/g_wN0Nt0VAU" target="_blank"><img src="http://img.youtube.com/vi/g_wN0Nt0VAU/0.jpg" alt="indoor_outdoor" width="240" height="180" border="10" /></a> <a href="https://www.youtube.com/embed/I4txdvGhT6I" target="_blank"><img src="http://img.youtube.com/vi/I4txdvGhT6I/0.jpg" alt="AR_demo" width="240" height="180" border="10" /></a>

EuRoC dataset; Indoor and outdoor performance; AR application;

<a href="https://www.youtube.com/embed/2zE84HqT0es" target="_blank"><img src="http://img.youtube.com/vi/2zE84HqT0es/0.jpg" alt="MAV platform" width="240" height="180" border="10" /></a> <a href="https://www.youtube.com/embed/CI01qbPWlYY" target="_blank"><img src="http://img.youtube.com/vi/CI01qbPWlYY/0.jpg" alt="Mobile platform" width="240" height="180" border="10" /></a>

MAV application; Mobile implementation (Video link for mainland China friends: Video1 Video2 Video3 Video4 Video5)

Related Papers

If you use VINS-OS for your academic research, please cite at least one of our related papers.

Build

Prerequisites

ROS

ROS Kinetic on Ubuntu 16.04: ROS Installation.

Additional ROS pacakge requirements: cv-bridge, tf, message-filters, image-transport, opencv3

Other ROS pacakge requisites: special version camera_model, code_utils.

Ceres Solver

Follow Ceres-Solver Installation, remember to make install. (Our testing environment: Ubuntu 16.04, ROS Kinetic, OpenCV 3.2.0, Eigen 3.2.0)

Build VINS-OS

Clone the repository and catkin_make:

    cd TO-YOUR-ROS-CATKIN-WORKSPACE
    git clone git@github.com:gaowenliang/vins_os.git
    cd ../
    catkin_make

Run with your device

DO NOT start with a rolling shutter camera and unsync IMU (such as DJI M100 + Logitech web camera) at beginning.

Acknowledgements

We use ceres solver for non-linear optimization and DBoW2 for loop detection, and a generic camera model.

Licence

The source code is released under GPLv3 license.

We are still working on improving the code reliability. For any technical issues, please contact Tong QIN tong.qin@connect.ust.hk or Peiliang LI pliap@connect.ust.hk.

For commercial inquiries, please contact Shaojie SHEN eeshaojie@ust.hk