DeepVL is an open-source framework for predicting linear velocity of underwater robots, enabling robust state estimation during blackouts of exteroceptive sensors (e.g., cameras, DVLs, or UBSLs). It takes the actuator commands, IMU measurements, and battery voltage as an input and predicts the robot velocity in the body frame.
This repository contains the code for the paper:
"DeepVL: Dynamics and Inertial Measurements-based Deep Velocity Learning for Underwater Odometry"
Mohit Singh, Kostas Alexis | arXiv:2502.07726
- Predicts linear velocity using inertial and actuator data
- Handles sensor blackouts for reliable underwater state-estimation
- Integrates with Extended Kalman Filters (e.g., ReAqROVIO)
- Pre-trained models and ROS node for quick deployment
Clone the repository and set up the environment:
cd <your_ros_ws>
git clone https://github.com/ntnu-arl/deepvl.git
cd deepvl
conda env create -f environment.yml
conda activate deepvl
cd <your_ros_ws>
# build the ros package
catkin build deepvl_ros
# make the testing ros node an executable
chmod +x deepvl_ros.py
Download the dataset in ROS bag format from link (inference dataset). Update the dataset path in the configuration YAML:
dataset:
dataset_dir: <path-to-dataset>
Launch the ROS node with pre-trained weights:
roslaunch deepvl_ros inertial_odom_ros.launch
The estimated velocity and covariance are published to:
/deepvl_vel_cov/twist
DeepVL predictions can be fused into the Refractive Aquatic ROVIO (ReAqROVIO) fr 7B75 amework for enhanced underwater state estimation. Remap the velocity and covariance outputs to your EKF pipeline, combining with barometric and inertial data as needed.
To train the DeepVL ensemble:
- Download the dataset with train and test data in
.npy
format from link (training dataset). - Run the training script:
python3 train_inertial_odom.py
Customize training via the configuration YAML file, where all parameters are documented as comments.
If you use DeepVL in your research, please cite:
@misc{singh2025deepvldynamicsinertialmeasurementsbased,
title={DeepVL: Dynamics and Inertial Measurements-based Deep Velocity Learning for Underwater Odometry},
author={Mohit Singh and Kostas Alexis},
year={2025},
eprint={2502.07726},
archivePrefix={arXiv},
primaryClass={cs.RO},
url={https://arxiv.org/abs/2502.07726},
}
Released under BSD-3-Clause. Intended for civilian use only.
For questions or support, reach out via GitHub Issues or contact authors: