← All work

Visual Localization

SUBVO underwater visual odometry

An open, calibrated underwater sequence with measured ground truth and a benchmark-oriented monocular visual-odometry pipeline.

My role
I led the dataset and study as first author. During my UPC/OBSEA visiting appointment, I captured the controlled sequence and developed the feature-evaluation and monocular visual-odometry workflow with collaborators.
What I built
Color preprocessing, feature detection and matching, essential-matrix estimation, pose recovery, and genetic-algorithm tuning of the RANSAC threshold.
Key results
  • 0.07 m trajectory RMSE (AKAZE; controlled underwater sequence)
  • 0.05 m mean positional error (AKAZE)
  • 0.04 m error standard deviation (AKAZE)
  • p < 0.01 paired comparison (AKAZE vs each alternative method)
Stack
Python · OpenCV · Monocular VO · Essential matrix · RANSAC · Camera calibration
Animated SUBVO trajectory comparison showing the predicted path against ground truth.
Animated SUBVO trajectory visualization supplied for this case study.

Problem

What needed to be understood or measured

Underwater imagery loses contrast and red wavelengths, making features less stable while ground-truthed datasets remain scarce.

My contribution

My contribution

I led the dataset and study as first author. During my UPC/OBSEA visiting appointment, I captured the controlled sequence and developed the feature-evaluation and monocular visual-odometry workflow with collaborators.

Experimental setup

Data and setup

220 sequential 1280 × 720 frames in a 1.6 m deep indoor pool, captured by a tracked crawler along a measured 5.8 m X-Z path. Calibration and frame-aligned ground truth are public.

Method

From input to interpretable output

Color preprocessing, feature detection and matching, essential-matrix estimation, pose recovery, and genetic-algorithm tuning of the RANSAC threshold.

Results

Reported results

0.07 m

trajectory RMSE

AKAZE; controlled underwater sequence

0.05 m

mean positional error

AKAZE

0.04 m

error standard deviation

AKAZE

p < 0.01

paired comparison

AKAZE vs each alternative method

Validation & uncertainty

Reference and uncertainty checks

Feature pipelines were evaluated against the measured X-Z path. The reported best trajectory error belongs to the controlled sequence and its published processing configuration.

Limitations & failure modes

Operating limits and failure modes

Low texture, scattering, color loss, moving caustics, repeated pool geometry, insufficient parallax, and unstable scale can all disrupt monocular pose recovery.

SUBVO is a controlled pool dataset and benchmark. The reported error does not imply equivalent navigation performance in open water, variable turbidity, or arbitrary marine scenes.

Technical stack

Tools selected for the measurement chain

  • Python
  • OpenCV
  • Monocular VO
  • Essential matrix
  • RANSAC
  • Camera calibration

Sources & project links

Papers and code

IEEE I2MTC 2025 paper and CC BY 4.0 repository containing images, calibration, and ground truth.

Dataset repository ↗IEEE paper ↗