Home

Awesome

Dense-Resolution Network for Point Cloud Classification and Segmentation

PWC
PWC
PWC

This repository is for Dense-Resolution Networ (DRNet) introduced in the following paper

Shi Qiu Saeed Anwar, Nick Barnes
"Dense-Resolution Network for Point Cloud Classification and Segmentation"
IEEE/CVF Winter Conference on Applications of Computer Vision (WACV 2021)

Paper

The paper can be downloaded from here (arXiv) or here (CVF), together with the supplementary material.

Motivation

<p align="center"> <img width="600" src="https://github.com/ShiQiu0419/DRNet/blob/master/figures/intro.png"> </p>

Implementation

Dataset

Download the ShapeNet Part Dataset and upzip it to your rootpath. Alternatively, you can modify the path of your dataset in cfgs/config_partseg_gpus.yaml and cfgs/config_partseg_test.yaml.

CUDA Kernel Building

For PyTorch version <= 0.4.0, please refer to Relation-Shape-CNN.
For PyTorch version >= 1.0.0, please refer to Pointnet2_PyTorch.

Note:
In our DRNet, we use Farthest Point Sampling (e.g., pointnet2_utils.furthest_point_sample) to down-sample the point cloud. Also, we adpot Feature Propagation (e.g., pointnet2_utils.three_nn and pointnet2_utils.three_interpolate) to up-sample the feature maps.

Training

sh train_partseg_gpus.sh
    

Due to the complexity of DRNet, we support Multi-GPU via nn.DataParallel. You can also adjust other parameters such as batch size or the number of input points in cfgs/config_partseg_gpus.yaml, in order to fit the memory limit of your device.

Voting Evaluation

You can set the path of your pre-trained model in cfgs/config_partseg_test.yaml, then run:

sh voting_test.sh

Citation

If you find our paper is useful, please cite:

@inproceedings{qiu2021dense,
  title={Dense-Resolution Network for Point Cloud Classification and Segmentation},
  author={Qiu, Shi and Anwar, Saeed and Barnes, Nick},
  booktitle={Proceedings of the IEEE/CVF Winter Conference on Applications of Computer Vision (WACV)},
  month={January},
  year={2021},
  pages={3813-3822}
}

Acknowledgement

The code is built on Pointnet2_PyTorch, Relation-Shape-CNN, DGCNN. We thank the authors for sharing their codes.