Skip to content

93won/vio_ros_wrapper

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Lightweight VIO ROS2 Wrapper

ROS2 wrapper for lightweight Visual-Inertial Odometry system.

Supports Stereo VIO and RGBD VO modes.

Demo

Demo Video


About

This project implements the statistical uncertainty learning method proposed in:

Statistical Uncertainty Learning for Robust Visual-Inertial State Estimation
Seungwon Choi, Donggyu Park, Seo-Yeon Hwang, Tae-Wan Kim
arXiv:2510.01648

Original Source: https://github.com/93won/lightweight_vio

Citation

If you use this work in your research, please cite:

@misc{choi2025statistical,
      title={Statistical Uncertainty Learning for Robust Visual-Inertial State Estimation}, 
      author={Seungwon Choi and Donggyu Park and Seo-Yeon Hwang and Tae-Wan Kim},
      year={2025},
      eprint={2510.01648},
      archivePrefix={arXiv},
      primaryClass={cs.RO},
      url={https://arxiv.org/abs/2510.01648}
}

Requirements

  • Ubuntu 22.04
  • ROS2 Humble

Installation

1. Create Workspace

mkdir -p <your_path>/vio_ws/src
cd <your_path>/vio_ws/src
git clone https://github.com/93won/vio_ros_wrapper.git
cd vio_ros_wrapper
git submodule update --init --recursive
cd <your_path>/vio_ws

2. Build

colcon build --cmake-args -DCMAKE_BUILD_TYPE=Release
source install/setup.bash

Sample Datasets

Pre-recorded ROS2 bags for testing:

1. OpenLORIS RGBD Dataset (Cafe)

  • File: cafe.bag.db3
  • Description: Indoor cafe scene with RealSense D435i
  • Topics: RGB + Depth images
  • Download: Google Drive

2. TUM-VI Dataset (Room1)

  • File: room1_stereo_imu.bag_0.db3
  • Description: Indoor room with fisheye stereo camera + IMU
  • Topics: Stereo images + IMU data
  • Download: Google Drive

3. EuRoC Dataset (V101 Easy)

  • File: v101_stereo_imu.bag.db3
  • Description: Vicon room, easy trajectory
  • Topics: Rectilinear Stereo images + IMU data
  • Download: Google Drive

Quick Start

RGBD VO (OpenLORIS Cafe Dataset)

# Terminal 1
ros2 launch vio_ros_wrapper rgbd_vo.launch.py

# Terminal 2
ros2 bag play cafe.bag.db3 --clock

Stereo VIO (TUM-VI Room1)

# Terminal 1 (in <your_path>/vio_ws)
ros2 launch vio_ros_wrapper vio.launch.py \
    config_file:=<your_path>/vio_ws/src/vio_ros_wrapper/lightweight_vio/config/tum_vio.yaml

# Terminal 2
ros2 bag play room1_stereo_imu.bag_0.db3 --clock

Stereo VIO (EuRoC V101)

# Terminal 1 (in <your_path>/vio_ws)
ros2 launch vio_ros_wrapper vio.launch.py \
    config_file:=<your_path>/vio_ws/src/vio_ros_wrapper/lightweight_vio/config/euroc_vio.yaml

# Terminal 2
ros2 bag play v101_stereo_imu.bag.db3 --clock

Configuration

Config files: lightweight_vio/config/

  • euroc_vio.yaml - EuRoC stereo + IMU
  • d435i_cafe.yaml - RealSense RGBD
  • tum_vio.yaml - TUM-VI stereo + IMU

Topics

Published

  • /vio/odometry - 6-DOF pose
  • /vio/trajectory - Path history
  • /vio/tracking_image - Feature visualization
  • /vio/depth_image - Depth heatmap (RGBD only)

Subscribed (Stereo)

  • /cam0/image_raw - Left camera
  • /cam1/image_raw - Right camera
  • /imu0 - IMU data

Subscribed (RGBD)

  • /camera/rgb/image_raw - RGB image
  • /camera/depth/image_raw - Depth image

License

MIT License

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors