Dataset COCO8-Pose

Introduzione

Ultralytics COCO8-Pose è un dataset di rilevamento pose piccolo ma versatile, composto dalle prime 8 immagini del set COCO train 2017, 4 per l'addestramento e 4 per la validazione. Questo dataset è ideale per testare e sottoporre a debug modelli di object detection o per sperimentare nuovi approcci di rilevamento. Con 8 immagini, è abbastanza piccolo da essere facilmente gestibile, ma abbastanza diversificato da testare le pipeline di addestramento alla ricerca di errori e fungere da controllo di integrità prima di addestrare set di dati più grandi.

Struttura del dataset

  • Immagini totali: 8 (4 train / 4 val).
  • Classi: 1 (persona) con 17 keypoint per annotazione.
  • Layout di directory consigliato: datasets/coco8-pose/images/{train,val} e datasets/coco8-pose/labels/{train,val} con keypoint in formato YOLO salvati come file .txt.

Questo dataset è inteso per l'uso con Ultralytics Platform e YOLO26.

YAML del dataset

Un file YAML (Yet Another Markup Language) viene utilizzato per definire la configurazione del dataset. Contiene informazioni sui percorsi del dataset, le classi e altre informazioni pertinenti. Nel caso del dataset COCO8-Pose, il file coco8-pose.yaml è mantenuto su 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 epoch con una dimensione dell'immagine di 640, puoi utilizzare i seguenti frammenti di codice. Per un elenco completo degli argomenti disponibili, fai riferimento alla pagina Training del modello.

Esempio di training
from ultralytics import YOLO

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

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

Immagini campione e annotazioni

Ecco alcuni esempi di immagini dal 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 a mosaico. Il mosaico è una tecnica utilizzata durante l'addestramento che combina più immagini in un'unica immagine per aumentare la varietà di oggetti e scene all'interno di ogni batch di addestramento. Ciò aiuta a migliorare la capacità del modello di generalizzare a diverse dimensioni, proporzioni e contesti degli oggetti.

L'esempio mostra la varietà e la complessità delle immagini nel dataset COCO8-Pose e i vantaggi dell'utilizzo del mosaicing durante il processo di addestramento.

Citazioni e ringraziamenti

Se utilizzi il dataset COCO nel tuo lavoro 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}
}

Vorremmo ringraziare il COCO Consortium per aver creato e mantenuto questa preziosa risorsa per la comunità di computer vision. Per maggiori informazioni sul dataset COCO e i suoi creatori, visita il sito web del dataset COCO.

FAQ

Cos'è il dataset COCO8-Pose e come viene utilizzato con Ultralytics YOLO26?

Il dataset COCO8-Pose è un piccolo e versatile dataset di rilevamento pose che include le prime 8 immagini del set COCO train 2017, con 4 immagini per l'addestramento e 4 per la validazione. È progettato per testare e sottoporre a debug modelli di object detection e per sperimentare nuovi approcci di rilevamento. Questo dataset è ideale per esperimenti rapidi con Ultralytics YOLO26. Per ulteriori dettagli sulla configurazione del dataset, consulta il file YAML del dataset.

Come posso addestrare un modello YOLO26 utilizzando il dataset COCO8-Pose in Ultralytics?

Per addestrare un modello YOLO26n-pose sul dataset COCO8-Pose per 100 epoch con una dimensione dell'immagine di 640, segui questi esempi:

Esempio di training
from ultralytics import YOLO

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

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

Per un elenco completo degli argomenti di addestramento, fai riferimento alla pagina Training del modello.

Quali sono i vantaggi dell'utilizzo del dataset COCO8-Pose?

Il dataset COCO8-Pose offre diversi vantaggi:

  • Dimensioni compatte: Con sole 8 immagini, è facile da gestire e perfetto per esperimenti rapidi.
  • Dati diversificati: Nonostante le dimensioni ridotte, include una varietà di scene, utile per testare accuratamente la pipeline.
  • Debug degli errori: Ideale per identificare errori di addestramento ed eseguire controlli di integrità prima di passare a dataset più grandi.

Per saperne di più sulle sue funzionalità e sull'utilizzo, vedi la sezione Introduzione al dataset.

In che modo il mosaicing avvantaggia il processo di addestramento di YOLO26 utilizzando il dataset COCO8-Pose?

Il mosaicing, mostrato nelle immagini di esempio del dataset COCO8-Pose, combina più immagini in una sola, aumentando la varietà di oggetti e scene all'interno di ogni batch di addestramento. Questa tecnica aiuta a migliorare la capacità del modello di generalizzare su varie dimensioni di oggetti, proporzioni e contesti, migliorando in definitiva le prestazioni del modello. Vedi la sezione Esempi di immagini e annotazioni per le immagini di esempio.

Dove posso trovare il file YAML del dataset COCO8-Pose e come lo utilizzo?

Il file YAML del dataset COCO8-Pose si trova su 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. Utilizza questo file con gli script di addestramento YOLO26 come menzionato nella sezione Esempio di addestramento.

Per ulteriori FAQ e documentazione dettagliata, visita la Documentazione Ultralytics.

Commenti