/3D-BoNet

🔥3D-BoNet in Tensorflow (NeurIPS 2019, Spotlight)

Primary LanguagePythonMIT LicenseMIT

Learning Object Bounding Boxes for 3D Instance Segmentation on Point Clouds

Bo Yang, Jianan Wang, Ronald Clark, Qingyong Hu, Sen Wang, Andrew Markham, Niki Trigoni. arXiv:1906.01140, 2019.

(1) Setup

ubuntu 16.04 + cuda 8.0

python 2.7 or 3.6

tensorflow 1.2 or 1.4

scipy 1.3

h5py 2.9

open3d-python 0.3.0

Compile tf_ops

(1) To find tensorflow include path and library paths:

import tensorflow as tf
print(tf.sysconfig.get_include())
print(tf.sysconfig.get_lib())

(2) To change the path in all the complie files, e.g. tf_ops/sampling/tf_sampling_compile.sh, and then compile:

cd tf_ops/sampling
chmod +x tf_sampling_compile.sh
./tf_sampling_compile.sh

(2) Data

S3DIS: https://drive.google.com/open?id=1hOsoOqOWKSZIgAZLu2JmOb_U8zdR04v0

百度盘: https://pan.baidu.com/s/1ww_Fs2D9h7_bA2HfNIa2ig 密码:qpt7

Acknowledgement: we use the same data released by JSIS3D.

(3) Train/test

python main_train.py

python main_eval.py

(4) Quantitative Results on ScanNet

Arch Image

(5) Qualitative Results on ScanNet

Arch Image

2 z
z z

More results of ScanNet validation split are available at: More ScanNet Results

To visualize: python helper_data_scannet.py

(6) Qualitative Results on S3DIS

z z

Teaser Image

(7) Training Curves on S3DIS

Teaser Image

(8) Video Demo (Youtube)

Citation

If you find our work useful in your research, please consider citing:

@inproceedings{yang2019learning,
  title={Learning object bounding boxes for 3d instance segmentation on point clouds},
  author={Yang, Bo and Wang, Jianan and Clark, Ronald and Hu, Qingyong and Wang, Sen and Markham, Andrew and Trigoni, Niki},
  booktitle={Advances in Neural Information Processing Systems},
  pages={6737--6746},
  year={2019}
}

Related Repos

  1. RandLA-Net: Efficient Semantic Segmentation of Large-Scale Point Clouds GitHub stars
  2. SoTA-Point-Cloud: Deep Learning for 3D Point Clouds: A Survey GitHub stars
  3. SensatUrban: Learning Semantics from Urban-Scale Photogrammetric Point Clouds GitHub stars
  4. SpinNet: Learning a General Surface Descriptor for 3D Point Cloud Registration GitHub stars