Ultralytics YOLO27:
Get Started

Dog-Pose-Datensatz#

Einführung#

Der Ultralytics-Datensatz Dog-Pose ist ein hochwertiger, umfangreicher Datensatz, der speziell für die Schätzung von Schlüsselpunkten bei Hunden zusammengestellt wurde. Er umfasst 6.773 Trainingsbilder und 1.703 Validierungsbilder.



Ansehen: So trainierst du ein Ultralytics-YOLO-Modell mit dem Stanford-Datensatz zur Posenschätzung von Hunden | Schritt-für-Schritt-Anleitung

Jedes annotierte Bild enthält 24 Schlüsselpunkte mit 3 Dimensionen pro Schlüsselpunkt (x, y, Sichtbarkeit). Damit ist der Datensatz eine wertvolle Ressource für fortgeschrittene Forschung und Entwicklung im Bereich Computer Vision.

Ultralytics Dog-Pose display image

Für eine bestimmte Rasse oder eine ganz andere Tierart ermöglicht die Ultralytics Platform, ein eigenes Schlüsselpunktemodell mit deinen Daten hochzuladen, zu annotieren und zu trainieren, ohne dass du die Infrastruktur verwalten musst.

Datensatzstruktur#

  • Bilder insgesamt: 8.476 (6.773 train / 1.703 val) mit passenden Beschriftungsdateien im YOLO-Format.

  • Schlüsselpunkte: 24 pro Hund mit Tripeln aus (x, y, visibility).

  • Downloadgröße: ~337 MB.

  • Verzeichnisstruktur:

    datasets/dog-pose/
    ├── images/{train,val}
    └── labels/{train,val}

YAML-Datei des Datensatzes#

Eine YAML-Datei dient zum Festlegen der Datensatzkonfiguration. Sie enthält Pfade, Angaben zu den Schlüsselpunkten und weitere relevante Informationen. Für den Dog-Pose-Datensatz ist die Datei dog-pose.yaml unter https://github.com/ultralytics/ultralytics/blob/main/ultralytics/cfg/datasets/dog-pose.yaml verfügbar.

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

# Dogs dataset http://vision.stanford.edu/aditya86/ImageNetDogs/ by Stanford
# Documentation: https://docs.ultralytics.com/datasets/pose/dog-pose
# Example usage: yolo train data=dog-pose.yaml
# parent
# ├── ultralytics
# └── datasets
#     └── dog-pose ← downloads here (337 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: dog-pose # dataset root dir
train: images/train # train images (relative to 'path') 6773 images
val: images/val # val images (relative to 'path') 1703 images

# Keypoints
kpt_shape: [24, 3] # number of keypoints, number of dims (2 for x,y or 3 for x,y,visible)

# Classes
names:
  0: dog

# Keypoint names per class
kpt_names:
  0:
    - front_left_paw
    - front_left_knee
    - front_left_elbow
    - rear_left_paw
    - rear_left_knee
    - rear_left_elbow
    - front_right_paw
    - front_right_knee
    - front_right_elbow
    - rear_right_paw
    - rear_right_knee
    - rear_right_elbow
    - tail_start
    - tail_end
    - left_ear_base
    - right_ear_base
    - nose
    - chin
    - left_ear_tip
    - right_ear_tip
    - left_eye
    - right_eye
    - withers
    - throat

# Download script/URL (optional)
download: https://github.com/ultralytics/assets/releases/download/v0.0.0/dog-pose.zip

Verwendung#

Mit den folgenden Codeausschnitten kannst du ein YOLO26n-pose-Modell 100 Epochen lang mit einer Bildgröße von 640 auf dem Dog-Pose-Datensatz trainieren. Eine umfassende Liste der verfügbaren Argumente findest du auf der Seite Training des Modells.

Trainingsbeispiel
from ultralytics import YOLO

# Ein Modell laden
model = YOLO("yolo26n-pose.pt")  # ein vortrainiertes Modell laden (für das Training empfohlen)

# Das Modell trainieren
results = model.train(data="dog-pose.yaml", epochs=100, imgsz=640)

Beispielbilder und Annotationen#

Hier sind einige Beispielbilder aus dem Dog-Pose-Datensatz mit den zugehörigen Annotationen:

Dog pose estimation dataset mosaic training batch
  • Mosaikbild: Dieses Bild zeigt einen Trainingsbatch aus mosaikartig kombinierten Datensatzbildern. Beim Mosaikverfahren werden während des Trainings mehrere Bilder zu einem einzigen Bild kombiniert, um die Vielfalt der Objekte und Szenen in jedem Trainingsbatch 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 Dog-Pose-Datensatz sowie die Vorteile des Mosaikverfahrens während des Trainings.

