Skip to content

Official implementation of the paper "Hausdorff Distance Matching with Adaptive Query Denoising for Rotated Detection Transformer"

License

Notifications You must be signed in to change notification settings

SIAnalytics/RHINO

Repository files navigation

Hausdorff Distance Matching with Adaptive Query Denoising for Rotated Detection Transformer

PWC

SI Analytics

Hakjin Lee, Minki Song, Jamyoung Koo, Junghoon Seo

[Paper]

The RHINO is a robust DETR architecture designed for detecting rotated objects. It demonstrates promising results, exceeding 60 mAP on DOTA-v2.0.

Main Results

DOTA-v2.0 (Single-Scale Training and Testing)

Method Backbone AP50 Config Download
RHINO ResNet50 (1024,1024,200) 59.26 rhino_r50_dota2 model
RHINO Swin-T (1024,1024,200) 60.72 rhino_swint_dota2 model

DOTA-v1.5 (Single-Scale Training and Testing)

Method Backbone AP50 Config Download
RHINO ResNet50 (1024,1024,200) 71.96 rhino_r50_dotav15 model
RHINO Swin-T (1024,1024,200) 73.46 rhino_swint_dotav15 model

DOTA-v1.0 (Single-Scale Training and Testing)

Method Backbone AP50 Config Download
RHINO ResNet50 (1024,1024,200) 78.68 rhino_r50_dota model
RHINO Swin-T (1024,1024,200) 79.42 rhino_swint_dota model

Requirements

Installation

# torch>=1.9.1 is required.
pip install openmim mmengine==0.7.3
mim install mmcv==2.0.0
pip install mmdet==3.0.0
pip3 install --no-cache-dir -e ".[optional]"

or check the Dockerfile.

Preprare Dataset

Details are described in https://github.com/open-mmlab/mmrotate/blob/main/tools/data/dota/README.md

Specifically, run below code.

python3 tools/data/dota/split/img_split.py --base-json \
  tools/data/dota/split/split_configs/ss_trainval.json

python3 tools/data/dota/split/img_split.py --base-json \
  tools/data/dota/split/split_configs/ss_test.json

Training

To train the model(s) in the paper, run this command:

# DOTA-v2.0 R-50
export CONFIG='configs/rhino/rhino_phc_haus-4scale_r50_2xb2-36e_dotav2.py'
bash tools/dist_train.sh $CONFIG 2

Evaluation

To evaluate our models on DOTA, run:

# example
export CONFIG='configs/rhino/rhino_phc_haus-4scale_r50_2xb2-36e_dotav2.py'
export CKPT='work_dirs/rhino_phc_haus-4scale_r50_2xb2-36e_dotav2/epoch_36.pth'
python3 tools/test.py $CONFIG $CKPT

Evaluation is processed in the official DOTA evaluation server.

License

This project is licensed under CC-BY-NC. It is available for academic purposes only.

Bibtex

If you find our work helpful for your research, please consider citing the following BibTeX entry.

@misc{lee2023hausdorff,
      title={Hausdorff Distance Matching with Adaptive Query Denoising for Rotated Detection Transformer},
      author={Hakjin Lee and Minki Song and Jamyoung Koo and Junghoon Seo},
      year={2023},
      eprint={2305.07598},
      archivePrefix={arXiv},
      primaryClass={cs.CV}
}

About

Official implementation of the paper "Hausdorff Distance Matching with Adaptive Query Denoising for Rotated Detection Transformer"

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages