Skip to content
/ ReDet Public
forked from csuhan/ReDet

fix some bugs in Official code of the paper "ReDet: A Rotation-Equivariant Detector for Aerial Object Detection" (CVPR 2021)

License

Notifications You must be signed in to change notification settings

Geo-Chou/ReDet

 
 

Repository files navigation

update some useful code in DOTA_Devkit and tools folder

  • Script inference.py in DOTA_Devkit to inference just refer from labelTxt
  • dataset_json.py in tools can generate json without labeltxt, Just For Inference(test/val)

fix a bug when I use this repo

  • When I load different/same model in a script more than one time, the inference will have errors, fix it in mmdet folder.

Following Discription is forked from raw repo

ReDet: A Rotation-equivariant Detector for Aerial Object Detection

ReDet: A Rotation-equivariant Detector for Aerial Object Detection (CVPR2021),
Jiaming Han*, Jian Ding*, Nan Xue, Gui-Song Xia,
arXiv preprint (arXiv:2103.07733) / CVPR Open access.

The repo is based on AerialDetection and mmdetection. AerialDetection is a powerful framework for object detection in aerial images, which contains a lot of useful algorithms and tools.

Introduction

Recently, object detection in aerial images has gained much attention in computer vision. Different from objects in natural images, aerial objects are often distributed with arbitrary orientation. Therefore, the detector requires more parameters to encode the orientation information, which are often highly redundant and inefficient. Moreover, as ordinary CNNs do not explicitly model the orientation variation, large amounts of rotation augmented data is needed to train an accurate object detector. In this paper, we propose a Rotation-equivariant Detector (ReDet) to address these issues, which explicitly encodes rotation equivariance and rotation invariance. More precisely, we incorporate rotation-equivariant networks into the detector to extract rotation-equivariant features, which can accurately predict the orientation and lead to a huge reduction of model size. Based on the rotation-equivariant features, we also present Rotation-invariant RoI Align (RiRoI Align), which adaptively extracts rotation-invariant features from equivariant features according to the orientation of RoI. Extensive experiments on several challenging aerial image datasets DOTA-v1.0, DOTA-v1.5 and HRSC2016, show that our method can achieve state-of-the-art performance on the task of aerial object detection. Compared with previous best results, our ReDet gains 1.2, 3.5 and 2.6 mAP on DOTA-v1.0, DOTA-v1.5 and HRSC2016 respectively while reducing the number of parameters by 60% (313 Mb vs. 121 Mb).

Changelog

  • 2022-03-28. Speed up ReDet now! We convert the pre-trained weights of ReResNet+ReFPN to standard pytorch layers (see GETTING_STARTED.md). In the testing phase, you can directly use ResNet+FPN as the backbone of ReDet without compromising its rotation equivariance. Besides, you can also convert ReResNet to standard ResNet with this script.
  • 2021-04-13. Update our pretrained ReResNet and fix by this commit. If you cannot reach the reported mAP, please download it and try again.
  • 2021-03-09. Code released.

Benchmark and model zoo

  • ImageNet pretrain

We pretrain our ReResNet on the ImageNet-1K. Related codes can be found at the ReDet_mmcls branch. Here we provide our pretrained ReResNet-50 model for convenience. If you want to train and use ReResNet in your own project, please check out ReDet_mmcls for the installation and basic usage.

Model Group Top-1 (%) Top-5 (%) Download
ReR50 C8 71.20 90.28 model | log
ReR101 C8 74.92 92.22 model | log
  • Object Detection
Model Data Backbone MS Rotate Lr schd box AP Download
ReDet DOTA-v1.0 ReR50-ReFPN - - 1x 76.25 cfg model log
ReDet DOTA-v1.0 ReR50-ReFPN 1x 80.10 cfg model log
ReDet DOTA-v1.5 ReR50-ReFPN - - 1x 66.86 cfg model log
ReDet DOTA-v1.5 ReR101-ReFPN - - 1x 67.62 cfg model log
ReDet DOTA-v1.5 ReR50-ReFPN 1x 76.80 cfg model log
ReDet HRSC2016 ReR50-ReFPN - - 3x 90.46 cfg model log

Note:

  1. All our models are trained on 4GPUs with a learning rate 0.01. If you train your model with more/fewer GPUs, remember to change the learning rate, e.g., 0.02lr=0.0025lr*8GPU, 0.0025lr=0.0025lr*1GPU.
  2. If you cannot get access to Google Drive, BaiduYun download link can be found here with extracting code ABCD.

Installation

Please refer to INSTALL.md for installation and dataset preparation.

Getting Started

Please see GETTING_STARTED.md for the basic usage.

Citation

@InProceedings{han2021ReDet,
    author    = {Han, Jiaming and Ding, Jian and Xue, Nan and Xia, Gui-Song},
    title     = {ReDet: A Rotation-equivariant Detector for Aerial Object Detection},
    booktitle = {Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR)},
    month     = {June},
    year      = {2021},
    pages     = {2786-2795}
}

About

fix some bugs in Official code of the paper "ReDet: A Rotation-Equivariant Detector for Aerial Object Detection" (CVPR 2021)

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 89.7%
  • Cuda 7.0%
  • C++ 2.9%
  • Other 0.4%