Zum Inhalt springen

COCO8

Einführung

Ultralytics COCO8-Pose ist ein kleiner, aber vielseitiger Datensatz zur Posenerkennung, 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 object detection-Modellen oder zum Experimentieren mit neuen Detektionsansätzen. Mit 8 Bildern ist er klein genug, um leicht verwaltet werden zu können, aber dennoch vielfältig genug, um Trainingspipelines auf Fehler zu testen und als Plausibilitätsprüfung vor dem Training mit größeren Datensätzen zu dienen.

Dataset-Struktur

  • Bilder insgesamt: 8 (4 train / 4 val).
  • Klassen: 1 (Person) mit 17 Keypoints pro Annotation.
  • Empfohlenes Verzeichnislayout: datasets/coco8-pose/images/{train,val} und datasets/coco8-pose/labels/{train,val} mit Keypoints YOLO, die als .txt Dateien.

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

Datensatz-YAML

Eine YAML-Datei (Yet Another Markup Language) wird zur Definition der Datensatzkonfiguration verwendet. Sie enthält Informationen über die Pfade des Datensatzes, Klassen und andere relevante Informationen. Im Falle des COCO8 wird die coco8-pose.yaml Datei wird verwaltet unter https://github.com/ultralytics/ultralytics/blob/main/ultralytics/cfg/datasets/coco8-pose.yaml.

ultralyticsyaml

# Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/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: 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

# Keypoint names per class
kpt_names:
  0:
    - nose
    - left_eye
    - right_eye
    - left_ear
    - right_ear
    - left_shoulder
    - right_shoulder
    - left_elbow
    - right_elbow
    - left_wrist
    - right_wrist
    - left_hip
    - right_hip
    - left_knee
    - right_knee
    - left_ankle
    - right_ankle

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

Nutzung

Um ein YOLO11n-Positionsmodell auf dem COCO8 für 100 Epochen mit einer Bildgröße von 640 zu trainieren, können Sie die folgenden Codeschnipsel verwenden. Eine umfassende Liste der verfügbaren Argumente finden Sie auf der Seite Modelltraining.

Trainingsbeispiel

from ultralytics import YOLO

# Load a model
model = YOLO("yolo11n-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 pose train data=coco8-pose.yaml model=yolo11n-pose.pt epochs=100 imgsz=640

sample_images und Anmerkungen

Hier sind einige Beispiele von Bildern aus dem COCO8, zusammen mit den entsprechenden Kommentaren:

Beispielbild des Datensatzes

  • Mosaikbild: Dieses Bild zeigt einen Trainings-Batch, der aus Mosaik-Datensatzbildern besteht. Mosaicing ist eine Technik, die während des Trainings verwendet wird und mehrere Bilder zu einem einzigen Bild kombiniert, um die Vielfalt der Objekte und Szenen innerhalb jedes Trainings-Batch zu erhöhen. Dies trägt dazu bei, die Fähigkeit des Modells zu verbessern, auf verschiedene Objektgrößen, Seitenverhältnisse und Kontexte zu generalisieren.

Das Beispiel verdeutlicht die Vielfalt und Komplexität der Bilder im COCO8 und die Vorteile der Mosaikbildung während des Trainingsprozesses.

Zitate und Danksagungen

Wenn Sie den COCO in Ihrer Forschungs- oder Entwicklungsarbeit verwenden, zitieren Sie 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 für die Erstellung und Pflege dieser wertvollen Ressource für die Computer Vision Community danken. Weitere Informationen über den COCO und seine Ersteller finden Sie auf der Website desCOCO .

FAQ

Was ist der COCO8, und wie wird er mit Ultralytics YOLO11 verwendet?

Der COCO8 ist ein kleiner, vielseitiger Posenerkennungsdatensatz, der die ersten 8 Bilder des COCO train 2017-Satzes enthält, mit 4 Bildern zum Trainieren und 4 zur Validierung. Er wurde für das Testen und Debuggen von Objekterkennungsmodellen und das Experimentieren mit neuen Erkennungsansätzen entwickelt. Dieser Datensatz ist ideal für schnelle Experimente mit Ultralytics YOLO11. Weitere Einzelheiten zur Konfiguration des Datensatzes finden Sie in der YAML-Datei des Datensatzes.

Wie trainiere ich ein YOLO11 unter Verwendung des COCO8 in Ultralytics?

Um ein YOLO11n-Positionsmodell auf dem COCO8 für 100 Epochen mit einer Bildgröße von 640 zu trainieren, folgen Sie diesen Beispielen:

Trainingsbeispiel

from ultralytics import YOLO

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

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

Eine umfassende Liste der Trainingsargumente finden Sie auf der Seite Training des Modells.

Was sind die Vorteile der Verwendung des COCO8?

Der COCO8 bietet mehrere Vorteile:

  • Kompakte Größe: Mit nur 8 Bildern ist es einfach zu verwalten und perfekt für schnelle Experimente.
  • Vielfältige Daten: Trotz seiner geringen Größe umfasst es eine Vielzahl von Szenen, die für gründliche Pipeline-Tests nützlich sind.
  • Fehlerbehebung: Ideal zur Identifizierung von Trainingsfehlern und zur Durchführung von Plausibilitätsprüfungen, bevor auf größere Datensätze skaliert wird.

Weitere Informationen über seine Funktionen und Verwendung finden Sie im Abschnitt Dataset Introduction.

Welchen Nutzen hat die Mosaikbildung für den YOLO11 mit dem COCO8?

Beim Mosaicing, das in den Beispielbildern des COCO8 demonstriert wird, werden mehrere Bilder zu einem einzigen kombiniert, wodurch die Vielfalt der Objekte und Szenen in jedem Trainingsstapel erhöht wird. Diese Technik trägt dazu bei, die Fähigkeit des Modells zur Verallgemeinerung über verschiedene Objektgrößen, Seitenverhältnisse und Kontexte hinweg zu verbessern, was letztendlich die Leistung des Modells steigert. Siehe den Abschnitt Beispielbilder und Anmerkungen für Beispielbilder.

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

Die YAML-Datei des COCO8 finden Sie unter yaml Diese Datei definiert die Konfiguration des Datensatzes, einschließlich Pfaden, Klassen und anderen relevanten Informationen. Verwenden Sie diese Datei mit den YOLO11 , wie im Abschnitt Train Example erwähnt.

Weitere FAQs und detaillierte Dokumentationen finden Sie in der Ultralytics-Dokumentation.



📅 Vor 2 Jahren erstellt ✏️ Vor 25 Tagen aktualisiert
glenn-jocherUltralyticsAssistantjk4eMatthewNoyceRizwanMunawarhnliu_2@stu.xidian.edu.cn

Kommentare