Ultralytics YOLO27:
Get Started

Conjunto de dados COCO8-Pose#

Introdução#

O Ultralytics COCO8-Pose é um conjunto de dados pequeno, mas versátil, para estimativa de pose, composto pelas 8 primeiras imagens do conjunto COCO train 2017 (4 para treinamento e 4 para validação), que usa um esquema de 17 pontos-chave para a única classe "person". Esse conjunto de dados é ideal para testar e depurar modelos de estimativa de pose ou experimentar novas abordagens de detecção de pontos-chave. Com 8 imagens, é pequeno o bastante para ser fácil de gerenciar, mas diversificado o suficiente para testar pipelines de treinamento em busca de erros e servir como verificação antes do treinamento no conjunto de dados COCO-Pose completo.

Estrutura do conjunto de dados#

  • Total de imagens: 8 (4 train / 4 val).
  • Classes: 1 (person), com 17 tipos de pontos-chave por anotação.
  • Tamanho do download: ~1 MB.
  • Estrutura de diretórios recomendada: datasets/coco8-pose/images/{train,val} e datasets/coco8-pose/labels/{train,val}, com pontos-chave no formato YOLO armazenados como arquivos .txt.

Explore o COCO8-Pose na plataforma Ultralytics para navegar por todas as imagens com seus esqueletos de pontos-chave, ver as distribuições de pontos-chave e classes na aba Gráficos e cloná-lo para treinar seu próprio modelo na nuvem.

YAML do conjunto de dados#

Um arquivo YAML é usado para definir a configuração do conjunto de dados. Ele contém informações sobre os caminhos, as classes e outros dados relevantes do conjunto de dados. No caso do conjunto de dados 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

Uso#

Para treinar um modelo YOLO26n-pose no conjunto de dados COCO8-Pose por 100 épocas com um tamanho de imagem de 640, você pode usar os seguintes trechos de código. Para consultar a lista completa de argumentos disponíveis, acesse a página de Treinamento do modelo.

Exemplo de treino
from ultralytics import YOLO

# Carregar um modelo
model = YOLO("yolo26n-pose.pt")  # carregue um modelo pré-treinado (recomendado para treinamento)

# Treinar o modelo
results = model.train(data="coco8-pose.yaml", epochs=100, imgsz=640)

Imagens de exemplo e anotações#

Aqui estão alguns exemplos de imagens do conjunto de dados COCO8-Pose, junto com suas anotações correspondentes:

COCO8-pose keypoint estimation dataset mosaic
  • Imagem em mosaico: esta imagem mostra um lote de treinamento composto por imagens do conjunto de dados organizadas em mosaico. A criação de mosaicos é uma técnica usada durante o treinamento que combina várias imagens numa só para aumentar a variedade de objetos e cenas em cada lote de treinamento. Isso ajuda a melhorar a capacidade do modelo de generalizar para diferentes tamanhos de objetos, proporções e contextos.

Citações e agradecimentos#

Se usares o conjunto de dados COCO no teu trabalho de pesquisa ou desenvolvimento, 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 valioso recurso para a comunidade de visão computacional. Para mais informações sobre o conjunto de dados COCO e os seus criadores, visita o site do conjunto de dados COCO.

Perguntas frequentes#

  • O conjunto de dados COCO8-Pose é um conjunto pequeno e versátil para estimativa de pose, que inclui as 8 primeiras imagens do conjunto COCO train 2017, sendo 4 imagens para treinamento e 4 para validação. Ele foi desenvolvido para testar e depurar modelos de estimativa de pose e experimentar novas abordagens de detecção de pontos-chave. Esse conjunto de dados é ideal para experimentos rápidos com o Ultralytics YOLO26. Para mais detalhes sobre a configuração do conjunto de dados, consulte o arquivo YAML do conjunto de dados.

  • Carregue yolo26n-pose.pt e chame model.train(data="coco8-pose.yaml", epochs=100, imgsz=640) — consulte o Exemplo de treinamento acima para ver os trechos completos de Python e CLI, e a página de Treinamento do modelo para obter uma lista abrangente de argumentos.

  • Com 8 imagens no total (4 train / 4 val), 1 classe, um esquema de 17 pontos-chave e um download de ~1 MB, o COCO8-Pose é pequeno o bastante para ser gerenciado em segundos, mas diversificado o suficiente para verificar se há erros em um pipeline de treinamento de pose antes de ampliá-lo para o conjunto de dados COCO-Pose completo. Para saber mais sobre seus recursos e uso, consulte a seção Introdução ao conjunto de dados.

  • O uso de mosaicos combina várias imagens em uma, aumentando a variedade de objetos e cenários em cada lote de treinamento, o que ajuda o modelo a generalizar para diferentes tamanhos de objetos, proporções e contextos. Veja um exemplo na seção Imagens de amostra e anotações.

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

    Para saber mais sobre modelos de pontos-chave, consulte a documentação da tarefa de Estimativa de pose.

Comentários