/Point-Planenet

Point-PlaneNet: Plane kernel based convolutional neural network for point clouds analysis

Primary LanguagePython

Point-PlaneNet: Plane kernel based convolutional neural network for point clouds analysis

Created by S.M. Moein Peyghambarzadeh, Fatemeh Azizmalayeri, Hassan Khotanlou, AmirSalarpour,
Digital Signal Processing 2020 (DSP 2020), https://www.sciencedirect.com/science/article/abs/pii/S1051200419301873

prediction example

Introduction

We propose an alternative simple local operation, called PlaneConv, which can extract local geometric features from point clouds by learning a set of planes in Rn space. The proposed architecture tackles both point cloud classification and segmentation tasks. Moreover, each module is designed to be permutation invariant. PlaneConv has a simple theoretical analysis and is easy to incorporate into deep learning models to improve their performance.

Here we list the commands for training/evaluating PlaneNet on classification and segmentation tasks on multiple datasets.

  • Classification
    • ModelNet40
    • MNIST
  • Segmentation
    • ShapeNet
    • S3DIS

    prediction example

Installation

Requirements:

This code has been tested with Python 3.5, Tensorflow 1.2 and CUDA 8.0 on Ubuntu 16.04. The code have also been tested on Windows 10 with python 3.5-3.7, tensorflow 1.4(or higher), cuda 9 (or higher) and cudnn 6.0 (or higher). notice ; If u want compile with tensorflow 2.0 please change import to:

import tensorflow.compat.v1 as tf
tf.disable_v2_behavior()

To train a model, firstly download the data that explain on the folder 'data'

Point Cloud Data

You can get sampled point clouds of ModelNet40 (XYZ and normal from mesh, 10k points per shape) at this link.

Mnist: here.

The ShapeNetPart dataset (XYZ, normal and part labels) can be found here.

S3DIS will be added.
Uncompress the downloaded data in this directory.

Citation

If you find our work useful in your research, Please cite this paper:

@article{peyghambarzadeh2020point,
  title={Point-PlaneNet: Plane kernel based convolutional neural network for point clouds analysis},
  author={Peyghambarzadeh, SM Moein and Azizmalayeri, Fatemeh and Khotanlou, Hassan and Salarpour, Amir},
  journal={Digital Signal Processing},
  volume={98},
  pages={102633},
  year={2020},
  publisher={Elsevier}
}

References

Our released code heavily based on each methods original repositories as cited below: