Passer au contenu

Ensemble de données de points clés des mains

Introduction

Le dataset hand-keypoints contient 26 768 images de mains annotées avec des keypoints, ce qui le rend approprié pour l'entraînement de modèles comme Ultralytics YOLO pour les tâches d'estimation de pose. Les annotations ont été générées à l'aide de la bibliothèque Google MediaPipe, garantissant une grande précision et une grande cohérence, et le dataset est compatible avec les formats Ultralytics YOLO11.



Regarder : Estimation des points clés des mains avec Ultralytics YOLO11 | Tutoriel sur l'estimation de la pose de la main humaine

Points de repère de la main

Points de repère de la main

PointsClés

L'ensemble de données comprend des points clés pour la détection des mains. Les points clés sont annotés comme suit :

  1. Poignet
  2. Pouce (4 points)
  3. Index (4 points)
  4. Majeur (4 points)
  5. Annulaire (4 points)
  6. Auriculaire (4 points)

Chaque main a un total de 21 points clés.

Principales caractéristiques

  • Ensemble de données volumineux : 26 768 images avec des annotations de points clés de la main.
  • Compatibilité YOLO11 : Prêt à être utilisé avec les modèles YOLO11.
  • 21 points clés : représentation détaillée de la pose de la main.

Structure du jeu de données

L'ensemble de données de keypoints de la main est divisé en deux sous-ensembles :

  1. Train: Ce sous-ensemble contient 18 776 images du jeu de données de points clés de la main, annotées pour l’entraînement des modèles d’estimation de pose.
  2. Val : Ce sous-ensemble contient 7 992 images qui peuvent être utilisées à des fins de validation pendant la formation du modèle.

Applications

Les points clés de la main peuvent être utilisés pour la reconnaissance des gestes, les contrôles AR/VR, la manipulation robotique et l'analyse des mouvements de la main dans le domaine de la santé. Ils peuvent également être appliqués dans l'animation pour la capture de mouvement et les systèmes d'authentification biométrique pour la sécurité. Le suivi détaillé des positions des doigts permet une interaction précise avec les objets virtuels et les interfaces de contrôle sans contact.

YAML du jeu de données

Un fichier YAML (Yet Another Markup Language) est utilisé pour définir la configuration de l'ensemble de données. Il contient des informations sur les chemins d'accès, les classes et d'autres informations pertinentes de l'ensemble de données. Dans le cas de l'ensemble de données Hand Keypoints, le hand-keypoints.yaml fichier est maintenu à l'adresse 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

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

Utilisation

Pour entraîner un modèle YOLO11n-pose sur le jeu de données Hand Keypoints pendant 100 epochs avec une taille d'image de 640, vous pouvez utiliser les extraits de code suivants. Pour une liste complète des arguments disponibles, consultez la page Formation du modèle.

Exemple d'entraînement

from ultralytics import YOLO

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

# Train the model
results = model.train(data="hand-keypoints.yaml", epochs=100, imgsz=640)
# Start training from a pretrained *.pt model
yolo pose train data=hand-keypoints.yaml model=yolo11n-pose.pt epochs=100 imgsz=640

Images et annotations d'exemple

L'ensemble de données de keypoints de la main contient un ensemble diversifié d'images avec des mains humaines annotées avec des keypoints. Voici quelques exemples d'images de l'ensemble de données, ainsi que leurs annotations correspondantes :

Exemple d'image de l'ensemble de données

  • Image mosaïque : Cette image montre un lot d'entraînement composé d'images d'ensemble de données en mosaïque. La mosaïque est une technique utilisée pendant l'entraînement qui combine plusieurs images en une seule image pour augmenter la variété des objets et des scènes dans chaque lot d'entraînement. Cela permet d'améliorer la capacité du modèle à se généraliser à différentes tailles d'objets, rapports hauteur/largeur et contextes.

Cet exemple illustre la variété et la complexité des images dans l'ensemble de données Hand Keypoints, ainsi que les avantages de l'utilisation du mosaïquage pendant le processus d'entraînement.

