Home

Awesome

DAPS3D: Domain Adaptive Projective Segmentation of 3D LiDAR Point Clouds

Framework: PyTorch License

Alexey Klokov, Di Un Pak, Aleksandr Khorin, Dmitry Yudin, Leon Kochiev, Vladimir Luchinskiy, Vitaly Bezuglyj

[pdf] [BibTeX]

This repo contains the code for our paper DAPS3D: Domain Adaptive Projective Segmentation of 3D LiDAR Point Clouds.

Abstract

LiDARs are one of the key sources of reliable environmental ranging information for autonomous vehicles. However, segmentation of 3D scene elements (roads, buildings, people, cars, etc.) based on LiDAR point clouds has limitations. On the one hand, point- and voxel-based segmentation neural networks do not offer sufficiently high speed. On the other hand, modern labeled datasets primarily consist of street scenes recorded for driverless cars and contain little data for mobile delivery robots or cleaners that must work in parks and yards with heavy pedestrian traffic. This article aims to overcome these limitations. We have proposed a novel approach called DAPS3D to train deep neural networks for 3D semantic segmentation. This approach is based on a spherical projection of a point cloud and LiDAR-specific masks, enabling the model to adapt to different types of LiDAR. First of all, we have introduced various high-speed multi-scale spherical projection segmentation models, including convolutional, recurrent, and transformer architectures. Among them, the SalsaNextRecLSTM model has shown the best results. Secondly, we have proposed several original augmentations for spherical projections of LiDAR data, including FoV, flip, and rotation augmentation, as well as a special T-Zone cutout. These augmentations increase the model's invariance when dealing with changes in the data domain. Finally, we introduce a new method to generate synthetic datasets for domain adaptation problems. We have developed two new datasets for validating 3D scene outdoor segmentation algorithms: the DAPS-1 dataset, which is based on the augmentation of the reconstructed 3D semantic map, and the DAPS-2 LiDAR dataset, collected by the on-board sensors of a cleaning robot in a park area. Particular attention is given to the performance of the developed models, demonstrating their ability to function in real-time.

SalsaNetRecAbstract RecBlock

ToDo List

Installation Instructions

Dataset Preparation

Execution Instructions

Training

Evaluation

Results

You can find our pretrained models in Getting Started.

DAPS-1

DAPS-1_Results

All models are trained with augmentation set 5 with T-Zone (see our Paper)

Model$mIoU$, %$IoU$[vehicle], %$IoU$[human], %$IoU$[surface], %$IoU$[obstacle], %
SalsaNet0.867<ins>0.880</ins>0.6460.9890.953
SalsaNetRec0.8500.8360.6800.9740.908
SalsaNetRecLSTM0.8620.8780.6320.9880.949
SalsaNext<ins>0.886</ins>0.878<ins>0.721</ins><ins>0.990</ins><ins>0.954</ins>
SalsaNextRecLSTM0.9320.9290.8300.9940.974
DDRNet0.6900.7730.1260.9770.886
DDRNetOC0.6940.7690.1380.9780.889
DDRNetDA0.6910.7700.1290.9770.886
Segformer0.5300.4950.0520.9090.665

<br/><br/>

DAPS-2

DAPS-2_Domain

These are inference results on DAPS-2 for the models trained on different datasets.

Models trained on SemanticKITTI

Model$mIoU$, %$IoU$[human], %$IoU$[surface], %$IoU$[obstacle], %
SalsaNet0.4050.0560.6620.498
SalsaNetRec0.2670.0340.4780.290
SalsaNetRecLSTM0.3380.0750.5650.373
SalsaNext0.2580.0740.4230.277
SalsaNextRecLSTM0.3270.0390.548<ins>0.394</ins>
DDRNet0.345<ins>0.080</ins>0.7680.187
DDRNetOC0.3230.015<ins>0.739</ins>0.216
DDRNetDA<ins>0.369</ins>0.0400.7050.361
Segformer0.2300.1660.1820.343

Models trained on SemanticKITTI + RELLIS-3D

Model$mIoU$, %$IoU$[human], %$IoU$[surface], %$IoU$[obstacle], %
SalsaNet<ins>0.712</ins>0.7330.760<ins>0.643</ins>
SalsaNetRec0.4810.4460.5900.406
SalsaNetRecLSTM0.6890.770<ins>0.761</ins>0.537
SalsaNext0.6630.7990.6840.505
SalsaNextRecLSTM0.7360.8130.784<ins>0.612</ins>
DDRNet0.5800.6970.5350.509
DDRNetOC0.6160.7240.5860.539
DDRNetDA0.5410.6140.5070.503
Segformer0.2900.4120.0540.404

Models trained on DAPS-1

Model$mIoU$, %$IoU$[human], %$IoU$[surface], %$IoU$[obstacle], %
SalsaNet0.5750.4790.7410.504
SalsaNetRec0.6090.596<ins>0.748</ins>0.482
SalsaNetRecLSTM0.6240.5320.7830.557
SalsaNext<ins>0.643</ins><ins>0.706</ins>0.620<ins>0.602</ins>
SalsaNextRecLSTM0.7590.7090.7460.823
DDRNet0.5160.3540.7370.458
DDRNetOC0.5620.4030.7050.577
DDRNetDA0.5310.3600.7180.515
Segformer0.3930.3550.4180.407

Citation

If you found DAPS3D useful in your research, please consider starring ⭐ us on GitHub and citing 📚 us in your research!

@article{klokov2023daps3d,
  title={DAPS3D: Domain Adaptive Projective Segmentation of 3D LiDAR Point Clouds},
  author={Klokov, Alexey and Pak, Di Un and Khorin, Aleksandr and Yudin, Dmitry and Kochiev, Leon and Luchinskiy, Vladimir and Bezuglyj, Vitaly},
  journal={IEEE Access},
  year={2023},
  doi={10.1109/ACCESS.2023.3298706},
  publisher={IEEE}
}

Licence

This repository is released under MIT License (see LICENSE file for details).