Vai al contenuto

Dataset DOTA con OBB

DOTA è un set di dati specializzato nel rilevamento di oggetti nelle immagini aeree. Nato dalla serie di dataset DOTA, offre immagini annotate che catturano una vasta gamma di scene aeree con OBB (Oriented Bounding Box).

Visuale delle classi di DOTA

Caratteristiche principali

  • Raccolta da vari sensori e piattaforme, con dimensioni delle immagini che vanno da 800 × 800 a 20.000 × 20.000 pixel.
  • Presenta più di 1,7 milioni di Bounding Box orientati in 18 categorie.
  • Comprende il rilevamento di oggetti su più scale.
  • Le istanze sono annotate da esperti utilizzando quadrilateri arbitrari (8 d.o.f.), catturando oggetti di diverse scale, orientamenti e forme.

Versioni del set di dati

DOTA-v1.0

  • Contiene 15 categorie comuni.
  • Comprende 2.806 immagini con 188.282 istanze.
  • Rapporti di divisione: 1/2 per la formazione, 1/6 per la convalida e 1/3 per il test.

DOTA-v1.5

  • Incorpora le stesse immagini di DOTA-v1.0.
  • Vengono annotate anche le istanze molto piccole (meno di 10 pixel).
  • Aggiunta di una nuova categoria: "gru per container".
  • Un totale di 403.318 istanze.
  • Pubblicato per la DOAI Challenge 2019 sul rilevamento di oggetti in immagini aeree.

DOTA-v2.0

  • Collezioni da Google Earth, GF-2 Satellite e altre immagini aeree.
  • Contiene 18 categorie comuni.
  • Comprende 11.268 immagini con ben 1.793.658 istanze.
  • Sono state introdotte nuove categorie: "aeroporto" e "eliporto".
  • Immagine divisa:
    • Formazione: 1.830 immagini con 268.627 istanze.
    • Convalida: 593 immagini con 81.048 istanze.
    • Test-dev: 2.792 immagini con 353.346 istanze.
    • Prova-sfida: 6.053 immagini con 1.090.637 istanze.

Struttura del set di dati

Il DOTA presenta un layout strutturato adatto alle sfide di rilevamento degli oggetti OBB:

  • Immagini: Una vasta collezione di immagini aeree ad alta risoluzione che catturano diversi terreni e strutture.
  • Bounding Box orientati: Annotazioni sotto forma di rettangoli ruotati che racchiudono gli oggetti indipendentemente dal loro orientamento, ideali per catturare oggetti come aerei, navi ed edifici.

Applicazioni

DOTA è un punto di riferimento per la formazione e la valutazione di modelli specifici per l'analisi delle immagini aeree. Grazie all'inclusione delle annotazioni OBB, rappresenta una sfida unica, che consente di sviluppare modelli di rilevamento degli oggetti specializzati che si adattano alle sfumature delle immagini aeree.

Set di dati YAML

In genere, i set di dati incorporano un file YAML (Yet Another Markup Language) che descrive la configurazione del set di dati. Per DOTA v1 e DOTA v1.5, Ultralytics mette a disposizione DOTAv1.yaml e DOTAv1.5.yaml file. Per ulteriori dettagli su questi e su DOTA v2, consulta il repository ufficiale e la documentazione di DOTA.

DOTAv1.yaml

# Ultralytics YOLO 🚀, AGPL-3.0 license
# DOTA 1.0 dataset https://captain-whu.github.io/DOTA/index.html for object detection in aerial images by Wuhan University
# Documentation: https://docs.ultralytics.com/datasets/obb/dota-v2/
# Example usage: yolo train model=yolov8n-obb.pt data=DOTAv1.yaml
# parent
# ├── ultralytics
# └── datasets
#     └── dota1  ← downloads here (2GB)

# Train/val/test sets as 1) dir: path/to/imgs, 2) file: path/to/imgs.txt, or 3) list: [path/to/imgs1, path/to/imgs2, ..]
path: ../datasets/DOTAv1 # dataset root dir
train: images/train # train images (relative to 'path') 1411 images
val: images/val # val images (relative to 'path') 458 images
test: images/test # test images (optional) 937 images

