SkillAgentSearch skills...

Helix4D

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

Install / Use

/learn @romainloiseau/Helix4D
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

<div align="center"> <h1>Online Segmentation of LiDAR Sequences:</h1> <h1>Dataset and Algorithm</h1> <h1>ECCV 2022 &nbsp;&nbsp;&nbsp;&nbsp; <img src="media/ECCV-logo3.png" width="120"></h1> <img src="media/mysmallhelix.gif" width="160"> </div>

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 :construction_worker:

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 :rocket:

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 <b>Table 4: Ablation Study</b> 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}
}
View on GitHub
GitHub Stars65
CategoryDevelopment
Updated1y ago
Forks7

Languages

Python

Security Score

80/100

Audited on Dec 3, 2024

No findings