Jianqiao Zheng,
Xueqian Li,
Sameera Ramasinghe,
Simon Lucey
The University of Adelaide
This is the official implementation of the paper "Robust Point Cloud Processing through Positional Embedding". This codebase is based on Benchmarking Robustness of 3D Point Cloud Recognition against Common Corruptions by Jiachen Sun et al., and we thank the authors for their great contributions.
The environment is same as Benchmarking Robustness of 3D Point Cloud Recognition against Common Corruptions. The core steps are listed below.
conda create --name modelnetc python=3.7.5
conda activate modelnetc
pip install -r requirements.txt
conda install sed # for downloading data and pretrained models
./setup.sh
You can download ModelNet40 and ModelNet40-C from Benchmarking Robustness of 3D Point Cloud Recognition against Common Corruptions.
You can download our modified ModelNet40-C from Google Drive and put them under data/
.
To train any model, use command in the following format.
python main.py --exp-config <path to the config>
The train command we use is in train.sh
. We only use dataset from DGCNN with simple augmetation (wihch is usually considered as "unaugmented").
To test a pretrained model with different corruptions, use command in the following format.
python main.py --entry test --model-path <cor_exp/runs>/<cfg_name>/<model_name>.pth --exp-config configs/corruptions/<cfg_name>.yaml
The evaluation commands we use are in the eval_cor_modelnet40c.sh
, eval_cor_modelnet40c_our.sh
scripts.
@misc{zheng2023robust,
title={Robust Point Cloud Processing through Positional Embedding},
author={Jianqiao Zheng and Xueqian Li and Sameera Ramasinghe and Simon Lucey},
year={2023},
eprint={2309.00339},
archivePrefix={arXiv},
primaryClass={cs.CV}
}