2019-08-02 19:12:21 +02:00
2019-08-02 19:12:21 +02:00
2019-07-30 07:44:45 +02:00
2019-08-02 10:49:05 +02:00
2019-08-02 19:12:21 +02:00
2019-07-30 07:44:45 +02:00

Pointnet++ Part segmentation

This repo is implementation for PointNet++ part segmentation model based on PyTorch and pytorch_geometric. It can achieve comparable or better performance even compared with PointCNN on Shapenet dataset.

The model has been mergered into pytorch_geometric as a point cloud segmentation example, you can try it.

Performance

Segmentation on A subset of shapenet.

Method mcIoU Airplane Bag Cap Car Chair Earphone Guitar Knife Lamp Laptop Motorbike Mug Pistol Rocket Skateboard Table
PointNet++ 81.9 82.4 79.0 87.7 77.3 90.8 71.8 91.0 85.9 83.7 95.3 71.6 94.1 81.3 58.7 76.4 82.6
PointCNN 84.6 84.11 86.47 86.04 80.83 90.62 79.70 92.32 88.44 85.31 96.11 77.20 95.28 84.21 64.23 80.00 82.99
PointNet++(this repo) 84.68 85.42 85.92 88.39 79.73 91.86 75.37 92.95 88.56 85.72 97.00 72.94 96.88 84.52 64.38 79.39 85.91

mcIOU: mean per-class pIoU

Requirements

Quickly install pytorch_geometric and Open3D with Anaconda

$ pip install --verbose --no-cache-dir torch-scatter
$ pip install --verbose --no-cache-dir torch-sparse
$ pip install --verbose --no-cache-dir torch-cluster
$ pip install --verbose --no-cache-dir torch-spline-conv (optional)
$ pip install torch-geometric
# optional
conda install -c open3d-admin open3d

Usage

Training

python main.py

Show segmentation result

python vis/show_seg_res.py

Sample segmentation result

segmentation_result

Links

Description
No description provided
Readme 42 MiB
Languages
Python 100%