Ultralytics YOLO27 :

Dataset DOTA8#

Introduction#

Ultralytics DOTA8 est un petit dataset polyvalent de détection d’objets orientés, composé des 8 premières images du jeu de données fractionné DOTAv1, dont 4 pour l’entraînement et 4 pour la validation. Ce dataset est idéal pour tester et déboguer des modèles de détection d’objets ou expérimenter de nouvelles approches de détection. Avec 8 images, il est suffisamment petit pour être facilement gérable, tout en étant assez diversifié pour tester les pipelines d’entraînement, détecter les erreurs et servir de contrôle de cohérence avant l’entraînement sur des datasets plus volumineux.

Structure du jeu de données#

  • Images : 8 tuiles aériennes (4 pour l’entraînement, 4 pour la validation) provenant de DOTAv1.

  • Classes : hérite des 15 catégories de DOTAv1, notamment avion, navire et véhicule de grande taille.

  • Annotations : BBox orientées au format YOLO enregistrées dans des fichiers .txt à côté de chaque image.

  • Téléchargement : 1 Mo, récupéré automatiquement depuis les ressources GitHub d’Ultralytics la première fois que tu lances un entraînement.

  • Structure recommandée :

    datasets/dota8/
    ├── images/
    │   ├── train/
    │   └── val/
    └── labels/
        ├── train/
        └── val/

Explore DOTA8 sur Ultralytics Platform pour parcourir les tuiles aériennes avec leurs superpositions de BBox orientées, consulter la répartition des classes et les cartes thermiques des annotations dans l’onglet Charts, puis le cloner afin d’entraîner ton propre modèle dans le cloud.

YAML du jeu de données#

Un fichier YAML sert à définir la configuration du dataset. Il contient des informations sur les chemins du dataset, les classes et d’autres informations pertinentes. Pour le dataset DOTA8, le fichier dota8.yaml est maintenu à l’adresse https://github.com/ultralytics/ultralytics/blob/main/ultralytics/cfg/datasets/dota8.yaml.

ultralytics/cfg/datasets/dota8.yaml
# Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license

# DOTA8 dataset (8 images from the DOTAv1 split) by Ultralytics
# Documentation: https://docs.ultralytics.com/datasets/obb/dota8
# Example usage: yolo train model=yolov8n-obb.pt data=dota8.yaml
# parent
# ├── ultralytics
# └── datasets
#     └── dota8 ← downloads here (1 MB)

# 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: dota8 # dataset root dir
train: images/train # train images (relative to 'path') 4 images
val: images/val # val images (relative to 'path') 4 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/assets/releases/download/v0.0.0/dota8.zip

Utilisation#

Pour entraîner un modèle YOLO26n-obb sur le dataset DOTA8 pendant 100 époques avec une taille d’image de 640, tu peux utiliser les extraits de code suivants. Pour consulter la liste complète des arguments disponibles, reporte-toi à la page Entraînement du modèle.

Exemple d’entraînement
from ultralytics import YOLO

# Load a model
model = YOLO("yolo26n-obb.pt")  # load a pretrained model (recommended for training)

# Train the model
results = model.train(data="dota8.yaml", epochs=100, imgsz=640)

Exemples d’images et d’annotations#

Voici quelques exemples d’images du dataset DOTA8, accompagnées de leurs annotations correspondantes :

DOTA8 oriented bounding box dataset training mosaic
  • Image en mosaïque : cette image présente un lot d’entraînement composé d’images du jeu de données assemblées en mosaïque. La mosaïque est une technique utilisée pendant l’entraînement qui combine plusieurs images en une seule afin d’augmenter la variété des objets et des scènes dans chaque lot d’entraînement. Cela contribue à améliorer la capacité du modèle à se généraliser à différentes tailles d’objets, proportions et contextes.

L’exemple illustre la variété et la complexité des images du dataset DOTA8, ainsi que les avantages de l’utilisation de la mosaïque pendant le processus d’entraînement.

Citations et remerciements#

Si tu utilises le dataset DOTA dans tes travaux de recherche ou de développement, merci de citer l’article suivant :

Citation
@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={2022},
  volume={44},
  number={11},
  pages={7778-7796},
  doi={10.1109/TPAMI.2021.3117983}
}

Nous adressons nos remerciements particuliers à l’équipe à l’origine des datasets DOTA pour les efforts remarquables consacrés à la constitution de ce dataset. Pour comprendre en détail le dataset et ses spécificités, consulte le site officiel de DOTA.

FAQ#

  • Le dataset DOTA8 est un petit dataset polyvalent de détection d’objets orientés, composé des 8 premières images du jeu de données fractionné DOTAv1, avec 4 images destinées à l’entraînement et 4 à la validation. Il est idéal pour tester et déboguer des modèles de détection d’objets comme Ultralytics YOLO26. Grâce à sa taille gérable et à sa diversité, il aide à identifier les erreurs du pipeline et à effectuer des contrôles de cohérence avant de déployer des datasets plus volumineux. Pour en savoir plus sur la détection d’objets, consulte Ultralytics YOLO26.

  • Pour entraîner un modèle YOLO26n-obb sur le dataset DOTA8 pendant 100 époques avec une taille d’image de 640, tu peux utiliser les extraits de code suivants. Pour consulter les options complètes des arguments, reporte-toi à la page Entraînement du modèle.

    Exemple d’entraînement
    from ultralytics import YOLO
    
    # Load a model
    model = YOLO("yolo26n-obb.pt")  # load a pretrained model (recommended for training)
    
    # Train the model
    results = model.train(data="dota8.yaml", epochs=100, imgsz=640)
  • Le dataset DOTA est connu pour son benchmark à grande échelle et les difficultés qu’il pose pour la détection d’objets dans les images aériennes. Le sous-ensemble DOTA8 est un dataset plus petit et gérable, idéal pour les premiers tests. Tu peux accéder au fichier dota8.yaml, qui contient les chemins, les classes et les détails de configuration, via ce lien GitHub.

  • La mosaïque combine plusieurs images en une seule pendant l’entraînement, ce qui augmente la variété des objets et des contextes au sein de chaque lot. Elle améliore la capacité d’un modèle à généraliser à différentes tailles d’objets, proportions et scènes. Cette technique peut être illustrée visuellement au moyen d’un lot d’entraînement composé d’images du dataset DOTA8 assemblées en mosaïque, ce qui contribue au développement de modèles robustes. Découvre-en davantage sur la mosaïque et les techniques d’entraînement sur notre page Entraînement.

  • Ultralytics YOLO26 fournit des capacités de détection d’objets en temps réel de pointe, notamment des BBox orientées (OBB), la segmentation d’instances et un pipeline d’entraînement très polyvalent. Il convient à de nombreuses applications et propose des modèles préentraînés pour un ajustement efficace. Découvre plus en détail ses avantages et son utilisation dans la documentation d’Ultralytics YOLO26.

Commentaires