Zum Inhalt springen

COCO8-Pose-Datensatz

Einführung

Ultralytics COCO8-Pose ist ein kleiner, aber vielseitiger Posenerkennungsdatensatz, der aus den ersten 8 Bildern des COCO train 2017 Sets besteht, 4 für das Training und 4 für die Validierung. Dieser Datensatz ist ideal zum Testen und Debuggen von Objekterkennungsmodellen oder zum Experimentieren mit neuen Erkennungsansätzen. Mit 8 Bildern ist er klein genug, um leicht verwaltet werden zu können, und dennoch vielfältig genug, um die Trainingspipelines auf Fehler zu testen und vor dem Training größerer Datensätze zu überprüfen.

Dieser Datensatz ist für die Verwendung mit Ultralytics HUB und YOLOv8.

Datensatz YAML

Eine YAML-Datei (Yet Another Markup Language) wird verwendet, um die Konfiguration des Datensatzes zu definieren. Sie enthält Informationen über die Pfade des Datensatzes, Klassen und andere relevante Informationen. Im Fall des COCO8-Pose-Datensatzes ist die coco8-pose.yaml Datei wird verwaltet unter https://github.com/ultralytics/ultralytics/blob/main/ultralytics/cfg/datasets/coco8-pose.yaml.

ultralytics/cfg/datasets/coco8-pose.yaml

# Ultralytics YOLO 🚀, AGPL-3.0 license
# COCO8-pose dataset (first 8 images from COCO train2017) by Ultralytics
# Documentation: https://docs.ultralytics.com/datasets/pose/coco8-pose/
# Example usage: yolo train data=coco8-pose.yaml
# parent
# ├── ultralytics
# └── datasets
#     └── coco8-pose  ← 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: ../datasets/coco8-pose # dataset root dir
train: images/train # train images (relative to 'path') 4 images
val: images/val # val images (relative to 'path') 4 images
test: # test images (optional)

# Keypoints
kpt_shape: [17, 3] # number of keypoints, number of dims (2 for x,y or 3 for x,y,visible)
flip_idx: [0, 2, 1, 4, 3, 6, 5, 8, 7, 10, 9, 12, 11, 14, 13, 16, 15]

# Classes
names:
  0: person

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

Verwendung

Um ein YOLOv8n-pose-Modell auf dem COCO8-Pose-Datensatz für 100 Epochen mit einer Bildgröße von 640 zu trainieren, kannst du die folgenden Codeschnipsel verwenden. Eine umfassende Liste der verfügbaren Argumente findest du auf der Seite Modelltraining.

Beispiel für einen Zug

from ultralytics import YOLO

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

# Train the model
results = model.train(data="coco8-pose.yaml", epochs=100, imgsz=640)
# Start training from a pretrained *.pt model
yolo detect train data=coco8-pose.yaml model=yolov8n-pose.pt epochs=100 imgsz=640

Beispielbilder und Anmerkungen

Hier sind einige Beispiele von Bildern aus dem COCO8-Pose-Datensatz mit den entsprechenden Anmerkungen:

Datensatz Beispielbild

  • Mosaikbild: Dieses Bild zeigt einen Trainingsstapel, der aus Mosaikbildern des Datensatzes besteht. Beim Mosaikieren werden mehrere Bilder zu einem einzigen Bild zusammengefügt, um die Vielfalt der Objekte und Szenen in jedem Trainingsstapel zu erhöhen. Dadurch wird die Fähigkeit des Modells verbessert, sich auf verschiedene Objektgrößen, Seitenverhältnisse und Kontexte einzustellen.

Das Beispiel zeigt die Vielfalt und Komplexität der Bilder im COCO8-Pose-Datensatz und die Vorteile der Mosaikbildung im Trainingsprozess.

Zitate und Danksagungen

Wenn du den COCO-Datensatz in deiner Forschungs- oder Entwicklungsarbeit verwendest, zitiere bitte das folgende Papier:

@misc{lin2015microsoft,
      title={Microsoft COCO: Common Objects in Context},
      author={Tsung-Yi Lin and Michael Maire and Serge Belongie and Lubomir Bourdev and Ross Girshick and James Hays and Pietro Perona and Deva Ramanan and C. Lawrence Zitnick and Piotr Dollár},
      year={2015},
      eprint={1405.0312},
      archivePrefix={arXiv},
      primaryClass={cs.CV}
}