# Classes for DOTA 1.0
names:
  0: plane
  1: ship
  2: storage tank
  3: baseball diamond
  4: tennis court
  5: basketball court
  6: ground track field
  7: harbor
  8: bridge
  9: large vehicle
  10: small vehicle
  11: helicopter
  12: roundabout
  13: soccer ball field
  14: swimming pool

# Download script/URL (optional)
download: https://github.com/ultralytics/yolov5/releases/download/v1.0/DOTAv1.zip

Immagini di DOTA divise

Per addestrare il dataset DOTA, abbiamo diviso le immagini originali di DOTA ad alta risoluzione in immagini con risoluzione 1024x1024 in modo multiscalare.

Immagini divise

from ultralytics.data.split_dota import split_test, split_trainval

# split train and val set, with labels.
split_trainval(
    data_root="path/to/DOTAv1.0/",
    save_dir="path/to/DOTAv1.0-split/",
    rates=[0.5, 1.0, 1.5],  # multiscale
    gap=500,
)
# split test set, without labels.
split_test(
    data_root="path/to/DOTAv1.0/",
    save_dir="path/to/DOTAv1.0-split/",
    rates=[0.5, 1.0, 1.5],  # multiscale
    gap=500,
)

Utilizzo

Per addestrare un modello sul dataset DOTA v1, puoi utilizzare i seguenti frammenti di codice. Fai sempre riferimento alla documentazione del tuo modello per un elenco completo degli argomenti disponibili.

Avvertenze

Ti ricordiamo che tutte le immagini e le annotazioni associate al dataset DOTAv1 possono essere utilizzate per scopi accademici, ma è vietato l'uso commerciale. La tua comprensione e il tuo rispetto per i desideri dei creatori del dataset sono molto apprezzati!

Esempio di treno

from ultralytics import YOLO

# Create a new YOLOv8n-OBB model from scratch
model = YOLO("yolov8n-obb.yaml")

# Train the model on the DOTAv2 dataset
results = model.train(data="DOTAv1.yaml", epochs=100, imgsz=640)
# Train a new YOLOv8n-OBB model on the DOTAv2 dataset
yolo obb train data=DOTAv1.yaml model=yolov8n-obb.pt epochs=100 imgsz=640

Dati di esempio e annotazioni

Dando un'occhiata al set di dati si capisce la sua profondità:

Immagine campione del set di dati

  • Esempi di DOTA: Questa istantanea sottolinea la complessità delle scene aeree e l'importanza delle annotazioni Oriented Bounding Box, che catturano gli oggetti nel loro orientamento naturale.

La ricchezza del set di dati offre preziose informazioni sui problemi di rilevamento degli oggetti che si presentano esclusivamente nelle immagini aeree.

Citazioni e ringraziamenti

Per coloro che sfruttano il DOTA nelle loro imprese, è opportuno citare i documenti di ricerca pertinenti:

@article{9560031,
  author={Ding, Jian and Xue, Nan and Xia, Gui-Song and Bai, Xiang and Yang, Wen and Yang, Michael and Belongie, Serge and Luo, Jiebo and Datcu, Mihai and Pelillo, Marcello and Zhang, Liangpei},
  journal={IEEE Transactions on Pattern Analysis and Machine Intelligence},
  title={Object Detection in Aerial Images: A Large-Scale Benchmark and Challenges},
  year={2021},
  volume={},
  number={},
  pages={1-1},
  doi={10.1109/TPAMI.2021.3117983}
}

Una nota speciale di gratitudine al team che si occupa dei dataset DOTA per il loro encomiabile impegno nella cura di questo set di dati. Per una comprensione esaustiva del dataset e delle sue sfumature, visita il sito ufficiale di DOTA.



Created 2023-11-12, Updated 2024-06-02
Authors: glenn-jocher (9), Laughing-q (1)

Commenti