This repository contains the code for the dataset generation, as well as the code for the models used in the SynthCave paper. The models are implemented in PyTorch and include a CNN, ASTGCN, TSViT, and PSTNet.
SynthCave is a synthetic dataset for 3D odometry estimation in cave-like environments. It contains synthetic LiDAR data in three different forms: point clouds, depth-images, and graphs, along with IMU and ground-truth data.
The raw data was recorded with simulated LiDAR and IMU sensors, using the Minecraft Measurement Mod with Minecaft version 1.20.2. The dataset is publicly available on Kaggle.
-
Install requirements:
pip install torch==2.0.1 --index-url https://download.pytorch.org/whl/cu118 pip install -r requirements.txt
-
Compile PointNet++ CUDA layers for PSTNet:
cd baselines/model/PSTNet/modules/pointnet2_ops_lib python setup.py install
PSTNet is the only model that requires CUDA and cannot be run on CPU.
-
Test installation:
pytest baselines/model pytest synthcave
-
(Optional) Manually test the forward pass of every model: