Skip to content

Ensemble de données COCO8-Pose

Introduction

Ultralytics COCO8-Pose est un ensemble de données de détection de pose, petit mais polyvalent, composé des 8 premières images de l'ensemble COCO train 2017, 4 pour l'entraînement et 4 pour la validation. Cet ensemble de données est idéal pour tester et déboguer les 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 de formation à la recherche d'erreurs et servir de contrôle d'assainissement avant de former des ensembles de données plus importants.

Cet ensemble de données est destiné à être utilisé avec Ultralytics HUB et YOLOv8.

Jeu de données YAML

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 d'accès au jeu de données, les classes et d'autres informations pertinentes. Dans le cas du jeu de données COCO8-Pose, le fichier YAML est un fichier de configuration. 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 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

Utilisation

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

Exemple de train

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

Exemples d'images et d'annotations

Voici quelques exemples d'images tirées de l'ensemble de données COCO8-Pose, ainsi que les annotations correspondantes :

Image de l'échantillon du jeu de données

  • Image mosaïque: Cette image montre un lot d'entraînement composé d'images de données mosaïquées. La mosaïque est une technique utilisée pendant la formation qui combine plusieurs images en une seule afin d'augmenter la variété d'objets et de scènes dans chaque lot de formation. Cela permet d'améliorer la capacité du modèle à s'adapter à différentes tailles d'objets, à différents rapports d'aspect et à différents contextes.

L'exemple montre la variété et la complexité des images de l'ensemble de données COCO8-Pose et les avantages de l'utilisation du mosaïquage pendant le processus de formation.

Citations et remerciements

Si tu utilises l'ensemble de données COCO dans tes travaux de recherche ou de développement, cite l'article suivant :

@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 avoir créé et maintenu cette ressource précieuse pour la communauté de la vision par ordinateur. Pour plus d'informations sur l'ensemble de données COCO et ses créateurs, visite le site Web de l'ensemble de données COCO.

FAQ

Qu'est-ce que l'ensemble de données COCO8-Pose et comment est-il utilisé avec Ultralytics YOLOv8 ?

L'ensemble de données COCO8-Pose est un petit ensemble de données polyvalent de détection de pose qui comprend 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 les modèles de détection d'objets et expérimenter de nouvelles approches de détection. Cet ensemble de données est idéal pour des expériences rapides avec... Ultralytics YOLOv8. Pour plus de détails sur la configuration du dataset, consulte le fichier YAML du dataset ici.

Comment entraîner un modèle YOLOv8 à l'aide de l'ensemble de données COCO8-Pose dans Ultralytics?

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

Exemple de train

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

Pour obtenir une liste complète des arguments de formation, reporte-toi à la page de la formation au modèle.

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

L'ensemble de données COCO8-Pose offre plusieurs avantages :

  • Taille compacte: Avec seulement 8 images, il est facile à gérer et parfait pour les expériences rapides.
  • Données diverses: Malgré sa petite taille, il comprend une variété de scènes, utiles pour des tests approfondis du pipeline.
  • Débogage des erreurs: Idéal pour identifier les erreurs d'entraînement et effectuer des vérifications de bon sens avant de passer à l'échelle sur des ensembles de données plus importants.

Pour en savoir plus sur ses caractéristiques et son utilisation, consulte la section Introduction aux jeux de données.

Comment le mosaïquage profite-t-il au processus de formation YOLOv8 en utilisant l'ensemble de données COCO8-Pose ?

La mosaïque, démontrée dans les exemples d'images de l'ensemble de données COCO8-Pose, combine plusieurs images en une seule, augmentant ainsi la variété d'objets et de scènes dans chaque lot d'entraînement. Cette technique permet d'améliorer la capacité du modèle à se généraliser en fonction de la taille des objets, des rapports d'aspect et des contextes, ce qui améliore en fin de compte les performances du modèle. Voir la section Exemples d'images et d'annotations pour des exemples d'images.

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

Le fichier YAML du jeu de données COCO8-Pose se trouve ici. 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 de formation YOLOv8 comme indiqué dans la section Exemple de formation.

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



Created 2023-11-12, Updated 2024-07-17
Authors: hnliu_2@stu.xidian.edu.cn (1), glenn-jocher (7), Laughing-q (1)

Commentaires