Ultralytics YOLO27:

Dataset dei punti chiave della mano#

Introduzione#

Il dataset dei punti chiave della mano di Ultralytics contiene 26.768 immagini di mani annotate con 21 punti chiave ciascuna, generate utilizzando la libreria Google MediaPipe per garantire elevata accuratezza e coerenza. È compatibile con i formati di Ultralytics YOLO26 per addestrare modelli di stima della posa.



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

Punti chiave#

Diagramma dei punti di riferimento dei punti chiave della mano con 21 punti

Ogni mano è annotata con 21 punti chiave, come segue:

  1. Polso
  2. Pollice (4 punti)
  3. Indice (4 punti)
  4. Medio (4 punti)
  5. Anulare (4 punti)
  6. Mignolo (4 punti)

Struttura del dataset#

  • Immagini totali: 26.768 (18.776 per il train / 7.992 per la val).
  • Classi: 1 (mano).
  • Punti chiave: 21 per mano con triplette (x, y, visibility).
  • Dimensioni del download: ~369 MB.

Per un vocabolario di gesti personalizzato che vada oltre i punti di riferimento generici della mano, Ultralytics Platform gestisce l'annotazione e l'addestramento del tuo dataset direttamente dal browser.

Applicazioni#

I punti chiave della mano supportano diverse applicazioni del mondo reale:

  • Riconoscimento dei gesti: interazione uomo-computer e interfacce di controllo senza contatto.
  • Controlli AR/VR: interazione precisa con oggetti virtuali.
  • Manipolazione robotica: controllo dettagliato delle mani robotiche.
  • Sanità: analisi dei movimenti della mano per la diagnostica medica.
  • Animazione: acquisizione del movimento per movimenti realistici della mano.
  • Autenticazione biometrica: sistemi di sicurezza basati sulla geometria della mano.

YAML del dataset#

Un file YAML viene utilizzato per definire la configurazione del dataset. Contiene informazioni sui percorsi del dataset, sulle classi e su altre informazioni rilevanti. Nel caso del dataset dei punti chiave della mano, il file hand-keypoints.yaml è mantenuto all'indirizzo 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

Utilizzo#

Per addestrare un modello YOLO26n-pose sul dataset dei punti chiave della mano per 100 epoche con una dimensione delle immagini di 640, puoi utilizzare i seguenti frammenti di codice. Per un elenco completo degli argomenti disponibili, consulta la pagina di addestramento del modello.

Esempio di addestramento
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)

Immagini ed esempi di annotazioni#

Il dataset dei punti chiave della mano contiene un insieme diversificato di immagini con mani umane annotate con punti chiave. Ecco alcuni esempi di immagini del dataset, insieme alle relative annotazioni:

Esempio del dataset per la stima della posa dei punti chiave della mano

  • Immagine a mosaico: questa immagine mostra un batch di addestramento composto da immagini del dataset unite a mosaico. La composizione a mosaico è una tecnica utilizzata durante l'addestramento che combina più immagini in un'unica immagine per aumentare la varietà di oggetti e scene all'interno di ogni batch di addestramento. Questo contribuisce a migliorare la capacità del modello di generalizzare a diverse dimensioni degli oggetti, proporzioni e contesti.

L'esempio mostra la varietà e la complessità delle immagini nel dataset dei punti chiave della mano e i vantaggi dell'utilizzo della mosaicatura durante il processo di addestramento.

Citazioni e ringraziamenti#

Se utilizzi il dataset dei punti chiave della mano nelle tue attività di ricerca o sviluppo, cita le seguenti fonti:

Citazione

Desideriamo ringraziare le seguenti fonti per aver fornito le immagini utilizzate in questo dataset:

Le immagini sono state raccolte e utilizzate secondo le rispettive licenze fornite da ciascuna piattaforma e sono distribuite secondo la Licenza internazionale Creative Commons Attribuzione-Non commerciale-Condividi allo stesso modo 4.0.

Desideriamo inoltre riconoscere il contributo dell'autore di questo dataset, Rion Dsilva, per il suo prezioso contributo alla ricerca sull'AI per la visione artificiale.

FAQ#

  • Carica yolo26n-pose.pt e richiama model.train(data="hand-keypoints.yaml", epochs=100, imgsz=640): consulta il Esempio di addestramento precedente per i frammenti completi in Python e CLI, e la pagina Addestramento del modello per un elenco completo degli argomenti.

  • Con 26.768 immagini annotate e 21 punti chiave per mano generati tramite Google MediaPipe, il dataset dei punti chiave della mano offre ai modelli di stima della posa la scala e l'accuratezza delle annotazioni necessarie per le attività di stima avanzata della posa. Consulta la sezione Punti chiave per la descrizione completa dei punti di riferimento.

  • I punti chiave della mano supportano il riconoscimento dei gesti, i controlli AR/VR, la manipolazione robotica, l'analisi dei movimenti in ambito sanitario, l'animazione e l'autenticazione biometrica: consulta la sezione Applicazioni per i dettagli su ciascuna.

  • Il dataset dei punti chiave della mano è suddiviso in due sottoinsiemi:

    1. Train: contiene 18.776 immagini per addestrare modelli di stima della posa.
    2. Val: contiene 7.992 immagini per la validazione durante l'addestramento del modello.

    Questa struttura garantisce un processo completo di addestramento e validazione. Per ulteriori dettagli, consulta la sezione Struttura del dataset.

  • La configurazione del dataset è definita in un file YAML, che include percorsi, classi e altre informazioni rilevanti. Il file hand-keypoints.yaml è disponibile all'indirizzo hand-keypoints.yaml.

    Per utilizzare questo file YAML per l'addestramento, specificalo nello script di addestramento o nel comando CLI, come mostrato nell'esempio di addestramento precedente. Per ulteriori dettagli, consulta la sezione YAML del dataset.

Commenti