8000 GitHub - ntnu-arl/DeepVL: This repository contains the code for the ICRA 2025 Paper "DeepVL: Dynamics and Inertial Measurements-based Deep Velocity Learning for Underwater Odometry".
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

This repository contains the code for the ICRA 2025 Paper "DeepVL: Dynamics and Inertial Measurements-based Deep Velocity Learning for Underwater Odometry".

License

Notifications You must be signed in to change notification settings

ntnu-arl/DeepVL

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

DeepVL: Deep Velocity Learning

Homepage arXiv YouTube

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.

DeepVL Teaser

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


🌟 Features

  • 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

Quick Start

1. Installation

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

1.1 ROS Setup

cd <your_ros_ws>

# build the ros package
catkin build deepvl_ros

# make the testing ros node an executable
chmod +x deepvl_ros.py

2. Inference Dataset Setup

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>

3. Launching the deepvl ros node

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

Usage

Integration with ReAqROVIO

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.

Training Your Model

To train the DeepVL ensemble:

  1. Download the dataset with train and test data in .npy format from link (training dataset).
  2. Run the training script:
python3 train_inertial_odom.py

Customize training via the configuration YAML file, where all parameters are documented as comments.


Citation

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},
}

License

Released under BSD-3-Clause. Intended for civilian use only.

Contact

For questions or support, reach out via GitHub Issues or contact authors:


About

This repository contains the code for the ICRA 2025 Paper "DeepVL: Dynamics and Inertial Measurements-based Deep Velocity Learning for Underwater Odometry".

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published
0