PJLab-ADG / OpenPCSeg

OpenPCSeg: Open Source Point Cloud Segmentation Toolbox and Benchmark
371 stars 36 forks source link

OpenPCSeg: An Open Source Point Cloud Segmentation Codebase

[License]() open issues GitHub forks

OpenPCSeg is an open-source point cloud segmentation toolbox based on PyTorch, heading towards the unification and thriving of 3D scene understanding and its related areas. With the help of OpenPCSeg, we benchmark methods in a way that pursues fairness, efficiency, and effectiveness, on prevailing large-scale point cloud datasets. At this moment, OpenPCSeg focuses on outdoor point cloud segmentation for autonomous driving.

This project is developed and maintained by Autonomous Driving Group [at] Shanghai AI Laboratory (ADLab).

Highlight

Supported Task

# Task Emphasis Dataset Method
:red_car: Fully-Supervised LiDAR Segmentation Accuracy 2 4

Changelog

Upcoming Features

Outline

Supported Methods

Supported Benchmark

LiDAR Semantic Segmentation (5)

LiDAR Panoptic Segmentation (3)

Model Zoo

SemanticKITTI Dataset Representative Models

Selected supported methods are shown in the below table. The results are mean IoU performance of moderate difficulty on the val set of SemanticKITTI dataset.

training time mIoU download
MinkowskiNet ~12.0 hours 70.04 model-737M
Cylinder3D ~8.7 hours 66.07 model-56M
SPVCNN ~13.1 hours 68.58 model-166M
RPVNet ~14.5 hours 68.86 model-980M

Waymo Open Dataset Representative Models

We are not supposed to provide pre-trained weights due to Waymo Dataset License Agreement, but you can easily achieve similar performance by training according to the default configs.

training time mIoU
MinkowskiNet ~25.0 hours 69.20
Cylinder3D ~19.2 hours 66.42
SPVCNN ~28.0 hours 69.37

Installation

Please refer to INSTALL.md for the installation details.

Data Preparation

└── data_root 
    └── nuscenes
    └── semantickitti
    └── scribblekitti
    └── waymo_open

Please refer to DATA_PREPARE.md for the details to prepare the nuScenes, SemanticKITTI, ScribbleKITTI, and Waymo Open datasets.

Getting Started

Please refer to GET_STARTED.md to learn more usage about this codebase.

Visualization

We recently supported a OpenPCSeg visualization tool for Waymo Open Dataset, please check INFER_WAYMO.md.

Here are some inference & visualization results:

Citation

If you find this work helpful, please kindly consider citing:

@misc{openpcseg2023,
    title={OpenPCSeg: An Open Source Point Cloud Segmentation Codebase},
    author={Liu Youquan, Bai Yeqi, Kong Lingdong, Chen Runnan, Hou Yuenan, Shi Botian, Li Yikang},
    howpublished = {\url{https://github.com/PJLab-ADG/PCSeg}},
    year={2023}
}

Authors

Liu Youquan, Bai Yeqi†, Kong Lingdong, Chen Runnan, Hou Yuenan, Shi Botian, Li Yikang

†Project Lead

License

OpenPCSeg is released under the Apache 2.0 license, while some specific operations in this codebase might be with other licenses. Please refer to LICENSE for a more careful check, if you are using our code for commercial matters.

Contact

If you have questions about this repo, please contact Bai Yeqi (baiyeqi@pjlab.org.cn) or Shi Botian (shibotian@pjlab.org.cn).

Acknowledgement

The overall structure of this repo is derived from OpenPCDet.

Part of our implementation uses code from repositories below:

Thank the authors for their great work!