Ultralytics YOLO27:

DOTA8-Datensatz#

Einleitung#

Ultralytics DOTA8 ist ein kleiner, aber vielseitiger Datensatz zur Erkennung orientierter Objekte, der aus den ersten 8 Bildern des aufgeteilten DOTAv1-Datensatzes besteht: 4 für das Training und 4 für die Validierung. Dieser Datensatz eignet sich ideal zum Testen und Debuggen von Objekterkennungsmodellen oder zum Experimentieren mit neuen Erkennungsansätzen. Mit 8 Bildern ist er klein genug für eine einfache Verwaltung und zugleich vielfältig genug, um Trainingspipelines auf Fehler zu prüfen und vor dem Training größerer Datensätze als Plausibilitätsprüfung zu dienen.

Datensatzstruktur#

  • Bilder: 8 Luftbildkacheln (4 für das Training, 4 für die Validierung) aus DOTAv1.

  • Klassen: Übernimmt die 15 Kategorien von DOTAv1, darunter Flugzeuge, Schiffe und große Fahrzeuge.

  • Beschriftungen: Orientierte Begrenzungsboxen im YOLO-Format, die als .txt-Dateien neben jedem Bild gespeichert werden.

  • Download: 1 MB, der beim ersten Training automatisch aus den GitHub-Ressourcen von Ultralytics abgerufen wird.

  • Empfohlene Struktur:

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

Erkunde DOTA8 auf der Ultralytics Platform, um die Luftbildkacheln mit ihren Überlagerungen der orientierten Begrenzungsboxen zu durchsuchen, die Klassenverteilung und Beschriftungs-Heatmaps im Tab Charts anzuzeigen und den Datensatz zu klonen, um dein eigenes Modell in der Cloud zu trainieren.

Dataset-YAML#

Eine YAML-Datei definiert die Konfiguration des Datensatzes. Sie enthält Informationen zu den Pfaden, Klassen und weiteren relevanten Angaben des Datensatzes. Beim DOTA8-Datensatz wird die Datei dota8.yaml unter https://github.com/ultralytics/ultralytics/blob/main/ultralytics/cfg/datasets/dota8.yaml verwaltet.

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

Verwendung#

Um ein YOLO26n-obb-Modell 100 Epochen lang mit einer Bildgröße von 640 auf dem DOTA8-Datensatz zu trainieren, kannst du die folgenden Codeausschnitte verwenden. Eine vollständige Liste der verfügbaren Argumente findest du auf der Seite zum Training des Modells.

Trainingsbeispiel
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)

Beispielbilder und Annotationen#

Hier findest du einige Beispiele für Bilder aus dem DOTA8-Datensatz zusammen mit den zugehörigen Beschriftungen:

DOTA8 oriented bounding box dataset training mosaic
  • Mosaikbild: Dieses Bild zeigt einen Trainings-Batch, der aus zu einem Mosaik zusammengesetzten Datensatzbildern besteht. Das Mosaikverfahren wird während des Trainings eingesetzt und kombiniert mehrere Bilder zu einem einzigen Bild, um die Vielfalt der Objekte und Szenen innerhalb jedes Trainings-Batches zu erhöhen. Dadurch kann das Modell besser auf unterschiedliche Objektgrößen, Seitenverhältnisse und Kontexte generalisieren.

Das Beispiel veranschaulicht die Vielfalt und Komplexität der Bilder im DOTA8-Datensatz sowie die Vorteile der Verwendung von Mosaik-Augmentierung während des Trainings.

Zitate und Danksagungen#

Wenn du den DOTA-Datensatz für deine Forschungs- oder Entwicklungsarbeit verwendest, zitiere bitte die folgende Publikation:

Zitat
@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}
}

Unser besonderer Dank gilt dem Team hinter den DOTA-Datensätzen für seine bemerkenswerte Arbeit bei der Zusammenstellung dieses Datensatzes. Eine ausführliche Beschreibung des Datensatzes und seiner Besonderheiten findest du auf der offiziellen DOTA-Website.

FAQ#

  • Der DOTA8-Datensatz ist ein kleiner, vielseitiger Datensatz zur Erkennung orientierter Objekte, der aus den ersten 8 Bildern des aufgeteilten DOTAv1-Datensatzes besteht, wobei 4 Bilder für das Training und 4 für die Validierung vorgesehen sind. Er eignet sich ideal zum Testen und Debuggen von Objekterkennungsmodellen wie Ultralytics YOLO26. Dank seiner überschaubaren Größe und Vielfalt hilft er dabei, Pipeline-Fehler zu erkennen und vor dem Einsatz größerer Datensätze Plausibilitätsprüfungen durchzuführen. Erfahre mehr über die Objekterkennung mit Ultralytics YOLO26.

  • Um ein YOLO26n-obb-Modell 100 Epochen lang mit einer Bildgröße von 640 auf dem DOTA8-Datensatz zu trainieren, kannst du die folgenden Codeausschnitte verwenden. Eine umfassende Übersicht der Argumentoptionen findest du auf der Seite zum Training des Modells.

    Trainingsbeispiel
    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)
  • Der DOTA-Datensatz ist für seinen groß angelegten Benchmark und die Herausforderungen bekannt, die er für die Objekterkennung in Luftbildern darstellt. Die DOTA8-Teilmenge ist ein kleinerer, überschaubarer Datensatz, der sich ideal für erste Tests eignet. Du kannst die Datei dota8.yaml mit Pfaden, Klassen und Konfigurationsdetails über diesen GitHub-Link aufrufen.

  • Bei der Mosaik-Augmentierung werden während des Trainings mehrere Bilder zu einem Bild kombiniert, wodurch die Vielfalt der Objekte und Kontexte innerhalb jedes Stapels zunimmt. Dies verbessert die Fähigkeit eines Modells, auf unterschiedliche Objektgrößen, Seitenverhältnisse und Szenen zu verallgemeinern. Diese Technik lässt sich anhand eines Trainingsstapels aus mosaikartig kombinierten Bildern des DOTA8-Datensatzes anschaulich demonstrieren und unterstützt so die Entwicklung robuster Modelle. Erfahre mehr über Mosaik-Augmentierung und Trainingstechniken auf unserer Seite zum Training.

  • Ultralytics YOLO26 bietet hochmoderne Echtzeitfunktionen zur Objekterkennung, darunter orientierte Begrenzungsboxen (OBB), Instanzsegmentierung und eine äußerst vielseitige Trainingspipeline. Es eignet sich für verschiedene Anwendungen und bietet vortrainierte Modelle für eine effiziente Feinabstimmung. Erfahre mehr über die Vorteile und die Verwendung in der Dokumentation zu Ultralytics YOLO26.

Kommentare