OrthogonalDet
[CVPR 2024] Exploring Orthogonality in Open World Object Detection
Install / Use
/learn @feifeiobama/OrthogonalDetREADME
OrthogonalDet
Code for CVPR 2024 paper Exploring Orthogonality in Open World Object Detection.
<p align="center"> <img src="assets/intro.png" alt="OrthogonalDet" width=60%> </p>Requirements
- Linux or macOS with Python ≥ 3.8.
- Install PyTorch ≥ 1.9.0, torchvision, Detectron2, timm, and einops.
- Prepare datasets:
- Download COCO and PASCAL VOC.
- Convert annotation format using
coco_to_voc.py. - Move all images to
datasets/JPEGImagesand annotations todatasets/Annotations.
Getting Started
- Training for open world object detection:
Evaluation for open world object detection:bash run_owod.shbash test_owod.sh - Experiment for incremental object detection:
bash run_iod.sh - Visualize the results:
python demo.py -i LIST_OF_IMAGES - Note that we are using an ImageNet pre-trained backbone. To switch to a DINO pre-trained backbone, please download the model weights and then follow these instructions.
Results
The following results were obtained with four NVIDIA 2080 Ti GPUs, using the checkpoints at this link.
-
Open world object detection on M-OWODB and S-OWODB:

-
Incremental object detection on PASCAL VOC:

Citation
If you find this code useful, please consider citing:
@inproceedings{sun2024exploring,
title={Exploring Orthogonality in Open World Object Detection},
author={Sun, Zhicheng and Li, Jinghan and Mu, Yadong},
booktitle={Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition},
pages={17302--17312},
year={2024}
}
Acknowledgement
Our implementation is based on RandBox which uses Detectron2 and Sparse R-CNN.
