Ultralytics YOLO27 :

Jeu de données COCO8#

Introduction#

Le jeu de données COCO8 d'Ultralytics est un jeu de données compact, mais puissant, de détection d’objets, constitué des 8 premières images de l’ensemble d’entraînement COCO 2017 — 4 pour l’entraînement et 4 pour la validation. Ce jeu de données est spécialement conçu pour tester, déboguer et expérimenter rapidement des modèles YOLO et des pipelines d’entraînement. Sa petite taille le rend très facile à gérer, tandis que sa diversité en fait un contrôle de cohérence efficace avant de passer à des jeux de données plus volumineux.



Watch: Ultralytics COCO Dataset Overview

Structure du jeu de données#

COCO8 comprend les 8 premières images de l’ensemble d’entraînement COCO 2017 — 4 pour l’entraînement et 4 pour la validation — et couvre l’ensemble des 80 classes d’objets COCO au format d’annotation YOLO :

coco8/
├── images/
│   ├── train/   # 4 images
│   └── val/     # 4 images
└── labels/
    ├── train/
    └── val/

Explore COCO8 sur la plateforme Ultralytics pour parcourir chaque image avec ses superpositions d’annotations, consulter la répartition des classes et les cartes thermiques des boîtes englobantes dans l’onglet Graphiques, puis le cloner afin d’entraîner ton propre modèle dans le cloud.

YAML du jeu de données#

La configuration du jeu de données COCO8 est définie dans un fichier YAML qui spécifie les chemins des jeux de données, les noms de classes et d’autres métadonnées essentielles. Tu peux consulter le fichier officiel coco8.yaml dans le dépôt GitHub d’Ultralytics.

ultralytics/cfg/datasets/coco8.yaml
# Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license

# COCO8 dataset (first 8 images from COCO train2017) by Ultralytics
# Documentation: https://docs.ultralytics.com/datasets/detect/coco8
# Example usage: yolo train data=coco8.yaml
# parent
# ├── ultralytics
# └── datasets
#     └── coco8 ← 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 # 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)

# Classes
names:
  0: person
  1: bicycle
  2: car
  3: motorcycle
  4: airplane
  5: bus
  6: train
  7: truck
  8: boat
  9: traffic light
  10: fire hydrant
  11: stop sign
  12: parking meter
  13: bench
  14: bird
  15: cat
  16: dog
  17: horse
  18: sheep
  19: cow
  20: elephant
  21: bear
  22: zebra
  23: giraffe
  24: backpack
  25: umbrella
  26: handbag
  27: tie
  28: suitcase
  29: frisbee
  30: skis
  31: snowboard
  32: sports ball
  33: kite
  34: baseball bat
  35: baseball glove
  36: skateboard
  37: surfboard
  38: tennis racket
  39: bottle
  40: wine glass
  41: cup
  42: fork
  43: knife
  44: spoon
  45: bowl
  46: banana
  47: apple
  48: sandwich
  49: orange
  50: broccoli
  51: carrot
  52: hot dog
  53: pizza
  54: donut
  55: cake
  56: chair
  57: couch
  58: potted plant
  59: bed
  60: dining table
  61: toilet
  62: tv
  63: laptop
  64: mouse
  65: remote
  66: keyboard
  67: cell phone
  68: microwave
  69: oven
  70: toaster
  71: sink
  72: refrigerator
  73: book
  74: clock
  75: vase
  76: scissors
  77: teddy bear
  78: hair drier
  79: toothbrush

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

Utilisation#

Le jeu de données COCO8 (1 Mo) est téléchargé automatiquement la première fois que tu démarres l’entraînement. Pour entraîner un modèle YOLO26n sur COCO8 pendant 100 époques avec une taille d’image de 640, utilise les exemples suivants. Pour consulter la liste complète des options d’entraînement, consulte la documentation sur l’entraînement YOLO.

Exemple d’entraînement
from ultralytics import YOLO

# Load a pretrained YOLO26n model
model = YOLO("yolo26n.pt")

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

Exemples d’images et d’annotations#

Voici un exemple de lot d’entraînement mosaïqué issu du jeu de données COCO8 :

COCO8 object detection dataset mosaic training batch
  • Image mosaïquée : cette image illustre un lot d’entraînement dans lequel plusieurs images du jeu de données sont combinées à l’aide de l’augmentation par mosaïque. L’augmentation par mosaïque accroît la diversité des objets et des scènes dans chaque lot, ce qui aide le modèle à mieux se généraliser à différentes tailles d’objets, proportions et arrière-plans.

Cette technique est particulièrement utile pour les petits jeux de données comme COCO8, car elle maximise la valeur de chaque image pendant l’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 l’article 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}
}

Un grand merci au consortium COCO pour ses contributions continues à la communauté de la vision par ordinateur.

FAQ#

  • Le jeu de données COCO8 d’Ultralytics est conçu pour tester et déboguer rapidement des modèles de détection d’objets. Avec seulement 8 images (4 pour l’entraînement et 4 pour la validation), il est idéal pour vérifier tes pipelines d’entraînement YOLO et t’assurer que tout fonctionne comme prévu avant de passer à des jeux de données plus volumineux. Consulte la configuration YAML de COCO8 pour plus de détails.

  • Tu peux entraîner un modèle YOLO26 sur COCO8 avec Python ou la CLI :

    Exemple d’entraînement
    from ultralytics import YOLO
    
    # Load a pretrained YOLO26n model
    model = YOLO("yolo26n.pt")
    
    # Train the model on COCO8
    results = model.train(data="coco8.yaml", epochs=100, imgsz=640)

    Pour connaître les options d’entraînement supplémentaires, consulte la documentation sur l’entraînement YOLO.

  • L’augmentation par mosaïque, utilisée lors de l’entraînement sur COCO8, combine plusieurs images en une seule à chaque lot. Elle accroît la diversité des objets et des arrière-plans, ce qui aide ton modèle YOLO à mieux se généraliser à de nouveaux scénarios. L’augmentation par mosaïque est particulièrement précieuse pour les petits jeux de données, car elle maximise les informations disponibles à chaque étape d’entraînement. Pour en savoir plus, consulte le guide d’entraînement.

  • Pour valider ton modèle YOLO26 après son entraînement sur COCO8, utilise les commandes de validation du modèle avec Python ou la CLI. Cette opération évalue les performances de ton modèle à l’aide de métriques standard. Pour obtenir des instructions détaillées étape par étape, consulte la documentation sur la validation YOLO.

Commentaires