Meet YOLO26: next-gen vision AI.

Link to this sectionНабор данных Hand Keypoints#

Link to this sectionВведение#

Набор данных hand-keypoints содержит 26 768 изображений рук с аннотированными ключевыми точками, что делает его подходящим для обучения таких моделей, как Ultralytics YOLO, для задач оценки позы (pose estimation). Аннотации были созданы с использованием библиотеки Google MediaPipe, что гарантирует высокую точность и согласованность, а сам набор данных совместим с форматами Ultralytics YOLO26.



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

Link to this sectionОриентиры кисти#

Схема ориентиров ключевых точек кисти с 21 точкой

Link to this sectionKeypoints#

В набор данных включены ключевые точки для обнаружения кисти. Ключевые точки аннотированы следующим образом:

  1. Запястье
  2. Большой палец (4 точки)
  3. Указательный палец (4 точки)
  4. Средний палец (4 точки)
  5. Безымянный палец (4 точки)
  6. Мизинец (4 точки)

Каждая кисть имеет в общей сложности 21 ключевую точку.

Link to this sectionОсновные характеристики#

  • Большой набор данных: 26 768 изображений с аннотациями ключевых точек кисти.
  • Совместимость с YOLO26: Метки поставляются в формате YOLO для ключевых точек и готовы к использованию с моделями YOLO26.
  • 21 ключевая точка: Детальное представление позы кисти, охватывающее запястье и по четыре точки на каждом пальце.

Link to this sectionСтруктура набора данных#

Набор данных hand keypoints разделен на два подмножества:

  1. Train: Это подмножество содержит 18 776 изображений из набора данных hand keypoints, аннотированных для обучения моделей оценки позы.
  2. Val: Это подмножество содержит 7 992 изображения, которые можно использовать для валидации в процессе обучения модели.

Link to this sectionПриложения#

Ключевые точки кисти можно использовать для распознавания жестов, управления в AR/VR, манипуляций роботами и анализа движения рук в медицине. Их также можно применять в анимации для захвата движений и в системах биометрической аутентификации для обеспечения безопасности. Детальное отслеживание положения пальцев позволяет осуществлять точное взаимодействие с виртуальными объектами и бесконтактными интерфейсами управления.

Link to this sectionYAML набора данных#

Для определения конфигурации набора данных используется файл YAML (Yet Another Markup Language). Он содержит информацию о путях к данным, классах и другую соответствующую информацию. В случае с набором данных Hand Keypoints файл hand-keypoints.yaml поддерживается по адресу 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

Link to this sectionИспользование#

Чтобы обучить модель YOLO26n-pose на наборе данных Hand Keypoints в течение 100 эпох с размером изображения 640, ты можешь использовать следующие фрагменты кода. Полный список доступных аргументов смотри на странице Обучение модели.

Пример обучения
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)

Link to this sectionПримеры изображений и аннотаций#

Набор данных Hand keypoints содержит разнообразный набор изображений человеческих рук, аннотированных ключевыми точками. Вот несколько примеров изображений из этого набора данных вместе с соответствующими аннотациями:

Образец набора данных для оценки позы кисти

  • Мозаичное изображение: это изображение демонстрирует обучающую выборку, состоящую из мозаичных изображений набора данных. Мозаика — это метод, используемый во время обучения, который объединяет несколько изображений в одно, чтобы увеличить разнообразие объектов и сцен в каждой обучающей выборке. Это помогает улучшить способность модели к обобщению на разные размеры объектов, соотношения сторон и контексты.

Этот пример демонстрирует разнообразие и сложность изображений в наборе данных Hand Keypoints, а также преимущества использования мозаики в процессе обучения.

Link to this sectionЦитирование и благодарности#

Если ты используешь набор данных hand-keypoints в своей исследовательской работе или разработке, пожалуйста, укажи следующие источники:

Цитата

Мы хотели бы поблагодарить следующие источники за предоставление изображений, использованных в этом наборе данных:

Изображения были собраны и использованы в соответствии с лицензиями, предоставленными каждой платформой, и распространяются на условиях лицензии Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.

Мы также хотели бы выразить признательность создателю этого набора данных, Rion Dsilva, за его значительный вклад в исследования в области Vision AI.

Link to this sectionЧасто задаваемые вопросы (FAQ)#

Link to this sectionКак мне обучить модель YOLO26 на наборе данных Hand Keypoints?#

Для обучения модели YOLO26 на наборе данных Hand Keypoints ты можешь использовать Python или интерфейс командной строки (CLI). Вот пример обучения модели YOLO26n-pose в течение 100 эпох с размером изображения 640:

Пример
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)

Для полного списка доступных аргументов смотри страницу Обучение (Training) модели.

Link to this sectionКаковы ключевые особенности набора данных Hand Keypoints?#

Набор данных Hand Keypoints предназначен для продвинутых задач оценки позы и включает в себя несколько ключевых особенностей:

  • Большой набор данных: Содержит 26 768 изображений с аннотациями ключевых точек кисти.
  • Совместимость с YOLO26: Готов к использованию с моделями YOLO26.
  • 21 ключевая точка: Детальное представление позы кисти, включая суставы запястья и пальцев.

Более подробную информацию ты можешь найти в разделе Набор данных Hand Keypoints.

Link to this sectionКакие приложения могут получить выгоду от использования набора данных Hand Keypoints?#

Набор данных Hand Keypoints можно применять в различных областях, включая:

  • Распознавание жестов: Улучшение взаимодействия человека и компьютера.
  • Управление в AR/VR: Улучшение пользовательского опыта в дополненной и виртуальной реальности.
  • Роботизированные манипуляции: Обеспечение точного управления роботизированными руками.
  • Здравоохранение: Анализ движений рук для медицинской диагностики.
  • Анимация: Захват движений для создания реалистичной анимации.
  • Биометрическая аутентификация: Повышение безопасности систем.

Более подробную информацию смотри в разделе Приложения.

Link to this sectionКак структурирован набор данных Hand Keypoints?#

Набор данных Hand Keypoints разделен на два подмножества:

  1. Train: Содержит 18 776 изображений для обучения моделей оценки позы.
  2. Val: Содержит 7 992 изображения для валидации в процессе обучения модели.

Эта структура обеспечивает всесторонний процесс обучения и валидации. Более подробную информацию смотри в разделе Структура набора данных.

Link to this sectionКак мне использовать YAML-файл набора данных для обучения?#

Конфигурация набора данных определяется в файле YAML, который включает пути, классы и другую соответствующую информацию. Файл hand-keypoints.yaml можно найти по ссылке hand-keypoints.yaml.

Чтобы использовать этот YAML-файл для обучения, укажи его в своем скрипте обучения или команде CLI, как показано в примере обучения выше. Более подробную информацию смотри в разделе YAML набора данных.

Комментарии