This repository contains the official code to reproduce the results from the paper:
ACL-SPC: Adaptive Closed-Loop system for Self-Supervised Point Cloud Completion (CVPR 2023)
[arXiv] [presentation]
Clone this repository into any place you want.
git clone https://github.com/Sangminhong/ACL-SPC_PyTorch.git
cd ACL-SPC_PyTorch
You can try downloading the environment.yml and set the conda environment.
conda env create -f environment.yml --name ACL_SPC
conda activate ACL_SPC
Or try to set the environment manually.
- Python 3.8.5
- PyTorch 1.7.1
- numpy
- h5py
- numba
- scikit-learn
- open3d
- torchsummary
- pytorch3d
- KNN-CUDA
- pykdtree
- torch_scatter
If you want to test your partial point cloud on pretrained model you can simply run the below command.
CUDA_VISIBLE_DEVICES=0 python demo.py --input {input_filename} --model_filename {model_filename} --fine_tune False
or if you need to finetune on your own dataset, you can simply run the below command.
CUDA_VISIBLE_DEVICES=0 python demo.py --input {input_filename} --model_filename {model_filename} --fine_tune True --dataset_directory {dataset_directory}
Download model_best.pth
from this link and save them.
You can now go to src folder and test our ACL-SPC:
CUDA_VISIBLE_DEVICES=0 python main.py --experiment_id {experiment id} --dataset_name {dataset} --class_name {plane/car/chair/table}
If you find our code or paper useful, please consider citing:
@inproceedings{Hong2023ACLSPC,
title={ACL-SPC: Adaptive Closed-Loop system for Self-Supervised Point Cloud Completion},
author={Sangmin Hong and Mohsen Yavartanoo and Reyhaneh Neshatavar and Kyoung Mu Lee},
booktitle={IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR)},
year={2023}
}