Conjunto de datos de puntos clave de la mano
Introducción
El conjunto de datos de puntos clave de la mano contiene 26.768 imágenes de manos anotadas con puntos clave, lo que lo hace adecuado para entrenar modelos como Ultralytics YOLO para tareas de estimación de la pose. Las anotaciones se generaron utilizando la biblioteca Google MediaPipe, lo que garantiza una alta precisión y consistencia, y el conjunto de datos es compatible con los formatos Ultralytics YOLO11.
Ver: Estimación de puntos clave de la mano con Ultralytics YOLO11 | Tutorial de estimación de la pose de la mano humana
Puntos de referencia de la mano
Puntos clave
El conjunto de datos incluye puntos clave para la detección de manos. Los puntos clave se anotan de la siguiente manera:
- Muñeca
- Pulgar (4 puntos)
- Dedo índice (4 puntos)
- Dedo medio (4 puntos)
- Dedo anular (4 puntos)
- Dedo meñique (4 puntos)
Cada mano tiene un total de 21 puntos clave.
Características clave
- Conjunto de datos grande: 26.768 imágenes con anotaciones de puntos clave de la mano.
- Compatibilidad con YOLO11: Listo para usar con modelos YOLO11.
- 21 puntos clave: Representación detallada de la pose de la mano.
Estructura del conjunto de datos
El conjunto de datos de puntos clave de la mano se divide en dos subconjuntos:
- Entrenamiento: Este subconjunto contiene 18.776 imágenes del conjunto de datos de puntos clave de la mano, anotadas para entrenar modelos de estimación de pose.
- Val: Este subconjunto contiene 7.992 imágenes que se pueden utilizar para fines de validación durante el entrenamiento del modelo.
Aplicaciones
Los puntos clave de la mano se pueden utilizar para el reconocimiento de gestos, los controles de AR/VR, la manipulación robótica y el análisis del movimiento de la mano en la atención sanitaria. También se pueden aplicar en la animación para la captura de movimiento y en los sistemas de autenticación biométrica para la seguridad. El seguimiento detallado de las posiciones de los dedos permite una interacción precisa con objetos virtuales e interfaces de control sin contacto.
YAML del conjunto de datos
Se utiliza un archivo YAML (Yet Another Markup Language) para definir la configuración del conjunto de datos. Contiene información sobre las rutas, las clases y otra información relevante del conjunto de datos. En el caso del conjunto de datos de puntos clave de la mano, hand-keypoints.yaml
archivo se mantiene en 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
Uso
Para entrenar un modelo YOLO11n-pose en el conjunto de datos de puntos clave de la mano durante 100 épocas con un tamaño de imagen de 640, puede utilizar los siguientes fragmentos de código. Para obtener una lista completa de los argumentos disponibles, consulte la página de Entrenamiento del modelo.
Ejemplo de entrenamiento
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
sample_images y anotaciones
El conjunto de datos de puntos clave de la mano contiene un conjunto diverso de imágenes con manos humanas anotadas con puntos clave. Aquí hay algunos ejemplos de imágenes del conjunto de datos, junto con sus anotaciones correspondientes:
- Imagen en mosaico: Esta imagen muestra un lote de entrenamiento compuesto por imágenes en mosaico del conjunto de datos. El mosaico es una técnica utilizada durante el entrenamiento que combina varias imágenes en una sola imagen para aumentar la variedad de objetos y escenas dentro de cada lote de entrenamiento. Esto ayuda a mejorar la capacidad del modelo para generalizar a diferentes tamaños de objetos, relaciones de aspecto y contextos.
El ejemplo muestra la variedad y la complejidad de las imágenes en el conjunto de datos de puntos clave de la mano y los beneficios de usar el mosaico durante el proceso de entrenamiento.
Citas y agradecimientos
Si utiliza el conjunto de datos de puntos clave de la mano en su trabajo de investigación o desarrollo, por favor reconozca las siguientes fuentes:
Nos gustaría agradecer a las siguientes fuentes por proporcionar las imágenes utilizadas en este conjunto de datos:
Las imágenes fueron recopiladas y utilizadas bajo las licencias respectivas proporcionadas por cada plataforma y se distribuyen bajo la Licencia Internacional Creative Commons Atribución-NoComercial-CompartirIgual 4.0.
También nos gustaría reconocer al creador de este conjunto de datos, Rion Dsilva, por su gran contribución a la investigación en IA de Visión.
Preguntas frecuentes
¿Cómo entreno un modelo YOLO11 en el conjunto de datos de puntos clave de la mano?
Para entrenar un modelo YOLO11 en el conjunto de datos Hand Keypoints, puede usar python o la interfaz de línea de comandos (CLI). Aquí hay un ejemplo para entrenar un modelo YOLO11n-pose durante 100 épocas con un tamaño de imagen de 640:
Ejemplo
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
Para obtener una lista completa de los argumentos disponibles, consulte la página de Entrenamiento del modelo.
¿Cuáles son las características clave del conjunto de datos de puntos clave de la mano?
El conjunto de datos Hand Keypoints está diseñado para tareas avanzadas de estimación de la pose e incluye varias características clave:
- Conjunto de datos grande: Contiene 26,768 imágenes con anotaciones de puntos clave de la mano.
- Compatibilidad con YOLO11: Listo para usar con modelos YOLO11.
- 21 puntos clave: Representación detallada de la pose de la mano, incluyendo la muñeca y las articulaciones de los dedos.
Para obtener más detalles, puede explorar la sección Conjunto de datos Hand Keypoints.
¿Qué aplicaciones pueden beneficiarse del uso del conjunto de datos de puntos clave de la mano?
El conjunto de datos Hand Keypoints se puede aplicar en varios campos, incluyendo:
- Reconocimiento de gestos: Mejora de la interacción humano-computadora.
- Controles de RA/RV: Mejora de la experiencia del usuario en realidad aumentada y virtual.
- Manipulación robótica: Permite un control preciso de las manos robóticas.
- Atención médica: Análisis de los movimientos de la mano para diagnósticos médicos.
- Animación: Captura de movimiento para animaciones realistas.
- Autenticación biométrica: Mejora de los sistemas de seguridad.
Para obtener más información, consulte la sección Aplicaciones.
¿Cómo está estructurado el conjunto de datos de puntos clave de la mano?
El conjunto de datos Hand Keypoints se divide en dos subconjuntos:
- Train: Contiene 18,776 imágenes para entrenar modelos de estimación de pose.
- Val: Contiene 7,992 imágenes para fines de validación durante el entrenamiento del modelo.
Esta estructura asegura un proceso integral de entrenamiento y validación. Para obtener más detalles, consulte la sección Estructura del conjunto de datos.
¿Cómo utilizo el archivo YAML del conjunto de datos para el entrenamiento?
La configuración del conjunto de datos se define en un archivo YAML, que incluye rutas, clases y otra información relevante. El hand-keypoints.yaml
el archivo se puede encontrar en hand-keypoints.yaml.
Para usar este archivo YAML para el entrenamiento, especifíquelo en su script de entrenamiento o comando CLI como se muestra en el ejemplo de entrenamiento anterior. Para obtener más detalles, consulte la sección Dataset YAML.