Wir möchten dem COCO-Konsortium für die Erstellung und Pflege dieser wertvollen Ressource für die Computer Vision Community danken. Weitere Informationen über den COCO-Datensatz und seine Schöpfer findest du auf der Website des COCO-Datensatzes.

FAQ

Was ist der COCO8-Pose-Datensatz und wie wird er mit Ultralytics YOLOv8 verwendet?

Der COCO8-Pose-Datensatz ist ein kleiner, vielseitiger Posenerkennungsdatensatz, der die ersten 8 Bilder aus dem COCO train 2017 Set enthält, wobei 4 Bilder zum Trainieren und 4 zur Validierung dienen. Er eignet sich zum Testen und Debuggen von Objekterkennungsmodellen und zum Experimentieren mit neuen Erkennungsansätzen. Dieser Datensatz ist ideal für schnelle Experimente mit Ultralytics YOLOv8. Weitere Details zur Konfiguration des Datensatzes findest du in der YAML-Datei des Datensatzes hier.

Wie trainiere ich ein YOLOv8 Modell mit dem COCO8-Pose-Datensatz in Ultralytics?

Um ein YOLOv8n-pose-Modell auf dem COCO8-Pose-Datensatz für 100 Epochen mit einer Bildgröße von 640 zu trainieren, befolge diese Beispiele:

Beispiel für einen Zug

from ultralytics import YOLO

# Load a model
model = YOLO("yolov8n-pose.pt")

# Train the model
results = model.train(data="coco8-pose.yaml", epochs=100, imgsz=640)
yolo detect train data=coco8-pose.yaml model=yolov8n.pt epochs=100 imgsz=640

Eine umfassende Liste der Trainingsargumente findest du auf der Seite Modelltraining.

Was sind die Vorteile der Verwendung des COCO8-Pose-Datensatzes?

Der COCO8-Pose-Datensatz bietet mehrere Vorteile:

  • Kompakte Größe: Mit nur 8 Bildern ist es leicht zu handhaben und perfekt für schnelle Experimente.
  • Vielfältige Daten: Trotz seiner geringen Größe enthält es eine Vielzahl von Szenen, die für gründliche Pipeline-Tests nützlich sind.
  • Fehlerbeseitigung: Ideal zum Erkennen von Trainingsfehlern und zur Durchführung von Plausibilitätsprüfungen vor der Skalierung auf größere Datensätze.

Weitere Informationen zu den Funktionen und der Verwendung findest du im Abschnitt Einführung in das Dataset.

Wie profitiert das Mosaikieren vom YOLOv8 Trainingsprozess mit dem COCO8-Pose-Datensatz?

Beim Mosaicing, das in den Beispielbildern des COCO8-Positionsdatensatzes demonstriert wird, werden mehrere Bilder zu einem zusammengefasst, um die Vielfalt der Objekte und Szenen in jedem Trainingsstapel zu erhöhen. Diese Technik trägt dazu bei, die Fähigkeit des Modells zu verbessern, über verschiedene Objektgrößen, Seitenverhältnisse und Kontexte hinweg zu generalisieren, was letztendlich die Leistung des Modells erhöht. Im Abschnitt Beispielbilder und Anmerkungen findest du Beispielbilder.

Wo finde ich die YAML-Datei für den COCO8-Pose-Datensatz und wie kann ich sie verwenden?

Die YAML-Datei für den COCO8-Pose-Datensatz findest du hier. Diese Datei definiert die Konfiguration des Datensatzes, einschließlich der Pfade, Klassen und anderer relevanter Informationen. Verwende diese Datei mit den YOLOv8 Trainingsskripten, wie im Abschnitt Train Example beschrieben.

Weitere FAQs und eine ausführliche Dokumentation findest du in der Ultralytics Dokumentation.



Erstellt am 2023-11-12, Aktualisiert am 2024-07-17
Autoren: hnliu_2@stu.xidian.edu.cn (1), glenn-jocher (7), Laughing-q (1)

Kommentare