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

Mar 6, 2024 | Data Science

In the ever-evolving landscape of computer vision and deep learning, Bo Yang et al.’s paper on “Learning Object Bounding Boxes for 3D Instance Segmentation on Point Clouds” presents innovative techniques that enhance how point clouds are processed and analyzed. This guide will walk you through the setup, compilation, and evaluation of their methodology. So, let’s dive into the details!

1. Setup

Before you can start the implementation, ensure you have the following environment set up:

  • 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

2. Compile TensorFlow Operations

To compile TensorFlow operations, follow these steps:

  1. Find TensorFlow include and library paths by executing:
  2. import tensorflow as tf
    print(tf.sysconfig.get_include())
    print(tf.sysconfig.get_lib())
  3. Update the include path in all compilation files, e.g., `tf_opssampling/tf_sampling_compile.sh`, then proceed to compile:
  4. cd tf_opssampling
    chmod +x tf_sampling_compile.sh
    ./tf_sampling_compile.sh

3. Data Preparation

For training and evaluation, you need to access the S3DIS dataset:

Please note: The data we utilize is sourced from JSIS3D.

4. Training and Evaluation

Once you’ve prepared your data, you can begin training and evaluating the model:

  1. Train the model using:
  2. python main_train.py
  3. Evaluate the model using:
  4. python main_eval.py

5. Results Visualization

To visualize the performance of your model, view quantitative results on ScanNet.

Quantitative Results on ScanNet

6. Additional Visual Results

For qualitative analysis of ScanNet, you can explore the following:

ScanNet Visual Results
ScanNet Scene 0015
ScanNet Scene 0081
ScanNet Scene 0088
ScanNet Scene 0196

For additional results from the ScanNet validation split, check here.

7. Qualitative Results on S3DIS

S3DIS Area 2 Auditorium
S3DIS Area 6 Hallway 1
S3DIS Teaser Image

8. Training Curves on S3DIS

Training Curves on S3DIS

9. Video Demo

For a visual demonstration, check out our YouTube video:


Video Demo Cover

Troubleshooting

If you encounter issues during setup or execution, consider the following troubleshooting steps:

  • Verify that you are using the correct versions of Python and TensorFlow as specified.
  • Check if all necessary libraries are installed without conflicts.
  • Ensure the paths for TensorFlow are correctly set in your compilation scripts.
  • If the dataset links don’t work, look for alternative sources or ensure you have proper permissions.

For more insights, updates, or to collaborate on AI development projects, stay connected with fxis.ai.

At fxis.ai, we believe that such advancements are crucial for the future of AI, as they enable more comprehensive and effective solutions. Our team is continually exploring new methodologies to push the envelope in artificial intelligence, ensuring that our clients benefit from the latest technological innovations.

Stay Informed with the Newest F(x) Insights and Blogs

Tech News and Blog Highlights, Straight to Your Inbox