Zitate und Danksagungen#

Wenn du den Dog-Pose-Datensatz in deiner Forschung oder Entwicklungsarbeit verwendest, zitiere bitte die folgende Arbeit:

Zitat
@inproceedings{khosla2011fgvc,
  title={Novel dataset for Fine-Grained Image Categorization},
  author={Aditya Khosla and Nityananda Jayadevaprakash and Bangpeng Yao and Li Fei-Fei},
  booktitle={First Workshop on Fine-Grained Visual Categorization (FGVC), IEEE Conference on Computer Vision and Pattern Recognition (CVPR)},
  year={2011}
}
@inproceedings{deng2009imagenet,
  title={ImageNet: A Large-Scale Hierarchical Image Database},
  author={Jia Deng and Wei Dong and Richard Socher and Li-Jia Li and Kai Li and Li Fei-Fei},
  booktitle={IEEE Computer Vision and Pattern Recognition (CVPR)},
  year={2009}
}

Wir möchten dem Stanford-Team dafür danken, dass es diese wertvolle Ressource für die Computer-Vision-Community geschaffen hat und pflegt. Weitere Informationen zum Dog-Pose-Datensatz und seinen Urhebern findest du auf der Website des Stanford Dogs Dataset.

Häufig gestellte Fragen#

  • Der Dog-Pose-Datensatz umfasst 6.773 Trainingsbilder und 1.703 Validierungsbilder, die für die Pose-Schätzung bei Hunden mit 24 Schlüsselpunkten annotiert wurden. Er wurde zum Trainieren und Validieren von Modellen mit Ultralytics YOLO26 entwickelt und unterstützt Anwendungen wie die Analyse des Tierverhaltens, die Überwachung von Haustieren und veterinärmedizinische Studien. Dank der umfassenden Annotationen eignet sich der Datensatz ideal zur Entwicklung präziser Modelle zur Pose-Schätzung bei Hunden.

  • Lade yolo26n-pose.pt und rufe model.train(data="dog-pose.yaml", epochs=100, imgsz=640) auf – im obigen Trainingsbeispiel findest du die vollständigen Python- und CLI-Codeausschnitte. Eine umfassende Liste der Argumente enthält die Seite Training des Modells.

  • Mit insgesamt 8.476 Bildern (6.773 train / 1.703 val), die ein breites Spektrum an Hunderassen und Posen abdecken, und 24 Schlüsselpunkten in 3 Dimensionen (x, y, Sichtbarkeit) pro Annotation bietet der Dog-Pose-Datensatz die nötige Abdeckung realer Situationen für Anwendungen wie die Überwachung von Haustieren und die Verhaltensanalyse. Weitere Informationen zu den Merkmalen und zur Verwendung findest du im Abschnitt Einführung in den Datensatz.

  • Beim Mosaikverfahren werden mehrere Dog-Pose-Bilder zu einem einzigen Trainingsbild zusammengefügt. Dadurch sieht das Modell bei jedem Schritt eine größere Vielfalt an Hundeposen, -größen und Hintergründen. Das verbessert die Generalisierung auf neue Kontexte und Maßstäbe und verringert zugleich Overfitting. Beispielbilder findest du im Abschnitt Beispielbilder und Annotationen.

  • Die YAML-Datei des Dog-Pose-Datensatzes findest du unter https://github.com/ultralytics/ultralytics/blob/main/ultralytics/cfg/datasets/dog-pose.yaml. Diese Datei legt die Datensatzkonfiguration fest, einschließlich Pfaden, Klassen, Angaben zu den Schlüsselpunkten und weiterer relevanter Informationen. Die YAML-Datei definiert 24 Schlüsselpunkte mit jeweils 3 Dimensionen und eignet sich damit für detaillierte Aufgaben zur Pose-Schätzung.

    Um die Datei mit YOLO26-Trainingsskripten zu verwenden, gib sie einfach wie im Abschnitt Verwendung gezeigt in deinem Trainingsbefehl an. Bei der ersten Verwendung wird der Datensatz automatisch heruntergeladen, sodass die Einrichtung unkompliziert ist.

    Weitere Informationen zu Schlüsselpunktemodellen findest du in der Dokumentation zur Aufgabe Pose-Schätzung.

Kommentare