YOLO Vision 2026:

Conjunto de Dados de Pontos-Chave da Mão#

Introdução#

O conjunto de dados Hand Keypoints da Ultralytics contém 26.768 imagens de mãos anotadas com 21 pontos-chave cada, geradas usando a biblioteca Google MediaPipe para alta precisão e consistência. Ele é compatível com os formatos do Ultralytics YOLO26 para treinar modelos de estimativa de pose.



Watch: Hand Keypoints Estimation with Ultralytics YOLO | Human Hand Pose Estimation Tutorial

Keypoints#

Diagrama de marcos dos pontos-chave da mão com 21 pontos

Cada mão é anotada com 21 pontos-chave da seguinte forma:

  1. Pulso
  2. Polegar (4 pontos)
  3. Dedo indicador (4 pontos)
  4. Dedo médio (4 pontos)
  5. Dedo anelar (4 pontos)
  6. Dedo mínimo (4 pontos)

Estrutura do Dataset#

  • Total de imagens: 26.768 (18.776 treino / 7.992 validação).
  • Classes: 1 (mão).
  • Pontos-chave: 21 por mão com tripletos (x, y, visibility).
  • Tamanho do download: ~369 MB.

Para um vocabulário de gestos personalizado além dos marcos genéricos de mão, a Ultralytics Platform lida com a rotulagem e o treinamento do teu próprio conjunto de dados a partir do navegador.

Aplicações#

Os pontos-chave da mão suportam várias aplicações do mundo real:

  • Reconhecimento de gestos: interação humano-computador e interfaces de controle sem toque.
  • Controles de AR/VR: interação precisa com objetos virtuais.
  • Manipulação robótica: controle refinado de mãos robóticas.
  • Saúde: análise do movimento das mãos para diagnósticos médicos.
  • Animação: captura de movimento para movimentos realistas das mãos.
  • Autenticação biométrica: sistemas de segurança baseados na geometria da mão.

YAML do Dataset#

Um arquivo YAML é 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 Hand Keypoints, o arquivo hand-keypoints.yaml é mantido em https://github.com/ultralytics/ultralytics/blob/main/ultralytics/cfg/datasets/hand-keypoints.yaml.

ultralytics/cfg/datasets/hand-keypoints.yaml
# Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license

# Hand Keypoints dataset by Ultralytics
# Documentation: https://docs.ultralytics.com/datasets/pose/hand-keypoints
# Example usage: yolo train data=hand-keypoints.yaml
# parent
# ├── ultralytics
# └── datasets
#     └── hand-keypoints ← downloads here (369 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: hand-keypoints # dataset root dir
train: images/train # train images (relative to 'path') 18776 images
val: images/val # val images (relative to 'path') 7992 images

# Keypoints
kpt_shape: [21, 3] # number of keypoints, number of dims (2 for x,y or 3 for x,y,visible)
flip_idx: [0, 1, 2, 4, 3, 10, 11, 12, 13, 14, 5, 6, 7, 8, 9, 15, 16, 17, 18, 19, 20]

# Classes
names:
  0: hand

# Keypoint names per class
kpt_names:
  0:
    - wrist
    - thumb_cmc
    - thumb_mcp
    - thumb_ip
    - thumb_tip
    - index_mcp
    - index_pip
    - index_dip
    - index_tip
    - middle_mcp
    - middle_pip
    - middle_dip
    - middle_tip
    - ring_mcp
    - ring_pip
    - ring_dip
    - ring_tip
    - pinky_mcp
    - pinky_pip
    - pinky_dip
    - pinky_tip

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

Uso#

Para treinar um modelo YOLO26n-pose no conjunto de dados Hand Keypoints por 100 épocas com um tamanho de imagem de 640, podes usar os seguintes trechos de código. Para uma lista abrangente de argumentos disponíveis, consulta a página de Treinamento do modelo.

Exemplo de Treinamento
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="hand-keypoints.yaml", epochs=100, imgsz=640)

Exemplos de Imagens e Anotações#

O conjunto de dados Hand Keypoints contém um conjunto diversificado de imagens com mãos humanas anotadas com pontos-chave. Aqui estão alguns exemplos de imagens do conjunto de dados, juntamente com suas anotações correspondentes:

Exemplo do conjunto de dados de estimativa de pose de pontos-chave da mão

  • Imagem em Mosaico: Esta imagem demonstra um lote de treino composto por imagens do conjunto de dados em mosaico. A mosaicação é uma técnica usada durante o treino que combina múltiplas imagens numa única imagem 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 objeto, proporções e contextos.

O exemplo mostra a variedade e a complexidade das imagens no conjunto de dados de Pontos-Chave da Mão e os benefícios de usar mosaico durante o processo de treinamento.

Citações e Agradecimentos#

Se você utilizar o conjunto de dados Hand Keypoints em seu trabalho de pesquisa ou desenvolvimento, por favor, reconheça as seguintes fontes:

Citação

Gostaríamos de agradecer às seguintes fontes por fornecer as imagens usadas neste conjunto de dados:

As imagens foram coletadas e usadas sob as respectivas licenças fornecidas por cada plataforma e são distribuídas sob a Licença Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International.

Também gostaríamos de agradecer ao criador deste conjunto de dados, Rion Dsilva, pela sua excelente contribuição para a pesquisa de Vision AI.

FAQ#

  • Carrega yolo26n-pose.pt e chama model.train(data="hand-keypoints.yaml", epochs=100, imgsz=640) — consulta o Train Example acima para ver os trechos completos em Python e CLI, e a página de Training do modelo para uma lista abrangente de argumentos.

  • Com 26.768 imagens anotadas e 21 pontos-chave por mão gerados via Google MediaPipe, o conjunto de dados Hand Keypoints oferece aos modelos de estimativa de pose a escala e a precisão de anotação necessárias para tarefas de estimativa de pose avançada. Vê a seção Pontos-chave para ver o detalhamento completo dos marcos.

  • O Hand Keypoints suporta reconhecimento de gestos, controles de AR/VR, manipulação robótica, análise de movimento em saúde, animação e autenticação biométrica — consulta a seção Aplicações para obter detalhes sobre cada uma.

  • O conjunto de dados de Pontos-Chave da Mão é dividido em dois subconjuntos:

    1. Treino: Contém 18.776 imagens para treinar modelos de estimativa de pose.
    2. Val: Contém 7.992 imagens para fins de validação durante o treinamento do modelo.

    Esta estrutura garante um processo abrangente de treinamento e validação. Para mais detalhes, consulta a seção Estrutura do Conjunto de Dados.

  • A configuração do conjunto de dados é definida em um arquivo YAML, que inclui caminhos, classes e outras informações relevantes. O arquivo hand-keypoints.yaml pode ser encontrado em hand-keypoints.yaml.

    Para usar este arquivo YAML para treinamento, especifica-o no teu script de treinamento ou comando CLI conforme mostrado no exemplo de treinamento acima. Para mais detalhes, consulta a seção YAML do Conjunto de Dados.

Comentários