Conjunto de Dados COCO8-Seg
Introdução
O Ultralytics COCO8-Seg é um conjunto de dados pequeno, mas versátil, de segmentação de instâncias composto pelas 8 primeiras imagens do conjunto de treinamento COCO 2017, 4 para treinamento e 4 para validação. Este conjunto de dados é ideal para testar e depurar modelos de segmentação ou para experimentar novas abordagens de detecção. Com 8 imagens, é pequeno o suficiente para ser facilmente gerenciável, mas diversificado o suficiente para testar pipelines de treinamento em busca de erros e atuar como uma verificação de sanidade antes de treinar conjuntos de dados maiores.
Este conjunto de dados destina-se ao uso com o HUB Ultralytics e YOLO11.
YAML do Conjunto de Dados
Um arquivo YAML (Yet Another Markup Language) é usado para definir a configuração do conjunto de dados. Ele contém informações sobre os caminhos, classes e outras informações relevantes do conjunto de dados. No caso do conjunto de dados COCO8-Seg, o coco8-seg.yaml
arquivo é mantido em https://github.com/ultralytics/ultralytics/blob/main/ultralytics/cfg/datasets/coco8-seg.yaml.
ultralytics/cfg/datasets/coco8-seg.yaml
# Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/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: 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
Utilização
Para treinar um modelo YOLO11n-seg no conjunto de dados COCO8-Seg por 100 épocas com um tamanho de imagem de 640, você pode usar os seguintes trechos de código. Para uma lista completa de argumentos disponíveis, consulte a página de Treinamento do modelo.
Exemplo de Treinamento
from ultralytics import YOLO
# Load a model
model = YOLO("yolo11n-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 segment train data=coco8-seg.yaml model=yolo11n-seg.pt epochs=100 imgsz=640
Amostras de Imagens e Anotações
Aqui estão alguns exemplos de imagens do conjunto de dados COCO8-Seg, juntamente com suas anotações correspondentes:
- Imagem em Mosaico: Esta imagem demonstra um lote de treinamento composto por imagens de conjunto de dados em mosaico. O mosaico é uma técnica usada durante o treinamento que combina várias imagens em uma única imagem para aumentar a variedade de objetos e cenas dentro de cada lote de treinamento. Isso ajuda a melhorar a capacidade do modelo de generalizar para diferentes tamanhos de objetos, proporções e contextos.
O exemplo mostra a variedade e a complexidade das imagens no conjunto de dados COCO8-Seg e os benefícios de usar mosaicos durante o processo de treinamento.
Citações e Agradecimentos
Se você usar o conjunto de dados COCO em seu trabalho de pesquisa ou desenvolvimento, cite o seguinte artigo:
@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}
}
Gostaríamos de agradecer ao COCO Consortium por criar e manter este valioso recurso para a comunidade de visão computacional. Para obter mais informações sobre o conjunto de dados COCO e seus criadores, visite o site do conjunto de dados COCO.
FAQ
O que é o conjunto de dados COCO8-Seg e como ele é usado no Ultralytics YOLO11?
O dataset COCO8-Seg é um dataset de segmentação de instâncias compacto da Ultralytics, consistindo nas primeiras 8 imagens do conjunto de treinamento COCO 2017 — 4 imagens para treinamento e 4 para validação. Este dataset é feito sob medida para testar e depurar modelos de segmentação ou experimentar novos métodos de detecção. É particularmente útil com o YOLO11 e o HUB da Ultralytics para iteração rápida e verificação de erros de pipeline antes de escalar para datasets maiores. Para uso detalhado, consulte a página de Treinamento do modelo.
Como posso treinar um modelo YOLO11n-seg usando o conjunto de dados COCO8-Seg?
Para treinar um modelo YOLO11n-seg no conjunto de dados COCO8-Seg por 100 épocas com um tamanho de imagem de 640, você pode usar comandos Python ou CLI. Aqui está um exemplo rápido:
Exemplo de Treinamento
from ultralytics import YOLO
# Load a model
model = YOLO("yolo11n-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 segment train data=coco8-seg.yaml model=yolo11n-seg.pt epochs=100 imgsz=640
Para uma explicação detalhada dos argumentos disponíveis e opções de configuração, pode consultar a documentação de Treino.
Por que o conjunto de dados COCO8-Seg é importante para o desenvolvimento e depuração de modelos?
O dataset COCO8-Seg oferece um conjunto compacto, mas diversificado, de 8 imagens, tornando-o perfeito para testar e depurar rapidamente modelos de segmentação ou para experimentar novas técnicas de detecção. Seu tamanho pequeno permite verificações de sanidade rápidas e validação antecipada do pipeline, ajudando a identificar problemas antes de escalar para datasets maiores. Saiba mais sobre os formatos de dataset suportados no guia de dataset de segmentação da Ultralytics.
Onde posso encontrar o arquivo de configuração YAML para o conjunto de dados COCO8-Seg?
O arquivo de configuração YAML para o conjunto de dados COCO8-Seg está disponível no repositório Ultralytics. Você pode acessar o arquivo diretamente em https://github.com/ultralytics/ultralytics/blob/main/ultralytics/cfg/datasets/coco8-seg.yaml. O arquivo YAML inclui informações essenciais sobre caminhos de conjuntos de dados, classes e configurações necessárias para o treinamento e validação do modelo.
Quais são alguns benefícios de usar mosaicos durante o treinamento com o conjunto de dados COCO8-Seg?
Usar mosaico durante o treinamento ajuda a aumentar a diversidade e variedade de objetos e cenas em cada lote de treinamento. Esta técnica combina várias imagens em uma única imagem composta, melhorando a capacidade do modelo de generalizar para diferentes tamanhos de objetos, proporções e contextos dentro da cena. O mosaico é benéfico para melhorar a robustez e a precisão de um modelo, especialmente ao trabalhar com conjuntos de dados pequenos como o COCO8-Seg. Para um exemplo de imagens em mosaico, consulte a seção Imagens de Amostra e Anotações.