Jeu de données COCO8-Pose

Introduction

Ultralytics COCO8-Pose est un jeu de données de détection de pose petit mais polyvalent, composé des 8 premières images de l'ensemble COCO train 2017, dont 4 pour l'entraînement et 4 pour la validation. Ce jeu de données est idéal pour tester et déboguer des modèles de détection d'objets, ou pour expérimenter de nouvelles approches de détection. Avec 8 images, il est suffisamment petit pour être facilement gérable, tout en étant assez diversifié pour tester les pipelines d'entraînement à la recherche d'erreurs et servir de vérification de cohérence avant d'entraîner sur des jeux de données plus importants.

Structure du jeu de données

  • Nombre total d'images : 8 (4 pour l'entraînement / 4 pour la validation).
  • Classes : 1 (personne) avec 17 points clés par annotation.
  • Disposition recommandée des répertoires : datasets/coco8-pose/images/{train,val} et datasets/coco8-pose/labels/{train,val} avec des points clés au format YOLO stockés sous forme de fichiers .txt.

Ce jeu de données est destiné à être utilisé avec Ultralytics Platform et YOLO26.

YAML du jeu de données

Un fichier YAML (Yet Another Markup Language) est utilisé pour définir la configuration du jeu de données. Il contient des informations sur les chemins du jeu de données, les classes et d'autres informations pertinentes. Dans le cas du jeu de données COCO8-Pose, le fichier coco8-pose.yaml est maintenu à 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

Utilisation

Pour entraîner un modèle YOLO26n-pose sur le jeu de données COCO8-Pose pendant 100 époques avec une taille d'image de 640, tu peux utiliser les extraits de code suivants. Pour une liste complète des arguments disponibles, reporte-toi à la page Entraînement du modèle.

Exemple d'entraînement
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)

Exemples d'images et d'annotations

Voici quelques exemples d'images du jeu de données COCO8-Pose, accompagnées de leurs annotations correspondantes :

COCO8-pose keypoint estimation dataset mosaic
  • Image en mosaïque : Cette image démontre un lot d'entraînement composé d'images du jeu de données en mosaïque. La mosaïque est une technique utilisée pendant l'entraînement qui combine plusieurs images en une seule image pour augmenter la variété des objets et des scènes au sein de chaque lot d'entraînement. Cela aide à améliorer la capacité du modèle à généraliser à différentes tailles d'objets, ratios d'aspect et contextes.

L'exemple illustre la variété et la complexité des images du jeu de données COCO8-Pose ainsi que les avantages de l'utilisation du mosaïquage (mosaicing) pendant le processus d'entraînement.

Citations et remerciements

Si tu utilises le jeu de données COCO dans tes travaux de recherche ou de développement, merci de citer le papier suivant :

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

Nous tenons à remercier le consortium COCO pour la création et la maintenance de cette ressource précieuse pour la communauté de la vision par ordinateur. Pour plus d'informations sur le jeu de données COCO et ses créateurs, visite le site web du jeu de données COCO.

FAQ

Qu'est-ce que le jeu de données COCO8-Pose et comment est-il utilisé avec Ultralytics YOLO26 ?

Le jeu de données COCO8-Pose est un petit jeu de données de détection de pose polyvalent qui inclut les 8 premières images de l'ensemble COCO train 2017, avec 4 images pour l'entraînement et 4 pour la validation. Il est conçu pour tester et déboguer des modèles de détection d'objets et pour expérimenter de nouvelles approches de détection. Ce jeu de données est idéal pour des expériences rapides avec Ultralytics YOLO26. Pour plus de détails sur la configuration du jeu de données, consulte le fichier YAML du jeu de données.

Comment entraîner un modèle YOLO26 en utilisant le jeu de données COCO8-Pose dans Ultralytics ?

Pour entraîner un modèle YOLO26n-pose sur le jeu de données COCO8-Pose pendant 100 époques avec une taille d'image de 640, suis ces exemples :

Exemple d'entraînement
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)

Pour une liste complète des arguments d'entraînement, reporte-toi à la page Entraînement du modèle.

Quels sont les avantages de l'utilisation du jeu de données COCO8-Pose ?

Le jeu de données COCO8-Pose offre plusieurs avantages :

  • Taille compacte : Avec seulement 8 images, il est facile à gérer et parfait pour des expériences rapides.
  • Données diversifiées : Malgré sa petite taille, il inclut une variété de scènes, utile pour des tests de pipeline approfondis.
  • Débogage d'erreurs : Idéal pour identifier les erreurs d'entraînement et effectuer des vérifications de cohérence avant de passer à des jeux de données plus importants.

Pour en savoir plus sur ses fonctionnalités et son utilisation, consulte la section Introduction au jeu de données.

Comment le mosaïquage (mosaicing) bénéficie-t-il au processus d'entraînement YOLO26 en utilisant le jeu de données COCO8-Pose ?

Le mosaïquage, illustré dans les exemples d'images du jeu de données COCO8-Pose, combine plusieurs images en une seule, augmentant la variété des objets et des scènes au sein de chaque lot d'entraînement. Cette technique aide à améliorer la capacité du modèle à généraliser à travers diverses tailles d'objets, ratios d'aspect et contextes, améliorant ainsi la performance globale du modèle. Voir la section Exemples d'images et annotations pour des exemples d'images.

Où puis-je trouver le fichier YAML du jeu de données COCO8-Pose et comment l'utiliser ?

Le fichier YAML du jeu de données COCO8-Pose se trouve à l'adresse https://github.com/ultralytics/ultralytics/blob/main/ultralytics/cfg/datasets/coco8-pose.yaml. Ce fichier définit la configuration du jeu de données, y compris les chemins, les classes et d'autres informations pertinentes. Utilise ce fichier avec les scripts d'entraînement YOLO26 comme mentionné dans la section Exemple d'entraînement.

Pour plus de FAQ et une documentation détaillée, visite la Documentation Ultralytics.

Commentaires