loicland / Helix4D

Official Pytorch implementation of the "Online Segmentation of LiDAR Sequences: Dataset and Algorithm" paper

Home Page:https://romainloiseau.fr/helixnet

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Online Segmentation of LiDAR Sequences:

Dataset and Algorithm

ECCV 2022     

Description

Official PyTorch implementation of the paper "Online Segmentation of LiDAR Sequences: Dataset and Algorithm".

Please visit our webpage for more details.

teaser_light

Installation 👷

1. Clone the repository in recursive mode

git clone git@github.com:romainloiseau/Helix4D.git --recursive

2. Clone, create and activate conda environment

conda env create -f environment.yml
conda activate helix4d_conda

Optional: some monitoring routines are implemented with tensorboard.

Note: this implementation uses spconv for sparse convolutions, pytorch_lightning for all training routines and hydra to manage configuration files and command line arguments.

3. Datasets

This implementation uses dedicated modules to perform slice-splitting on HelixNet and Semantic-KITTI datasets that can be found here. HelixNet's toolbox is used as a submodule for this repository.

Go to the website of desired datasets and download them at /path/to/datasets/ and use data.data_dir=/path/to/datasets/dataset-name as a command line argument for python to find your path when using this implementation.

How to use 🚀

Training the model

To train our best model, launch :

python main.py \
  +data=dataset \
  +experiment=ours

Current available datasets

  • helixnet: HelixNet (9 classes)
  • semantic-kitti: Semantic-KITTI (20 classes)
  • semantic-kitti-all: Semantic-KITTI with moving objects (26 classes)

Testing the model

To test the model, launch :

python main.py \
  +data=dataset \
  +experiment=ours \
  mode=test \
  model.load_weights="/path/to/trained/weights.ckpt"

Note: pretrained weights to come in pretrained_models/

Reproduce results

To reproduce the Table 4: Ablation Study of the paper using slurm jobs, launch :

python ablations.py

Citation

@article{loiseau22online,
  title={Online Segmentation of LiDAR Sequences: Dataset and Algorithm.},
  author={Romain Loiseau and Mathieu Aubry and Loic Landrieu},
  journal={ECCV},
  year={2022}
}

About

Official Pytorch implementation of the "Online Segmentation of LiDAR Sequences: Dataset and Algorithm" paper

https://romainloiseau.fr/helixnet

License:MIT License


Languages

Language:Python 94.6%Language:Jupyter Notebook 5.4%