Home

Awesome

<br /> <p align="center"> <img src="figs/logo.png" align="center" width="40%"> <h3 align="center"><strong>Benchmarking and Analyzing Point Cloud Perception Robustness under Corruptions</strong></h3> <p align="center"> <a href="https://scholar.google.com/citations?user=YUKPVCoAAAAJ" target='_blank'>Jiawei Ren</a>,&nbsp; <a href="https://scholar.google.com/citations?user=-j1j7TkAAAAJ" target='_blank'>Lingdong Kong</a>,&nbsp; <a href="https://scholar.google.com/citations?user=lSDISOcAAAAJ" target='_blank'>Liang Pan</a>,&nbsp; <a href="https://scholar.google.com/citations?user=lc45xlcAAAAJ" target='_blank'>Ziwei Liu</a> <br> S-Lab, Nanyang Technological University </p> </p> <p align="center"> <a href="https://arxiv.org/abs/2202.03377" target='_blank'> <img src="https://img.shields.io/badge/Paper-%F0%9F%93%83-yellow"> </a> <a href="https://pointcloud-c.github.io/home" target='_blank'> <img src="https://img.shields.io/badge/Project-%F0%9F%94%97-lightyellow"> </a> <a href="https://huggingface.co/spaces/ICML2022/PointCloudC" target='_blank'> <img src="https://img.shields.io/badge/Demo-%F0%9F%8E%AC-yellow"> </a> <a href="https://zhuanlan.zhihu.com/p/529498676" target='_blank'> <img src="https://img.shields.io/badge/%E4%B8%AD%E8%AF%91%E7%89%88-%F0%9F%90%BC-lightyellow"> </a> <a href="" target='_blank'> <img src="https://visitor-badge.laobi.icu/badge?page_id=ldkong1205.PointCloud-C&left_color=gray&right_color=yellow"> </a> </p>

About

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

<br> <p align="center"> <img src="figs/teaser.png" align="center" width="60%"> <br> Fig. Examples of point cloud corruptions in PointCloud-C. </p> <br>

Visit our <a href="https://pointcloud-c.github.io/home" target='_blank'>project page</a> to explore more details. 🌱

Updates

Overview

Highlight

Corruption Taxonomy

<p align="center"> <img src="figs/c-taxonomy.png" align="center" width="75%"> </p>

ModelNet-C (Classification)

<br> <p align="center"> <img src="figs/c-classification.jpeg" align="center" width="75%"> </p>

ShapeNet-C (Part Segmentation)

<br> <p align="center"> <img src="figs/c-partseg.png" align="center" width="75%"> </p>

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 $\downarrow$Clean 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 $\downarrow$RmCE $\downarrow$Clean 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 $\downarrow$RmCE $\downarrow$Clean 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

License

<a rel="license" href="http://creativecommons.org/licenses/by-nc-sa/4.0/"><img alt="Creative Commons License" style="border-width:0" src="https://i.creativecommons.org/l/by-nc-sa/4.0/80x15.png" /></a> <br /> This work is under the <a rel="license" href="http://creativecommons.org/licenses/by-nc-sa/4.0/">Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License</a>.

Acknowledgement

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

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}
}