This project focuses on debiasing (denoising) Inertial Measurement Unit (IMU) data, including gyroscope and accelerometer measurements. A neural network explicitly models the bias dynamics, while a neural ODE on
The overall framework is illustrated below:
Figure 1: The hierarchical neural ODE framework.Coming soon
To ensure an isolated environment for dependencies, run the following commands (Python version: 3.10.12):
python3 -m venv venv
source venv/bin/activate
pip install -r Requirments.txt
The required IMU data is provided in the data/
folder. Alternatively, you can download data from the following sources:
Note: For TUM-VI, the IMU data is extracted from the raw-data rosbag, not the calibrated rosbag, but uses the synthesized timestamps from the calibrated rosbag.
Run the following commands in the terminal to start training (ensure you are using python interpreter from venv/)
python3 BiasDy/mainEuroc.py
python3 BiasDy/mainTUM.py
python3 BiasDy/mainFetch.py
The full results will be saved to ./results
. Partial results:
MH_04_difficult
.
Figure 3: The Euler angles results for dataset_room4
.
To be added once the corresponding paper is published.
This project incorporates code and ideas from the following sources:
- denoise-imu-gyro by M. Brossard
- torchdiffeq by Ricky T. Q. Chen
- NeuralCDE by Patrick Kidger