Indoor Object Detection

May 10, 2022 ยท View on GitHub

This repo contains the code and configuration files for indoor object detection.

  • A Unified Query-based Paradigm for Point Cloud Understanding (paper)

Acknowledgements

  • This implementation heavily relies on MMDetection3D. We thank the MMDetection3D team for providing such a well-organized codebase.

Results and Models

Note. All models below follow EQ-Paradigm and use a Q-Net to enable a free combination between backbones and heads. (*) means the improvement compared to the model with its original backbone network without Q-Net.

ScanNet Dataset models

BackbonemAP@0.25mAP@0.5download
VoteNetPointNet++ (SSG)64.7 (+2.4)45.3 (+5.4)model
GroupFree3dPointNet++ (SSG)67.7 (+1.4)51.0 (+3.2)model
VoteNetSparseConvNet58.139.5model
GroupFree3dSparseConvNet60.041.3model

SUN RGB-D Dataset models

BackbonemAP@0.25mAP@0.5download
VoteNetPointNet++ (SSG)61.3 (+1.6)39.9 (+4.2)model
VoteNetSparseConvNet60.040.3model

More models on other datasets

Models on other backbones and datasets will be released soon.

Getting Started

Data preprocessing

Please refer to MMDetection3D for data preparation before the first run.

Training

We take the VoteNet with PointNet++ (SSG) backbone on ScanNet dataset as an example here.

cd /path/to/DeepVision3D/MMDetection3D

# training configuration.
NUM_GPUS=4
CONFIG_FILE=configs/eq_paradigm/votenet/ptbased_backbone/eqvotenet_ptbased_backbone_scannet-3d-18class.py

# training script.
tools/dist_train.sh ${CONFIG_FILE} ${NUM_GPUS}

Testing

cd /path/to/DeepVision3D/MMDetection3D

# testing configuration.
NUM_GPUS=1
CONFIG_FILE=configs/eq_paradigm/votenet/ptbased_backbone/eqvotenet_ptbased_backbone_scannet-3d-18class.py
CHECKPOINT=/path/to/eqvotenet_ptbased_backbone_scannet-3d-18class.pth

# testing script.
bash tools/dist_test.sh ${CONFIG_FILE} ${CHECKPOINT} ${NUM_GPUS} --eval mAP