Dataset COCO8-Pose

Introdução

O Ultralytics COCO8-Pose é um dataset de detecção de poses pequeno, porém versátil, composto pelas 8 primeiras imagens do conjunto COCO train 2017, sendo 4 para treinamento e 4 para validação. Este dataset é ideal para testar e depurar modelos de object detection ou para experimentar novas abordagens de detecção. Com 8 imagens, é pequeno o suficiente para ser facilmente gerenciável, mas diverso o suficiente para testar pipelines de treinamento em busca de erros e servir como uma verificação de integridade antes de treinar datasets maiores.

Estrutura do Dataset

  • Total de imagens: 8 (4 para treino / 4 para val).
  • Classes: 1 (pessoa) com 17 keypoints por anotação.
  • Layout de diretório recomendado: datasets/coco8-pose/images/{train,val} e datasets/coco8-pose/labels/{train,val} com keypoints em formato YOLO armazenados como arquivos .txt.

Este conjunto de dados destina-se ao uso com a Plataforma Ultralytics e YOLO26.

YAML do Dataset

Um arquivo YAML (Yet Another Markup Language) é usado para definir a configuração do dataset. Ele contém informações sobre os caminhos, classes e outras informações relevantes do dataset. No caso do dataset COCO8-Pose, o arquivo coco8-pose.yaml é mantido em https://github.com/ultralytics/ultralytics/blob/main/ultralytics/cfg/datasets/coco8-pose.yaml.

ultralytics/cfg/datasets/coco8-pose.yaml
# Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/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: 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

# Keypoint names per class
kpt_names:
  0:
    - nose
    - left_eye
    - right_eye
    - left_ear
    - right_ear
    - left_shoulder
    - right_shoulder
    - left_elbow
    - right_elbow
    - left_wrist
    - right_wrist
    - left_hip
    - right_hip
    - left_knee
    - right_knee
    - left_ankle
    - right_ankle

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

Utilização

Para treinar um modelo YOLO26n-pose no dataset COCO8-Pose por 100 epochs com um tamanho de imagem de 640, podes usar os trechos de código a seguir. Para uma lista abrangente de argumentos disponíveis, consulta a página de Training do modelo.

Exemplo de Treino
from ultralytics import YOLO

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

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

Amostra de Imagens e Anotações

Aqui estão alguns exemplos de imagens do dataset COCO8-Pose, juntamente com as suas respectivas anotações:

COCO8-pose keypoint estimation dataset mosaic
  • Imagem em mosaico: Esta imagem demonstra um lote de treino composto por imagens do conjunto de dados em mosaico. A técnica de mosaico é um método utilizado durante o treino que combina várias imagens numa única para aumentar a variedade de objetos e cenas dentro de cada lote de treino. Isto ajuda a melhorar a capacidade do modelo de generalizar para diferentes tamanhos de objetos, proporções e contextos.

O exemplo demonstra a variedade e complexidade das imagens no dataset COCO8-Pose e os benefícios de usar mosaico durante o processo de treinamento.

Citações e Agradecimentos

Se utilizares o conjunto de dados COCO no teu trabalho de investigação ou desenvolvimento, por favor cita o seguinte artigo:

Citação
@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 Consórcio COCO por criar e manter este recurso valioso para a comunidade de visão computacional. Para mais informações sobre o conjunto de dados COCO e seus criadores, visite o site do conjunto de dados COCO.

FAQ

O que é o dataset COCO8-Pose e como é usado com o Ultralytics YOLO26?

O dataset COCO8-Pose é um pequeno e versátil dataset de detecção de poses que inclui as 8 primeiras imagens do conjunto COCO train 2017, com 4 imagens para treino e 4 para validação. Foi concebido para testar e depurar modelos de detecção de objetos e experimentar novas abordagens de detecção. Este dataset é ideal para experimentos rápidos com o Ultralytics YOLO26. Para mais detalhes sobre a configuração do dataset, confere o arquivo YAML do dataset.

Como posso treinar um modelo YOLO26 usando o dataset COCO8-Pose no Ultralytics?

Para treinar um modelo YOLO26n-pose no dataset COCO8-Pose por 100 epochs com um tamanho de imagem de 640, segue estes exemplos:

Exemplo de Treino
from ultralytics import YOLO

# Load a model
model = YOLO("yolo26n-pose.pt")

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

Para uma lista completa de argumentos de treinamento, consulta a página de Training do modelo.

Quais são os benefícios de usar o dataset COCO8-Pose?

O dataset COCO8-Pose oferece vários benefícios:

  • Tamanho Compacto: Com apenas 8 imagens, é fácil de gerir e perfeito para experimentos rápidos.
  • Dados Diversos: Apesar do seu tamanho reduzido, inclui uma variedade de cenas, úteis para testes completos de pipeline.
  • Depuração de Erros: Ideal para identificar erros de treinamento e realizar verificações de integridade antes de escalar para datasets maiores.

Para mais informações sobre as suas funcionalidades e uso, vê a seção Introdução ao Dataset.

Como o mosaico beneficia o processo de treinamento do YOLO26 usando o dataset COCO8-Pose?

O mosaico, demonstrado nas imagens de exemplo do dataset COCO8-Pose, combina várias imagens em uma, aumentando a variedade de objetos e cenas dentro de cada lote de treinamento. Esta técnica ajuda a melhorar a capacidade do modelo de generalizar através de vários tamanhos, proporções e contextos de objetos, melhorando, em última análise, o desempenho do modelo. Vê a seção Imagens de Exemplo e Anotações para ver imagens de exemplo.

Onde posso encontrar o arquivo YAML do dataset COCO8-Pose e como o uso?

O arquivo YAML do dataset COCO8-Pose pode ser encontrado em https://github.com/ultralytics/ultralytics/blob/main/ultralytics/cfg/datasets/coco8-pose.yaml. Este arquivo define a configuração do dataset, incluindo caminhos, classes e outras informações relevantes. Usa este arquivo com os scripts de treinamento do YOLO26 conforme mencionado na seção Exemplo de Treino.

Para mais FAQs e documentação detalhada, visita a Documentação do Ultralytics.

Comentários