Datensatz mit Handschlüsselpunkten#
Einführung#
Der Datensatz mit Handschlüsselpunkten von Ultralytics enthält 26.768 Bilder von Händen, die jeweils mit 21 Schlüsselpunkten annotiert sind. Die Annotationen wurden mit der Bibliothek Google MediaPipe erstellt, um eine hohe Genauigkeit und Konsistenz zu erreichen. Der Datensatz ist mit den Formaten von Ultralytics YOLO26 zum Trainieren von Modellen zur Pose-Schätzung kompatibel.
Ansehen: Schätzung von Hand-Schlüsselpunkten mit Ultralytics YOLO | Tutorial zur Posenschätzung menschlicher Hände
Schlüsselpunkte#

Jede Hand ist mit den folgenden 21 Schlüsselpunkten annotiert:
- Handgelenk
- Daumen (4 Punkte)
- Zeigefinger (4 Punkte)
- Mittelfinger (4 Punkte)
- Ringfinger (4 Punkte)
- Kleiner Finger (4 Punkte)
Datensatzstruktur#
- Bilder insgesamt: 26.768 (18.776 train / 7.992 val).
- Klassen: 1 (hand).
- Schlüsselpunkte: 21 pro Hand mit Tripeln aus
(x, y, visibility). - Downloadgröße: ~369 MB.
Für ein eigenes Gestikvokabular, das über allgemeine Handlandmarken hinausgeht, ermöglicht die Ultralytics Platform, deinen eigenen Datensatz direkt im Browser zu annotieren und zu trainieren.
Anwendungsfälle#
Handschlüsselpunkte eignen sich für verschiedene praktische Anwendungen:
- Gestenerkennung: Mensch-Computer-Interaktion und berührungslose Steuerungsschnittstellen.
- AR/VR-Steuerung: präzise Interaktion mit virtuellen Objekten.
- Robotermanipulation: präzise Steuerung von Roboterhänden.
- Gesundheitswesen: Analyse von Handbewegungen für medizinische Diagnosen.
- Animation: Bewegungserfassung für realistische Handbewegungen.
- Biometrische Authentifizierung: Sicherheitssysteme auf Grundlage der Handgeometrie.
YAML-Datei des Datensatzes#
Eine YAML-Datei dient zum Festlegen der Datensatzkonfiguration. Sie enthält Informationen zu den Pfaden, Klassen und weiteren relevanten Angaben des Datensatzes. Für den Datensatz mit Handschlüsselpunkten wird die Datei hand-keypoints.yaml unter https://github.com/ultralytics/ultralytics/blob/main/ultralytics/cfg/datasets/hand-keypoints.yaml gepflegt.
# 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.zipVerwendung#
Mit den folgenden Codeausschnitten kannst du ein YOLO26n-pose-Modell 100 Epochen lang mit einer Bildgröße von 640 auf dem Datensatz mit Handschlüsselpunkten trainieren. Eine umfassende Liste der verfügbaren Argumente findest du auf der Seite Training des Modells.
from ultralytics import YOLO
# Ein Modell laden
model = YOLO("yolo26n-pose.pt") # ein vortrainiertes Modell laden (für das Training empfohlen)
# Das Modell trainieren
results = model.train(data="hand-keypoints.yaml", epochs=100, imgsz=640)Beispielbilder und Annotationen#
Der Datensatz mit Handschlüsselpunkten enthält vielfältige Bilder menschlicher Hände, die mit Schlüsselpunkten annotiert sind. Hier sind einige Beispielbilder aus dem Datensatz mit den zugehörigen Annotationen:

- Mosaikbild: Dieses Bild zeigt einen Trainingsbatch aus mosaikartig kombinierten Datensatzbildern. Beim Mosaikverfahren werden während des Trainings mehrere Bilder zu einem einzigen Bild kombiniert, um die Vielfalt der Objekte und Szenen in jedem Trainingsbatch zu erhöhen. Dadurch kann das Modell besser auf unterschiedliche Objektgrößen, Seitenverhältnisse und Kontexte generalisieren.
Das Beispiel veranschaulicht die Vielfalt und Komplexität der Bilder im Datensatz mit Handschlüsselpunkten sowie die Vorteile des Mosaikverfahrens während des Trainings.
Zitate und Danksagungen#
Wenn du den Datensatz mit Handschlüsselpunkten in deiner Forschung oder Entwicklungsarbeit verwendest, nenne bitte die folgenden Quellen:
Wir möchten den folgenden Quellen für die Bereitstellung der in diesem Datensatz verwendeten Bilder danken:
Die Bilder wurden gemäß den von den jeweiligen Plattformen bereitgestellten Lizenzen gesammelt und verwendet und werden unter der Creative-Commons-Lizenz Namensnennung-Nicht kommerziell-Weitergabe unter gleichen Bedingungen 4.0 International verbreitet.
Wir möchten außerdem dem Ersteller dieses Datensatzes, Rion Dsilva, für seinen wichtigen Beitrag zur Forschung im Bereich Vision AI danken.
Häufig gestellte Fragen#
Lade
yolo26n-pose.ptund rufemodel.train(data="hand-keypoints.yaml", epochs=100, imgsz=640)auf – im obigen Trainingsbeispiel findest du die vollständigen Python- und CLI-Codeausschnitte. Eine umfassende Liste der Argumente enthält die Seite Training des Modells.Mit 26.768 annotierten Bildern und 21 Keypoints pro Hand, die mit Google MediaPipe erzeugt wurden, bietet der Hand-Keypoints-Datensatz Pose-Estimation-Modellen den Umfang und die Annotationsgenauigkeit, die für Aufgaben der fortgeschrittenen Pose Estimation erforderlich sind. Im Abschnitt Keypoints findest du eine vollständige Übersicht aller Landmarken.
Hand Keypoints unterstützt Gestenerkennung, AR/VR-Steuerung, robotische Manipulation, Bewegungsanalysen im Gesundheitswesen, Animation und biometrische Authentifizierung – im Abschnitt Anwendungen findest du Details zu den einzelnen Bereichen.
Der Hand-Keypoints-Datensatz ist in zwei Teilmengen unterteilt:
- Train: Enthält 18.776 Bilder zum Trainieren von Pose-Estimation-Modellen.
- Val: Enthält 7.992 Bilder zur Validierung während des Modelltrainings.
Diese Struktur gewährleistet einen umfassenden Trainings- und Validierungsprozess. Weitere Informationen findest du im Abschnitt Datensatzstruktur.
Die Datensatzkonfiguration ist in einer YAML-Datei definiert, die Pfade, Klassen und weitere relevante Informationen enthält. Die Datei
hand-keypoints.yamlfindest du unter hand-keypoints.yaml.Um diese YAML-Datei für das Training zu verwenden, gib sie wie im obigen Trainingsbeispiel in deinem Trainingsskript oder CLI-Befehl an. Weitere Informationen findest du im Abschnitt Datensatz-YAML.



