Vai al contenuto

Set di dati COCO8-Seg

Introduzione

Ultralytics COCO8-Seg è un piccolo ma versatile set di dati per la segmentazione di istanze composto dalle prime 8 immagini del set COCO train 2017, 4 per la formazione e 4 per la validazione. Questo set di dati è ideale per testare e debuggare i modelli di segmentazione o per sperimentare nuovi approcci di rilevamento. Con 8 immagini, è abbastanza piccolo da essere facilmente gestibile, ma sufficientemente vario da poter testare le pipeline di addestramento per individuare eventuali errori e fungere da verifica della correttezza prima di addestrare set di dati più grandi.

Questo set di dati è destinato all'utilizzo di Ultralytics HUB e di YOLOv8.

Set di dati YAML

Un file YAML (Yet Another Markup Language) viene utilizzato per definire la configurazione del dataset. Contiene informazioni sui percorsi del dataset, sulle classi e altre informazioni rilevanti. Nel caso del set di dati COCO8-Seg, il file coco8-seg.yaml Il file viene mantenuto all'indirizzo https://github.com/ultralytics/ultralytics/blob/main/ultralytics/cfg/datasets/coco8-seg.yaml.

ultralytics/cfg/datasets/coco8-seg.yaml

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

Utilizzo

Per addestrare un modello YOLOv8n-seg sul dataset COCO8-Seg per 100 epoch con una dimensione dell'immagine di 640, puoi utilizzare i seguenti frammenti di codice. Per un elenco completo degli argomenti disponibili, consulta la pagina di addestramento del modello.

Esempio di treno

from ultralytics import YOLO

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

# Train the model
results = model.train(data="coco8-seg.yaml", epochs=100, imgsz=640)
# Start training from a pretrained *.pt model
yolo detect train data=coco8-seg.yaml model=yolov8n-seg.pt epochs=100 imgsz=640

Immagini di esempio e annotazioni

Ecco alcuni esempi di immagini tratte dal dataset COCO8-Seg, con le relative annotazioni:

Immagine campione del set di dati

  • Immagine a mosaico: Questa immagine mostra un lotto di formazione composto da immagini del dataset mosaicate. 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 gruppo di addestramento. Questo aiuta a migliorare la capacità del modello di generalizzarsi a oggetti di dimensioni, rapporti di aspetto e contesti diversi.

L'esempio mostra la varietà e la complessità delle immagini del dataset COCO8-Seg e i vantaggi dell'utilizzo della mosaicatura durante il processo di formazione.

Citazioni e ringraziamenti

Se utilizzi il set di dati COCO nel tuo lavoro di ricerca o sviluppo, cita il seguente documento:

@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 computer vision. Per maggiori informazioni sul dataset COCO e sui suoi creatori, visita il sito web del dataset COCO.

DOMANDE FREQUENTI

Che cos'è il dataset COCO8-Seg e come viene utilizzato in Ultralytics YOLOv8 ?

Il set di dati COCO8-Seg è un set di dati compatto per la segmentazione delle istanze di Ultralytics, composto dalle prime 8 immagini del set COCO train 2017 - 4 immagini per la formazione e 4 per la validazione. Questo set di dati è adatto per il test e il debug dei modelli di segmentazione o per la sperimentazione di nuovi metodi di rilevamento. È particolarmente utile con Ultralytics YOLOv8 e HUB per una rapida iterazione e per il controllo degli errori della pipeline prima di passare a set di dati più grandi. Per un utilizzo dettagliato, consulta la pagina Formazione del modello.

Come posso addestrare un modello YOLOv8n-seg utilizzando il dataset COCO8-Seg?

Per addestrare un modello YOLOv8n-seg sul dataset COCO8-Seg per 100 epoch con una dimensione dell'immagine di 640, puoi usare i comandi Python o CLI . Ecco un rapido esempio:

Esempio di treno

from ultralytics import YOLO

# Load a model
model = YOLO("yolov8n-seg.pt")  # Load a pretrained model (recommended for training)

# Train the model
results = model.train(data="coco8-seg.yaml", epochs=100, imgsz=640)
# Start training from a pretrained *.pt model
yolo detect train data=coco8-seg.yaml model=yolov8n.pt epochs=100 imgsz=640

Per una spiegazione approfondita degli argomenti e delle opzioni di configurazione disponibili, puoi consultare la documentazione di Training.

Perché il set di dati COCO8-Seg è importante per lo sviluppo e il debug del modello?

Il dataset COCO8-Seg è ideale per la sua maneggevolezza e diversità all'interno di una dimensione ridotta. È composto da sole 8 immagini e offre un modo rapido per testare e fare il debug dei modelli di segmentazione o di nuovi approcci di rilevamento senza il sovraccarico di dataset più grandi. Questo lo rende uno strumento efficiente per i controlli di correttezza e l'identificazione degli errori di pipeline prima di impegnarsi in una formazione approfondita su dataset di grandi dimensioni. Per saperne di più sui formati dei set di dati , clicca qui.

Dove posso trovare il file di configurazione YAML per il dataset COCO8-Seg?

Il file di configurazione YAML per il set di dati COCO8-Seg è disponibile nel repository Ultralytics . Puoi accedere al file direttamente qui. Il file YAML contiene informazioni essenziali sui percorsi del dataset, sulle classi e sulle impostazioni di configurazione necessarie per la formazione e la convalida del modello.

Quali sono i vantaggi dell'utilizzo della mosaicatura durante l'addestramento con il dataset COCO8-Seg?

L'utilizzo della mosaicatura durante l'addestramento aiuta ad aumentare la diversità e la varietà di oggetti e scene in ogni lotto di addestramento. Questa tecnica combina più immagini in un'unica immagine composita, migliorando la capacità del modello di generalizzarsi a oggetti di dimensioni, rapporti di aspetto e contesti diversi all'interno della scena. La mosaicatura è utile per migliorare la robustezza e l'accuratezza di un modello, soprattutto quando si lavora con dataset piccoli come COCO8-Seg. Per un esempio di immagini mosaicate, consulta la sezione Immagini di esempio e annotazioni.



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

Commenti