Ultralytics YOLO27 : Rejoins la liste d’attente.
Commencer

Jeu de données DOTA128

Introduction#

DOTA128 d’Ultralytics est un petit jeu de données de détection d’objets orientée composé de 128 images de l’ensemble DOTAv1, utilisées à la fois pour l’entraînement et la validation. Ce jeu de données est idéal pour tester et déboguer des modèles de boîtes englobantes orientées (OBB) ou expérimenter de nouvelles approches de détection. Avec 128 images, il est facile à gérer tout en étant assez diversifié pour détecter les erreurs des pipelines d’entraînement et effectuer une vérification de cohérence avant l’entraînement sur des jeux de données plus volumineux.

Structure du jeu de données#

  • Images : 128 tuiles aériennes provenant de DOTAv1 (toutes dans le dossier train, utilisé à la fois pour train et val).
  • Classes : hérite des 15 catégories de DOTAv1, comme avion, navire et grand véhicule.
  • Annotations : boîtes englobantes orientées au format YOLO, enregistrées dans des fichiers .txt à côté de chaque image.
  • Téléchargement : 34 Mo, récupéré automatiquement depuis les ressources GitHub d'Ultralytics lors du premier entraînement.

Ce jeu de données est destiné à être utilisé avec Ultralytics Platform et YOLO26.

Fichier YAML du jeu de données#

Un fichier YAML sert à définir la configuration du jeu de données. Il contient des informations sur les chemins d'accès au jeu de données, les classes et d'autres éléments pertinents. Pour le jeu de données DOTA128, le fichier dota128.yaml est maintenu à l'adresse https://github.com/ultralytics/ultralytics/blob/main/ultralytics/cfg/datasets/dota128.yaml.

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

# DOTA128 dataset (128 images from the DOTAv1 split) by Ultralytics
# Documentation: https://docs.ultralytics.com/datasets/obb/dota128
# Example usage: yolo train model=yolo26n-obb.pt data=dota128.yaml
# parent
# ├── ultralytics
# └── datasets
#     └── dota128 ← downloads here (34 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: dota128 # dataset root dir
train: images/train # train images (relative to 'path') 128 images
val: images/train # val images (relative to 'path') 128 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/dota128.zip

Utilisation#

Pour entraîner un modèle YOLO26n-obb sur le jeu de données DOTA128 pendant 100 époques, avec une taille d’image de 640, tu peux utiliser les extraits de code suivants.

Exemple d’entraînement
from ultralytics import YOLO

# Charger un modèle
model = YOLO("yolo26n-obb.pt")  # charger un modèle préentraîné (recommandé pour l’entraînement)

# Entraîner le modèle
results = model.train(data="dota128.yaml", epochs=100, imgsz=640)

Exemples d’images et annotations#

Voici quelques exemples d'images du jeu de données DOTA128, accompagnées de leurs annotations correspondantes :

DOTA128 oriented bounding box dataset training mosaic
  • Image en mosaïque : cette image montre 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. Elle aide le modèle à mieux généraliser à différentes tailles d’objets, proportions et contextes.

L'exemple illustre la variété et la complexité des images du jeu de données DOTA128, ainsi que les avantages de la mosaïque pendant l'entraînement.

Citations et remerciements#

Si tu utilises le jeu de données DOTA dans tes travaux de recherche ou de développement, cite 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 remercions l’équipe à l’origine des jeux de données DOTA pour leur préparation. Pour consulter tous les détails du jeu de données, rends-toi sur le site officiel de DOTA.

FAQ#

  • Le jeu de données DOTA128 est un jeu de données de détection d’objets orientés composé de 128 images de l’ensemble DOTAv1, toutes stockées dans le dossier train. L’entraînement et la validation utilisent le même ensemble d’images, ce qui en fait une solution idéale pour tester et déboguer rapidement des modèles OBB comme Ultralytics YOLO26. Sa taille modeste et sa diversité permettent de détecter les erreurs des pipelines et d’effectuer des vérifications de cohérence avant l’entraînement sur des jeux de données plus volumineux.

  • Pour entraîner un modèle YOLO26n-obb sur le jeu de données DOTA128 pendant 100 époques, avec une taille d'image de 640, tu peux utiliser les extraits de code suivants. Pour consulter les options d'arguments détaillées, reporte-toi à la page Entraînement du modèle.

    Exemple d’entraînement
    from ultralytics import YOLO
    
    # Charger un modèle
    model = YOLO("yolo26n-obb.pt")  # charger un modèle préentraîné (recommandé pour l’entraînement)
    
    # Entraîner le modèle
    results = model.train(data="dota128.yaml", epochs=100, imgsz=640)
  • Le jeu de données DOTA est connu pour son benchmark à grande échelle et les défis qu’il pose pour la détection d’objets dans les images aériennes. Le sous-ensemble DOTA128 offre une plus grande diversité que DOTA8 tout en restant gérable pour les premiers tests. Le fichier de configuration dota128.yaml, qui contient les chemins, les classes et les détails de configuration, est maintenu dans le dépôt GitHub d’Ultralytics.

  • Avec ses 128 images, DOTA128 se situe entre DOTA8 (8 images) et le jeu de données DOTA-v1 complet (1 869 images annotées pour l'entraînement et la validation) en termes de taille :

    • DOTA8 : contient seulement 8 images (4 train, 4 val) — idéal pour les tests rapides et le débogage.
    • DOTA128 : contient 128 images (toutes dans le dossier train, utilisé à la fois pour train et val) — un bon équilibre entre taille et diversité.
    • DOTA-v1 complet : contient 1 869 images annotées pour l'entraînement et la validation — complet, mais gourmand en ressources.

    DOTA128 offre un bon compromis : plus de diversité que DOTA8, tout en étant beaucoup plus facile à gérer que le jeu de données DOTA complet pour l'expérimentation et le développement initial de modèles.

  • La mosaïque combine plusieurs images en une seule pendant l’entraînement, ce qui augmente la variété des objets et des contextes dans chaque lot. Elle améliore la capacité du modèle à généraliser à différentes tailles d’objets, proportions et scènes.

  • Ultralytics YOLO26 prend en charge la détection en temps réel de boîtes englobantes orientées (OBB), ainsi que d’autres tâches comme la segmentation d’instances, le tout au sein d’un seul pipeline d’entraînement. Ses modèles OBB préentraînés rendent le réglage fin sur des données aériennes efficace.

Commentaires

Pose une question, partage tes résultats ou aide quelqu’un d’autre.