The code repository contains the model and experimental code used in the paper "GEOMETRIC PRIOR-ASSISTED FEATURE PRESENTATION ENHANCEMENT FOR OBJECT DETECTION IN AERIAL IMAGES".
This project aims to implement the GeometricPrior-assistedNet model proposed in the paper and evaluate it on the DOTA and HRSC2016 datasets. The main purpose of this model is to explore the geometric features of targets. It proposes a Point-Line-Region (PLR) supervision module embedded in FPN to learn robust geometric features, which helps to evaluate and locate the orientation, vertices, and boundaries of bounding boxes.
- Introduction to the method::The point branch uses circular Gaussian to focus on the critical points of the objects, the line branch uses strip Gaussian to mine the edge correlation of large aspect ratio objects, and the area branch uses the mask to mine the relationship between tiny objects and backgrounds.
We have implemented our model using the MMRotate framework, which depends on PyTorch, MMCV, and MMDetection. We recommend using this framework to run our code. Below are the quick installation steps. For more detailed instructions, please refer to the installation guide.
conda create -n open-mmlab python=3.7 pytorch==1.7.0 cudatoolkit=10.1 torchvision -c pytorch -y
conda activate open-mmlab
pip install openmim
mim install mmcv-full
mim install mmdet
git clone https://github.com/open-mmlab/mmrotate.git
cd mmrotate
pip install -r requirements/build.txt
pip install -v -e .
- We used the DOTA dataset, which includes 2,806 images with pixel ranges from 800x800 to 4000x4000 and 182,824 instances from 15 categories with different orientations, shapes, and proportions. We segmented the original images into small blocks of 1024x1024 using a stride of 500 for training. Please refer to this link for data preparation.
- We used the HRSC2016 dataset, which contains 1061 images that have been effectively annotated with pixel ranges from 300x300 to 1500x900. We scaled the images to a unified size of 800x800 for training. Please refer to this link for data preparation.
This code repository is based on the basic usage of MMRotate. Please refer to get_started. for more information.
The results of the DOTA test development set are shown in the table below (password: abcd). For more detailed results, please refer to the paper.
Model | Backbone | MS Train/Test | DataAug | DOTAv1 mAP | Download |
---|---|---|---|---|---|
GeometricPrior-assistedNet | ResNet-50 | - | - | 68.9 | Baidu |
GeometricPrior-assistedNet | ResNet-101 | √ | √ | 73.78 | Baidu |
We used practical program functions from other wonderful open source projects.
Special thanks to the following authors:
Thanks to the third-party libraries: