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>, <a href="https://scholar.google.com/citations?user=-j1j7TkAAAAJ" target='_blank'>Lingdong Kong</a>, <a href="https://scholar.google.com/citations?user=lSDISOcAAAAJ" target='_blank'>Liang Pan</a>, <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
- [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
, andWOD-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 <a href="https://arxiv.org/abs/2202.03377" target='_blank'>here</a> to check it out! 🎉
Overview
- Highlight
- Data Preparation
- Getting Started
- Leaderboard
- Benchmark Results
- Evaluation
- Customize Evaluation
- Build PointCloud-C
- TODO List
- License
- Acknowledgement
- Citation
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
Method | Reference | Augmentation | mCE $\downarrow$ | Clean OA $\uparrow$ |
---|---|---|---|---|
EPiC (RPC, WOLFMix) | Levi et al., ICCV 2023 | Yes | 0.501 | 0.927 |
EPiC (PCT) | Levi et al., ICCV 2023 | No | 0.646 | 0.934 |
WOLFMix (GDANet) | Ren et al., ICML 2022 | Yes | 0.571 | 0.934 |
RPC | Ren et al., ICML 2022 | No | 0.863 | 0.930 |
Benchmark Results
ModelNet-C (Classification)
Method | Reference | Standalone | mCE $\downarrow$ | RmCE $\downarrow$ | Clean OA $\uparrow$ |
---|---|---|---|---|---|
DGCNN | Wang et al. | Yes | 1.000 | 1.000 | 0.926 |
PointNet | Qi et al. | Yes | 1.422 | 1.488 | 0.907 |
PointNet++ | Qi et al. | Yes | 1.072 | 1.114 | 0.930 |
RSCNN | Liu et al. | Yes | 1.130 | 1.201 | 0.923 |
SimpleView | Goyal et al. | Yes | 1.047 | 1.181 | 0.939 |
GDANet | Xu et al. | Yes | 0.892 | 0.865 | 0.934 |
CurveNet | Xiang et al. | Yes | 0.927 | 0.978 | 0.938 |
PAConv | Xu et al. | Yes | 1.104 | 1.211 | 0.936 |
PCT | Guo et al. | Yes | 0.925 | 0.884 | 0.930 |
RPC | Ren et al. | Yes | 0.863 | 0.778 | 0.930 |
OcCo (DGCNN) | Wang et al. | No | 1.248 | 1.262 | 0.922 |
PointBERT | Yu et al. | No | 1.033 | 0.895 | 0.922 |
PointMixUp (PointNet++) | Chen et al. | No | 1.028 | 0.785 | 0.915 |
PointCutMix-K (PointNet++) | Zhang et al. | No | 0.806 | 0.808 | 0.933 |
PointCutMix-R (PointNet++) | Zhang et al. | No | 0.796 | 0.809 | 0.929 |
PointWOLF (DGCNN) | Kim et al. | No | 0.814 | 0.698 | 0.926 |
RSMix (DGCNN) | Lee et al. | No | 0.745 | 0.839 | 0.930 |
PointCutMix-R (DGCNN) | Zhang et al. | No | 0.627 | 0.504 | 0.926 |
PointCutMix-K (DGCNN) | Zhang et al. | No | 0.659 | 0.585 | 0.932 |
WOLFMix (DGCNN) | Ren et al. | No | 0.590 | 0.485 | 0.932 |
WOLFMix (GDANet) | Ren et al. | No | 0.571 | 0.439 | 0.934 |
WOLFMix (PCT) | Ren et al. | No | 0.574 | 0.653 | 0.934 |
PointCutMix-K (PCT) | Zhang et al. | No | 0.644 | 0.565 | 0.931 |
PointCutMix-R (PCT) | Zhang et al. | No | 0.608 | 0.518 | 0.928 |
WOLFMix (RPC) | Ren et al. | No | 0.601 | 0.940 | 0.933 |
ShapeNet-C (Part Segmentation)
Method | Reference | Standalone | mCE $\downarrow$ | RmCE $\downarrow$ | Clean mIoU $\uparrow$ |
---|---|---|---|---|---|
DGCNN | Wang et al. | Yes | 1.000 | 1.000 | 0.852 |
PointNet | Qi et al. | Yes | 1.178 | 1.056 | 0.833 |
PointNet++ | Qi et al. | Yes | 1.112 | 1.850 | 0.857 |
OcCo-DGCNN | Wang et al. | No | 0.977 | 0.804 | 0.851 |
OcCo-PointNet | Wang et al. | No | 1.130 | 0.937 | 0.832 |
OcCo-PCN | Wang et al. | No | 1.173 | 0.882 | 0.815 |
GDANet | Xu et al. | Yes | 0.923 | 0.785 | 0.857 |
PAConv | Xu et al. | Yes | 0.927 | 0.848 | 0.859 |
PointTransformers | Zhao et al. | Yes | 1.049 | 0.933 | 0.840 |
PointMLP | Ma et al. | Yes | 0.977 | 0.810 | 0.853 |
PointBERT | Yu et al. | No | 1.033 | 0.895 | 0.855 |
PointMAE | Pang et al. | No | 0.927 | 0.703 | 0.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 <a href="https://pointcloud-c.github.io/home" target='_blank'>project page</a>.
- Add evaluation scripts for classification models.
- Add evaluation scripts for part segmentation models.
- Add competition details.
- Clean and retouch codebase.
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}
}