Skip to content

Latest commit

 

History

History
178 lines (128 loc) · 4.51 KB

File metadata and controls

178 lines (128 loc) · 4.51 KB

Running Examples

This guide provides detailed instructions for running the Lightweight Stereo VIO system with EuRoC, TUM VI, and RGBD datasets.

Quick Start

EuRoC Dataset

Native Build

# Visual Odometry (VO) mode
./build/euroc_stereo config/euroc_vo.yaml /path/to/EuRoC/MH_01_easy

# Visual-Inertial Odometry (VIO) mode
./build/euroc_stereo config/euroc_vio.yaml /path/to/EuRoC/MH_01_easy

Docker

# Visual Odometry (VO) mode
./docker.sh run vo /path/to/EuRoC/MH_01_easy

# Visual-Inertial Odometry (VIO) mode
./docker.sh run vio /path/to/EuRoC/MH_01_easy

TUM VI Dataset

Native Build

# Visual Odometry (VO) mode
./build/tum_stereo config/tum_vo.yaml /path/to/dataset-room1_512_16

# Visual-Inertial Odometry (VIO) mode
./build/tum_stereo config/tum_vio.yaml /path/to/dataset-room1_512_16

Docker

# Visual Odometry (VO) mode
./docker.sh run vo /path/to/dataset-room1_512_16

# Visual-Inertial Odometry (VIO) mode
./docker.sh run vio /path/to/dataset-room1_512_16

RGBD Dataset (Intel RealSense D435/D435i)

Native Build

# Visual Odometry (VO) mode with RGBD
./build/rgbd_example config/d435.yaml /path/to/RGBD/dataset

Note: RGBD + IMU (VIO mode) is not yet implemented. Currently only VO mode is supported.


Detailed Usage

Command Line Interface

EuRoC Dataset

The general syntax for running with EuRoC dataset:

./build/euroc_stereo <config_file_path> <euroc_dataset_path>

Parameters:

  • <config_file_path>: Path to the YAML configuration file (euroc_vo.yaml or euroc_vio.yaml)
  • <euroc_dataset_path>: Path to a specific EuRoC sequence directory

TUM VI Dataset

The general syntax for running with TUM VI dataset:

./build/tum_stereo <config_file_path> <tum_dataset_path>

Parameters:

  • <config_file_path>: Path to the YAML configuration file (tum_vo.yaml or tum_vio.yaml)
  • <tum_dataset_path>: Path to a specific TUM VI sequence directory

RGBD Dataset (Intel RealSense D435/D435i)

The general syntax for running with RGBD dataset:

### Detailed Command Syntax

```bash
./build/rgbd_example <config_file> <dataset_path>

Parameters:

  • <config_file>: Path to YAML configuration file (e.g., config/d435i_cafe.yaml)

**Parameters:**
- `<config_file_path>`: Path to the YAML configuration file (d435.yaml)
- `<rgbd_dataset_path>`: Path to RGBD dataset directory containing `color/`, `depth/`, and `timestamps.txt`

**Dataset Structure:**

dataset_folder/ ├── color/ # RGB images ├── depth/ # Depth images └── timestamps.txt # Timestamp file


### Configuration Files

The system behavior is controlled by YAML configuration files located in the `config/` directory:

#### Visual Odometry (VO) Mode
**EuRoC**: `config/euroc_vo.yaml`
**TUM VI**: `config/tum_vo.yaml`
- Uses only camera data
- Suitable for scenarios with good visual features
- Lower computational requirements

#### Visual-Inertial Odometry (VIO) Mode  
**EuRoC**: `config/euroc_vio.yaml`
**TUM VI**: `config/tum_vio.yaml`
- Uses both camera and IMU data
- More robust to motion blur and challenging conditions
- Higher computational requirements but better accuracy

#### RGBD Visual Odometry Mode
**D435/D435i**: `config/d435.yaml`
- Uses RGB-D camera data (color + depth)
- Suitable for indoor environments
- Currently supports VO mode only (VIO mode not yet implemented)

### Example Commands

#### EuRoC Dataset Examples

```bash
./build/euroc_stereo config/euroc_vo.yaml /path/to/EuRoC/MH_05_difficult

TUM VI Dataset Examples

Room sequences:

./build/tum_stereo config/tum_vio.yaml /path/to/dataset-room1_512_16

RGBD Dataset Examples

OpenLORIS-Scene Dataset (Cafe sequence):

The example RGBD dataset is from the OpenLORIS-Scene dataset, specifically the cafe sequence.

Download:

Original dataset source:

Run the example:

**Run the example:**
```bash
./build/rgbd_example config/d435i_cafe.yaml /path/to/openloris/cafe

Detailed Command Syntax


**Expected output:**
- 3D visualization with Pangolin viewer
- Dense point cloud visualization (toggle with UI button)
- Trajectory estimation in real-time