[Arxiv]

Arxiv
@ARTICLE{9709203,
author={Huang, Zhanchao and Li, Wei and Xia, Xiang-Gen,Hao Wang and Tao, Ran},
journal={arXiv},
title={Task-wise Sampling Convolutions for Arbitrary-Oriented Object Detection in Aerial Images},
year={2022},
volume={},
number={},
pages={1-16},
doi={10.48550/arXiv.2209.02200}}
IEEE TGRS
@ARTICLE{9912396,
author={Wang, Hao and Huang, Zhanchao and Chen, Zhengchao and Song, Ying and Li, Wei},
journal={IEEE Transactions on Geoscience and Remote Sensing},
title={Multi-Grained Angle Representation for Remote Sensing Object Detection},
year={2022},
volume={},
number={},
pages={1-1},
doi={10.1109/TGRS.2022.3212592}}
Linux (Ubuntu 18.04, GCC>=5.4) & Windows (Win10)
CUDA > 11.1, Cudnn > 8.0.4
First, install CUDA, Cudnn, and Pytorch. Second, install the dependent libraries in requirements.txt.
conda install pytorch torchvision torchaudio cudatoolkit=11.3 -c pytorch
pip install -r requirements.txt
git clone this repository
Polygen NMS
The poly_nms in this version is implemented using shapely and numpy libraries to ensure that it can work in different systems and environments without other dependencies. But doing so will slow down the detection speed in dense object scenes. If you want faster speed, you can compile and use the poly_iou library (C++ implementation version) in datasets_tools/DOTA_devkit. The compilation method is described in detail in DOTA_devkit .
cd datasets_tools/DOTA_devkit
sudo apt-get install swig
swig -c++ -python polyiou.i
python setup.py build_ext --inplace
You need to write a script to convert them into the train.txt file required by this repository and put them in the ./dataR folder.
For the specific format of the train.txt file, see the example in the /dataR folder.
image_path xmin,ymin,xmax,ymax,class_id,x1,y1,x2,y2,x3,y3,x4,y4,area_ratio,angle[0,180) xmin,ymin,xmax,ymax,class_id,x1,y1,x2,y2,x3,y3,x4,y4,area_ratio,angle[0,180)...
The calculation method of angle is explained in Issues #1 and our paper.
The same as the Pascal VOC Format
cfg.DATA_PATH = "/opt/datasets/DOTA/"
├── ...
├── JPEGImages
| ├── 000001.png
| ├── 000002.png
| └── ...
├── Annotations (DOTA Dataset Format)
| ├── 000001.txt (class_idx x1 y1 x2 y2 x3 y3 x4 y4)
| ├── 000002.txt
| └── ...
├── ImageSets
├── test.txt (testing filename)
├── 000001
├── 000002
└── ...
There is a DOTA2Train.py file in the datasets_tools folder that can be used to generate training and test format labels.
First, you need to use DOTA_devkit , the official tools of the DOTA dataset, for image and label splitting. Then, run DOTA2Train.py to convert them to the format required by GGHL. For the use of DOTA_devkit, please refer to the tutorial in the official repository.
sh train_GGHL_dist.sh
python test.py
Copyright © 2021 Shank2358.
This project is GNU General Public License v3.0 licensed.
$ claude mcp add TS-Conv \
-- python -m otcore.mcp_server <graph>