PAConv: Position Adaptive Convolution with Dynamic Kernel Assembling on Point Clouds
by Mutian Xu*, Runyu Ding*, Hengshuang Zhao, and Xiaojuan Qi.
Introduction
This repository is built for the official implementation of:
PAConv: Position Adaptive Convolution with Dynamic Kernel Assembling on Point Clouds (CVPR2021) [arXiv]
If you find our work useful in your research, please consider citing:
@inproceedings{xu2021paconv,
title={PAConv: Position Adaptive Convolution with Dynamic Kernel Assembling on Point Clouds},
author={Xu, Mutian and Ding, Runyu and Zhao, Hengshuang and Qi, Xiaojuan},
booktitle={CVPR},
year={2021}
}
Highlight
- All initialization models and trained models are available.
- Provide fast multiprocessing training (nn.parallel.DistributedDataParallel) with official nn.SyncBatchNorm.
- Incorporated with tensorboardX for better visualization of the whole training process.
- Support recent versions of PyTorch.
- Well designed code structures for easy reading and using.
Usage
We provide scripts for different point cloud processing tasks:
-
Object Classification task on Modelnet40.
-
Shape Part Segmentation task on ShapeNetPart.
-
Indoor Scene Segmentation task on S3DIS.
You can find the instructions for running these tasks in the above corresponding folders.
Performance
The following tables report the current performances on different tasks and datasets. ( * denotes the backbone architectures)
Object Classification on ModelNet40
Method | OA |
---|---|
PAConv (*PointNet) | 93.2% |
PAConv (*DGCNN) | 93.9% |
Shape Part Segmentation on ShapeNet Part
Method | Class mIoU | Instance mIoU |
---|---|---|
PAConv (*DGCNN) | 84.6% | 86.1% |
Indoor Scene Segmentation on S3DIS Area-5
Method | S3DIS mIoU |
---|---|
PAConv (*PointNet++) | 66.58% |
Contact
You are welcome to send pull requests or share some ideas with us. Contact information: Mutian Xu ([email protected]) or Runyu Ding ([email protected]).
Acknowledgement
Our code base is partially borrowed from PointWeb, DGCNN and PointNet++.