Project for ADL4CV: Shape Completion with Meso-Skeleton Learning by Zhisheng Zheng and Dongyue Lu, supervised by Yinyu Nie.
This code is tested under Python 3.6.3, PyTorch 1.2.0 on Ubuntu 18.04 and 20.04.
check the report and poster in the folder docu
.
Simply run the following commands.
First, you need to set up pointnet++ dependencies
cd pointnet2
python setup.py install
Then, install knn_cuda
by running the following command
pip install --upgrade https://github.com/unlimblue/KNN_CUDA/releases/download/0.2/KNN_CUDA-0.2-py3-none-any.whl
Download training data: airplane, chair, chair-200skeleton, chair-400skeleton, chair-1200skeleton.
Put the data into folder datas
.
Simply run the following code
python train_PFnet.py
to run the PFnet-based netwotk, or run
python train_PUnet.py
to run the PUnet-based network, or run
python train_PFnet_only.py
python train_PUnet_only.py
to do the ablation study for skeleton.
See python train.py --help
for all the training options.
Simply run the following code
python test_PFnet.py
or
python test_PUnet.py
or
python test_PFnet_only.py
python test_PUnet_only.py
See python test.py --help
for all the testing options.
[1]Charles R Qi, Hao Su, Kaichun Mo, and Leonidas J Guibas. Pointnet: Deep learning on point sets for 3d classification and segmentation. In Proceedings of the IEEE conference on computer vision and pattern recognition, pages 652–660, 2017. 1
[2] Charles R Qi, Li Yi, Hao Su, and Leonidas J Guibas. Pointnet++: Deep hierarchical feature learning on point sets in a metric space. arXiv preprint arXiv:1706.02413, 2017. 1
[3] Angela Dai, Charles Ruizhongtai Qi, and Matthias Nießner. Shape completion using 3d-encoder-predictor cnns and shape synthesis. In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, pages 5868–5877,2017. 1
[4] Yinyu Nie, Yiqun Lin, Xiaoguang Han, Shihui Guo, Jian Chang, Shuguang Cui, and Jian Jun Zhang. Skeleton-bridged point completion: From global inference to local adjustment. arXiv preprint arXiv:2010.07428, 2020. 1
[5] Lequan Yu, Xianzhi Li, Chi-Wing Fu, Daniel Cohen-Or, and Pheng-Ann Heng. Pu-net: Point cloud upsampling network. In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, pages 2790–2799, 2018. 1, 2
[6] Zitian Huang, Yikuan Yu, Jiawen Xu, Feng Ni, and Xinyi Le. Pf-net: Point fractal network for 3d point cloud completion. In Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition, pages 7662–7670, 2020. 2
[7] Cheng Lin, Changjian Li, Yuan Liu, Nenglun Chen, Yi-King Choi, and Wenping Wang. Point2skeleton: Learning skeletal representations from point clouds. In Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition, pages 4277–4286, 2021. 2
[8] Angel X. Chang, Thomas Funkhouser, Leonidas Guibas, Pat Hanrahan, Qixing Huang, Zimo Li, Silvio Savarese, Manolis Savva, Shuran Song, Hao Su, Jianxiong Xiao, Li Yi, and Fisher Yu. Shapenet: An information-rich 3d model repository, 2015. 2