README.md

March 15, 2024 ยท View on GitHub


Benchmarking and Analyzing Point Cloud Perception Robustness under Corruptions

Jiawei Ren,ย  Lingdong Kong,ย  Liang Pan,ย  Ziwei Liu
S-Lab, Nanyang Technological University

About

PointCloud-C is the very first test-suite for point cloud perception robustness analysis under corruptions. It includes two sets: ModelNet-C (ICML'22) for point cloud classification and ShapeNet-C (arXiv'22) for part segmentation.



Fig. Examples of point cloud corruptions in PointCloud-C.


Visit our project page to explore more details. ๐ŸŒฑ

Updates

  • [2024.03] - We add Leaderboard to this page. We welcome pull requests to submit your results!
  • [2024.01] - The toolkit tailored for The RoboDrive Challenge has been released. :hammer_and_wrench:
  • [2023.12] - We are hosting The RoboDrive Challenge at ICRA 2024. :blue_car:
  • [2023.03] - Intend to test the robustness of your 3D perception models on real-world point clouds? Check our recent work, Robo3D, a comprehensive suite that enables OoD robustness evaluation of 3D detectors and segmentors on our newly established datasets: KITTI-C, SemanticKITTI-C, nuScenes-C, and WOD-C.
  • [2022.11] - The preprint of the PointCloud-C paper (ModelNet-C + ShapeNet-C) is available here.
  • [2022.10] - We have successfully hosted the 2022 PointCloud-C Challenge. Congratulations to the winners: ๐Ÿฅ‡ Antins_cv, ๐Ÿฅˆ DGPC & DGPS, and ๐Ÿฅ‰ BIT_gdxy_xtf.
  • [2022.07] - Try a Gradio demo for PointCloud-C corruptions at Hugging Face Spaces! :hugs:
  • [2022.07] - Competition starts! Join now at our CodaLab page.
  • [2022.06] - PointCloud-C is now live on Paper-with-Code. Join the benchmark today!
  • [2022.06] - The 1st PointCloud-C challenge will be hosted in conjecture with the ECCV'22 SenseHuman workshop. ๐Ÿš€
  • [2022.06] - We are organizing the 1st PointCloud-C challenge! Click here to explore the competition details.
  • [2022.05] - ModelNet-C is accepted to ICML 2022. Click here to check it out! ๐ŸŽ‰

Overview

Highlight

Corruption Taxonomy

ModelNet-C (Classification)


ShapeNet-C (Part Segmentation)


Data Preparation

Please refer to DATA_PREPARE.md for the details to prepare the ModelNet-C and ShapeNet-C datasets.

Getting Started

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

Leaderboard

MethodReferenceAugmentationmCE โ†“\downarrowClean OA โ†‘\uparrow
EPiC (RPC, WOLFMix)Levi et al., ICCV 2023Yes0.5010.927
EPiC (PCT)Levi et al., ICCV 2023No0.6460.934
WOLFMix (GDANet)Ren et al., ICML 2022Yes0.5710.934
RPCRen et al., ICML 2022No0.8630.930

Benchmark Results

ModelNet-C (Classification)

MethodReferenceStandalonemCE โ†“\downarrowRmCE โ†“\downarrowClean OA โ†‘\uparrow
DGCNNWang et al.Yes1.0001.0000.926
PointNetQi et al.Yes1.4221.4880.907
PointNet++Qi et al.Yes1.0721.1140.930
RSCNNLiu et al.Yes1.1301.2010.923
SimpleViewGoyal et al.Yes1.0471.1810.939
GDANetXu et al.Yes0.8920.8650.934
CurveNetXiang et al.Yes0.9270.9780.938
PAConvXu et al.Yes1.1041.2110.936
PCTGuo et al.Yes0.9250.8840.930
RPCRen et al.Yes0.8630.7780.930
OcCo (DGCNN)Wang et al.No1.2481.2620.922
PointBERTYu et al.No1.0330.8950.922
PointMixUp (PointNet++)Chen et al.No1.0280.7850.915
PointCutMix-K (PointNet++)Zhang et al.No0.8060.8080.933
PointCutMix-R (PointNet++)Zhang et al.No0.7960.8090.929
PointWOLF (DGCNN)Kim et al.No0.8140.6980.926
RSMix (DGCNN)Lee et al.No0.7450.8390.930
PointCutMix-R (DGCNN)Zhang et al.No0.6270.5040.926
PointCutMix-K (DGCNN)Zhang et al.No0.6590.5850.932
WOLFMix (DGCNN)Ren et al.No0.5900.4850.932
WOLFMix (GDANet)Ren et al.No0.5710.4390.934
WOLFMix (PCT)Ren et al.No0.5740.6530.934
PointCutMix-K (PCT)Zhang et al.No0.6440.5650.931
PointCutMix-R (PCT)Zhang et al.No0.6080.5180.928
WOLFMix (RPC)Ren et al.No0.6010.9400.933

ShapeNet-C (Part Segmentation)

MethodReferenceStandalonemCE โ†“\downarrowRmCE โ†“\downarrowClean mIoU โ†‘\uparrow
DGCNNWang et al.Yes1.0001.0000.852
PointNetQi et al.Yes1.1781.0560.833
PointNet++Qi et al.Yes1.1121.8500.857
OcCo-DGCNNWang et al.No0.9770.8040.851
OcCo-PointNetWang et al.No1.1300.9370.832
OcCo-PCNWang et al.No1.1730.8820.815
GDANetXu et al.Yes0.9230.7850.857
PAConvXu et al.Yes0.9270.8480.859
PointTransformersZhao et al.Yes1.0490.9330.840
PointMLPMa et al.Yes0.9770.8100.853
PointBERTYu et al.No1.0330.8950.855
PointMAEPang et al.No0.9270.7030.860

*Note: Standalone indicates whether or not the method is a standalone architecture or a combination with augmentation or pretrain.

Evaluation

Evaluation commands are provided in EVALUATE.md.

Customize Evaluation

We have provided evaluation utilities to help you evaluate on ModelNet-C using your own codebase. Please follow CUSTOMIZE.md.

Build PointCloud-C

You can manage to generate your own "PointCloud-C"! Follow the instructions in GENERATE.md.

TODO List

  • Initial release. ๐Ÿš€
  • Add license. See here for more details.
  • Release test sets. Download ModelNet-C and ShapeNet-C from our project page.
  • Add evaluation scripts for classification models.
  • Add evaluation scripts for part segmentation models.
  • Add competition details.
  • Clean and retouch codebase.

License

Creative Commons License
This work is under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.

Acknowledgement

We acknowledge the use of the following public resources during the course of this work: 1SimpleView, 2PCT, 3GDANet, 4CurveNet, 5PAConv, 6RSMix, 7PointMixUp, 8PointCutMix, 9PointWOLF, 10PointTransformers, 11OcCo, 12PointMLP, 13PointBERT, and 14PointMAE.

Citation

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

@article{ren2022pointcloud-c,
  title = {PointCloud-C: Benchmarking and Analyzing Point Cloud Perception Robustness under Corruptions},
  author = {Jiawei Ren and Lingdong Kong and Liang Pan and Ziwei Liu},
  journal = {Preprint},
  year = {2022}
}
@inproceedings{ren2022modelnet-c,
  title = {Benchmarking and Analyzing Point Cloud Classification under Corruptions},
  author = {Jiawei Ren and Liang Pan and Ziwei Liu},
  booktitle = {International Conference on Machine Learning (ICML)},
  year = {2022}
}