Conjunto de dados COCO128-Seg
Introdução
Ultralytics O COCO128-Seg é um conjunto de dados de segmentação de instâncias pequeno, mas versátil, composto pelas primeiras 128 imagens do conjunto COCO train 2017. Este conjunto de dados é ideal para testar e depurar modelos de segmentação, ou para experimentar novas abordagens de deteção. Com 128 imagens, é suficientemente pequeno para ser facilmente gerível, mas suficientemente diversificado para testar os pipelines de treino quanto a 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 ficheiro YAML (Yet Another Markup Language) é utilizado para definir a configuração do conjunto de dados. Ele contém informações sobre os caminhos do conjunto de dados, classes e outras informações relevantes. No caso do conjunto de dados COCO128-Seg, o ficheiro coco128-seg.yaml
arquivo é mantido em https://github.com/ultralytics/ultralytics/blob/main/ultralytics/cfg/datasets/coco128-seg.yaml.
ultralytics.yaml
# Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license
# COCO128-seg dataset https://www.kaggle.com/datasets/ultralytics/coco128 (first 128 images from COCO train2017) by Ultralytics
# Documentation: https://docs.ultralytics.com/datasets/segment/coco/
# Example usage: yolo train data=coco128.yaml
# parent
# ├── ultralytics
# └── datasets
# └── coco128-seg ← downloads here (7 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: coco128-seg # dataset root dir
train: images/train2017 # train images (relative to 'path') 128 images
val: images/train2017 # val images (relative to 'path') 128 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/coco128-seg.zip
Utilização
Para treinar um modelo YOLO11n-seg no conjunto de dados COCO128-Seg para 100 épocas com um tamanho de imagem de 640, pode utilizar os seguintes fragmentos de código. Para obter uma lista abrangente dos argumentos disponíveis, consulte a página 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="coco128-seg.yaml", epochs=100, imgsz=640)
# Start training from a pretrained *.pt model
yolo segment train data=coco128-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 COCO128-Seg, juntamente com as 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 complexidade das imagens no conjunto de dados COCO128-Seg e os benefícios da utilização de mosaicos durante o processo de formação.
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 COCO128-Seg e como é utilizado no Ultralytics YOLO11?
O conjunto de dados COCO128-Seg é um conjunto de dados compacto de segmentação de instâncias da Ultralytics, que consiste nas primeiras 128 imagens do conjunto COCO train 2017. Este conjunto de dados foi concebido para testar e depurar modelos de segmentação ou experimentar novos métodos de deteção. É particularmente útil com o Ultralytics YOLO11 e o HUB para uma iteração rápida e verificação de erros do pipeline antes de passar para conjuntos de dados maiores. Para obter informações detalhadas sobre o uso, consulte a página de treinamento do modelo.
Como é que posso treinar um modelo YOLO11n-seg utilizando o conjunto de dados COCO128-Seg?
Para treinar um modelo YOLO11n-seg no conjunto de dados COCO128-Seg para 100 épocas com um tamanho de imagem de 640, pode utilizar 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="coco128-seg.yaml", epochs=100, imgsz=640)
# Start training from a pretrained *.pt model
yolo segment train data=coco128-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.
Porque é que o conjunto de dados COCO128-Seg é importante para o desenvolvimento e depuração de modelos?
O conjunto de dados COCO128-Seg oferece uma combinação equilibrada de capacidade de gestão e diversidade com 128 imagens, tornando-o perfeito para testar e depurar rapidamente modelos de segmentação ou experimentar novas técnicas de deteção. O seu tamanho moderado permite iterações de treino rápidas, ao mesmo tempo que fornece diversidade suficiente para validar pipelines de treino antes de escalar para conjuntos de dados maiores. Saiba mais sobre os formatos de conjuntos de dados suportados no guia de conjuntos de dados de segmentaçãoUltralytics .
Onde posso encontrar o ficheiro de configuração YAML para o conjunto de dados COCO128-Seg?
O ficheiro de configuração YAML para o conjunto de dados COCO128-Seg está disponível no repositório Ultralytics . Pode aceder ao ficheiro diretamente em ultralytics O ficheiro YAML inclui informações essenciais sobre os caminhos do conjunto de dados, as classes e as definições de configuração necessárias para a formação e validação do modelo.
Quais são as vantagens da utilização de mosaicos durante a formação com o conjunto de dados COCO128-Seg?
A utilização de mosaicos durante a formação ajuda a aumentar a diversidade e variedade de objectos e cenas em cada lote de formação. Esta técnica combina várias imagens numa única imagem composta, melhorando a capacidade do modelo de generalizar para diferentes tamanhos de objectos, proporções e contextos dentro da cena. O mosaico é benéfico para melhorar a robustez e a precisão de um modelo, especialmente quando se trabalha com conjuntos de dados de tamanho moderado como o COCO128-Seg. Para obter um exemplo de imagens em mosaico, consulte a secção Imagens de amostra e anotações.