Ultralytics YOLO27:
Get Started

Dataset COCO8-Pose#

Introduzione#

Il dataset COCO8-Pose di Ultralytics è un dataset piccolo ma versatile per la stima della posa, composto dalle prime 8 immagini dello split COCO train 2017 (4 per il training e 4 per la validazione), e usa uno schema a 17 keypoint per la singola classe "person". Questo dataset è ideale per testare ed eseguire il debug dei modelli di stima della posa o sperimentare nuovi approcci di rilevamento dei keypoint. Con 8 immagini è abbastanza piccolo da essere gestibile facilmente, ma sufficientemente vario per verificare la presenza di errori nelle pipeline di training e fungere da controllo preliminare prima di addestrare sul dataset COCO-Pose completo.

Struttura del dataset#

  • Immagini totali: 8 (4 train / 4 val).
  • Classi: 1 (person) con 17 tipi di keypoint per annotazione.
  • Dimensione del download: ~1 MB.
  • Struttura di directory consigliata: datasets/coco8-pose/images/{train,val} e datasets/coco8-pose/labels/{train,val}, con i keypoint in formato YOLO salvati come file .txt.

Esplora COCO8-Pose sulla piattaforma Ultralytics per sfogliare tutte le immagini con i relativi scheletri di keypoint, visualizzare le distribuzioni dei keypoint e delle classi nella scheda Charts e clonare il dataset per addestrare il tuo modello nel cloud.

YAML del dataset#

Un file YAML definisce la configurazione del dataset. Contiene informazioni sui percorsi, le classi e altri dati pertinenti del dataset. Per il dataset COCO8-Pose, il file coco8-pose.yaml è mantenuto in https://github.com/ultralytics/ultralytics/blob/main/ultralytics/cfg/datasets/coco8-pose.yaml.

ultralytics/cfg/datasets/coco8-pose.yaml
# 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

Utilizzo#

Per addestrare un modello YOLO26n-pose sul dataset COCO8-Pose per 100 epoche con una dimensione delle immagini di 640, puoi usare i seguenti snippet di codice. Per l'elenco completo degli argomenti disponibili, consulta la pagina Training del modello.

Esempio di addestramento
from ultralytics import YOLO

# Carica un modello
model = YOLO("yolo26n-pose.pt")  # carica un modello preaddestrato (consigliato per l'addestramento)

# Addestra il modello
results = model.train(data="coco8-pose.yaml", epochs=100, imgsz=640)

Immagini di esempio e annotazioni#

Ecco alcuni esempi di immagini del dataset COCO8-Pose, insieme alle relative annotazioni:

COCO8-pose keypoint estimation dataset mosaic
  • Immagine a mosaico: questa immagine mostra un batch di addestramento composto da immagini del dataset unite in un mosaico. La creazione di mosaici è una tecnica utilizzata durante l'addestramento che combina più immagini in una sola per aumentare la varietà di oggetti e scene in ogni batch di addestramento. Questo aiuta a migliorare la capacità del modello di generalizzare a oggetti di dimensioni e proporzioni diverse e a contesti differenti.

Citazioni e ringraziamenti#

Se utilizzi il dataset COCO nelle tue attività di ricerca o sviluppo, cita il seguente articolo:

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

Desideriamo ringraziare il Consorzio COCO per aver creato e mantenuto questa preziosa risorsa per la comunità della visione artificiale. Per maggiori informazioni sul dataset COCO e sui suoi creatori, visita il sito web del dataset COCO.

Domande frequenti#

  • Il dataset COCO8-Pose è un dataset piccolo e versatile per la stima della posa, che include le prime 8 immagini dello split COCO train 2017: 4 immagini per il training e 4 per la validazione. È progettato per testare ed eseguire il debug dei modelli di stima della posa e per sperimentare nuovi approcci di rilevamento dei keypoint. Questo dataset è ideale per esperimenti rapidi con Ultralytics YOLO26. Per ulteriori dettagli sulla configurazione del dataset, consulta il file YAML del dataset.

  • Carica yolo26n-pose.pt e chiama model.train(data="coco8-pose.yaml", epochs=100, imgsz=640) — consulta l'esempio Train Example qui sopra per gli snippet completi in Python e CLI e la pagina Training del modello per l'elenco completo degli argomenti.

  • Con 8 immagini totali (4 train / 4 val), 1 classe, uno schema a 17 keypoint e un download di circa ~1 MB, COCO8-Pose è abbastanza piccolo da poter essere gestito in pochi secondi, ma sufficientemente vario da consentire un controllo preliminare degli errori nella pipeline di training della posa prima di passare al dataset COCO-Pose completo. Per ulteriori informazioni sulle caratteristiche e sull'uso, consulta la sezione Introduzione al dataset.

  • Il mosaico combina più immagini in una, aumentando la varietà degli oggetti e delle scene in ogni batch di training; questo aiuta il modello a generalizzare tra dimensioni, proporzioni e contesti diversi degli oggetti. Per un esempio, consulta la sezione Immagini di esempio e annotazioni.

  • Il file YAML del dataset COCO8-Pose si trova in https://github.com/ultralytics/ultralytics/blob/main/ultralytics/cfg/datasets/coco8-pose.yaml. Questo file definisce la configurazione del dataset, inclusi i percorsi, le classi e altre informazioni pertinenti. Usa questo file con gli script di training YOLO26, come indicato nella sezione Train Example.

    Per ulteriori informazioni sui modelli basati sui keypoint, consulta la documentazione dell'attività Stima della posa.

Commenti