Citations et remerciements

Si vous utilisez l'ensemble de données hand-keypoints dans vos travaux de recherche ou de développement, veuillez mentionner les sources suivantes :

Nous tenons à remercier les sources suivantes pour avoir fourni les images utilisées dans ce jeu de données :

Les images ont été collectées et utilisées sous les licences respectives fournies par chaque plateforme et sont distribuées sous la licence internationale Creative Commons Attribution-NonCommercial-ShareAlike 4.0.

Nous tenons également à remercier le créateur de cet ensemble de données, Rion Dsilva, pour son excellente contribution à la recherche en IA de vision.

FAQ

Comment entraîner un modèle YOLO11 sur l'ensemble de données Hand Keypoints ?

Pour entraîner un modèle YOLO11 sur l'ensemble de données Hand Keypoints, vous pouvez utiliser python ou l'interface de ligne de commande (CLI). Voici un exemple d'entraînement d'un modèle YOLO11n-pose pendant 100 epochs avec une taille d'image de 640 :

Exemple

from ultralytics import YOLO

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

# Train the model
results = model.train(data="hand-keypoints.yaml", epochs=100, imgsz=640)
# Start training from a pretrained *.pt model
yolo pose train data=hand-keypoints.yaml model=yolo11n-pose.pt epochs=100 imgsz=640

Pour une liste complète des arguments disponibles, consultez la page Entraînement du modèle.

Quelles sont les principales caractéristiques du jeu de données Hand Keypoints ?

Le dataset Hand Keypoints est conçu pour les tâches avancées d'estimation de pose et comprend plusieurs caractéristiques clés :

  • Ensemble de données volumineux : Contient 26 768 images avec des annotations de points clés de la main.
  • Compatibilité YOLO11 : Prêt à être utilisé avec les modèles YOLO11.
  • 21 points clés : représentation détaillée de la pose de la main, y compris les articulations du poignet et des doigts.

Pour plus de détails, vous pouvez explorer la section Ensemble de données de points clés de la main.

Quelles applications peuvent bénéficier de l'utilisation du jeu de données Hand Keypoints ?

L'ensemble de données Hand Keypoints peut être appliqué dans divers domaines, notamment :

  • Reconnaissance gestuelle : Amélioration de l'interaction homme-machine.
  • Commandes AR/VR : Amélioration de l'expérience utilisateur dans la réalité augmentée et virtuelle.
  • Manipulation robotique : Permettre un contrôle précis des mains robotiques.
  • Santé : Analyse les mouvements de la main pour les diagnostics médicaux.
  • Animation : Capture de mouvement pour des animations réalistes.
  • Authentification biométrique : Amélioration des systèmes de sécurité.

Pour plus d'informations, consultez la section Applications.

Comment l'ensemble de données Hand Keypoints est-il structuré ?

L'ensemble de données Hand Keypoints est divisé en deux sous-ensembles :

  1. Train: Contient 18 776 images pour l’entraînement des modèles d’estimation de pose.
  2. Val : Contient 7 992 images à des fins de validation pendant l’entraînement du modèle.

Cette structure garantit un processus complet d'entraînement et de validation. Pour plus de détails, consultez la section Structure de l'ensemble de données.

Comment utiliser le fichier YAML du jeu de données pour l'entraînement ?

La configuration de l'ensemble de données est définie dans un fichier YAML, qui comprend les chemins d'accès, les classes et d'autres informations pertinentes. Le hand-keypoints.yaml fichier se trouve à l'adresse hand-keypoints.yaml.

Pour utiliser ce fichier YAML pour l'entraînement, spécifiez-le dans votre script d'entraînement ou votre commande CLI, comme indiqué dans l'exemple d'entraînement ci-dessus. Pour plus de détails, consultez la section Dataset YAML.



📅 Créé il y a 11 mois ✏️ Mis à jour il y a 5 mois

Commentaires