Набор данных Dog-Pose

Введение

Набор данных Ultralytics Dog-Pose — это качественный и обширный набор данных, специально отобранный для оценки ключевых точек у собак. Содержащий 6773 изображения для обучения и 1703 изображения для тестирования, этот датасет служит надежной основой для обучения эффективных моделей оценки позы.



Watch: How to Train Ultralytics YOLO26 on the Stanford Dog Pose Estimation Dataset | Step-by-Step Tutorial

Каждое аннотированное изображение включает 24 ключевые точки с 3 измерениями для каждой (x, y, видимость), что делает его ценным ресурсом для передовых исследований и разработок в области компьютерного зрения.

Ultralytics Dog-pose display image

Этот набор данных предназначен для использования с Ultralytics Platform и YOLO26.

Структура набора данных

  • Разбивка: 6773 обучающих / 1703 тестовых изображения с соответствующими файлами разметки в формате YOLO.

  • Keypoints: 24 per dog with (x, y, visibility) triplets.

  • Структура:

    datasets/dog-pose/
    ├── images/{train,test}
    └── labels/{train,test}

YAML набора данных

Для определения конфигурации набора данных используется файл YAML (Yet Another Markup Language). Он включает пути, детали ключевых точек и другую релевантную информацию. В случае с набором данных Dog-pose файл dog-pose.yaml доступен по адресу https://github.com/ultralytics/ultralytics/blob/main/ultralytics/cfg/datasets/dog-pose.yaml.

ultralytics/cfg/datasets/dog-pose.yaml
# Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license

# Dogs dataset http://vision.stanford.edu/aditya86/ImageNetDogs/ by Stanford
# Documentation: https://docs.ultralytics.com/datasets/pose/dog-pose/
# Example usage: yolo train data=dog-pose.yaml
# parent
# ├── ultralytics
# └── datasets
#     └── dog-pose ← downloads here (337 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: dog-pose # dataset root dir
train: images/train # train images (relative to 'path') 6773 images
val: images/val # val images (relative to 'path') 1703 images

# Keypoints
kpt_shape: [24, 3] # number of keypoints, number of dims (2 for x,y or 3 for x,y,visible)

# Classes
names:
  0: dog

# Keypoint names per class
kpt_names:
  0:
    - front_left_paw
    - front_left_knee
    - front_left_elbow
    - rear_left_paw
    - rear_left_knee
    - rear_left_elbow
    - front_right_paw
    - front_right_knee
    - front_right_elbow
    - rear_right_paw
    - rear_right_knee
    - rear_right_elbow
    - tail_start
    - tail_end
    - left_ear_base
    - right_ear_base
    - nose
    - chin
    - left_ear_tip
    - right_ear_tip
    - left_eye
    - right_eye
    - withers
    - throat

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

Использование

Чтобы обучить модель YOLO26n-pose на наборе данных Dog-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="dog-pose.yaml", epochs=100, imgsz=640)

Примеры изображений и аннотаций

Ниже представлены примеры изображений из набора данных Dog-pose вместе с соответствующими аннотациями:

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

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

Цитирование и благодарности

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

Цитата
@inproceedings{khosla2011fgvc,
  title={Novel dataset for Fine-Grained Image Categorization},
  author={Aditya Khosla and Nityananda Jayadevaprakash and Bangpeng Yao and Li Fei-Fei},
  booktitle={First Workshop on Fine-Grained Visual Categorization (FGVC), IEEE Conference on Computer Vision and Pattern Recognition (CVPR)},
  year={2011}
}
@inproceedings{deng2009imagenet,
  title={ImageNet: A Large-Scale Hierarchical Image Database},
  author={Jia Deng and Wei Dong and Richard Socher and Li-Jia Li and Kai Li and Li Fei-Fei},
  booktitle={IEEE Computer Vision and Pattern Recognition (CVPR)},
  year={2009}
}

Мы хотели бы поблагодарить команду Стэнфорда за создание и поддержку этого ценного ресурса для сообщества компьютерного зрения. Для получения дополнительной информации о наборе данных Dog-pose и его создателях посети сайт Stanford Dogs Dataset.

Часто задаваемые вопросы (FAQ)

Что такое набор данных Dog-pose и как он используется с Ultralytics YOLO26?

Набор данных Dog-Pose содержит 6773 обучающих и 1703 тестовых изображения, размеченных 24 ключевыми точками для оценки позы собак. Он разработан для обучения и валидации моделей с помощью Ultralytics YOLO26 и поддерживает такие приложения, как анализ поведения животных, мониторинг питомцев и ветеринарные исследования. Обширные аннотации делают этот датасет идеальным для разработки точных моделей оценки позы собак.

Как обучить модель YOLO26, используя набор данных Dog-pose в Ultralytics?

Чтобы обучить модель YOLO26n-pose на наборе данных Dog-pose в течение 100 эпох с размером изображения 640, следуй этим примерам:

Пример обучения
from ultralytics import YOLO

# Load a model
model = YOLO("yolo26n-pose.pt")

# Train the model
results = model.train(data="dog-pose.yaml", epochs=100, imgsz=640)

Полный список аргументов обучения смотри на странице Обучение модели.

В чем заключаются преимущества использования набора данных Dog-pose?

Набор данных Dog-pose обладает рядом преимуществ:

Большой и разнообразный набор данных: Содержащий более 8400 изображений, он предоставляет значительный объем данных, охватывающий широкий спектр поз собак, пород и контекстов, что позволяет проводить надежное обучение и оценку моделей.

Детальные аннотации ключевых точек: Каждое изображение включает 24 ключевые точки с 3 измерениями (x, y, видимость), что дает точные аннотации для обучения эффективных моделей определения позы.

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

Преимущество трансферного обучения: Набор данных хорошо работает с методами трансферного обучения, позволяя моделям, предварительно обученным на наборах данных поз людей, адаптироваться к особенностям собак.

Больше информации о возможностях и использовании ты найдешь в разделе Введение в набор данных.

Как мозаика помогает процессу обучения YOLO26 при использовании набора данных Dog-pose?

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

  • Увеличивает разнообразие поз собак, их размеров и фонов в каждом пакете
  • Улучшает способность модели обнаруживать собак в различных контекстах и масштабах
  • Улучшает обобщающую способность, подвергая модель воздействию более разнообразных визуальных паттернов
  • Снижает переобучение за счет создания новых комбинаций обучающих примеров

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

Где я могу найти YAML-файл набора данных Dog-pose и как его использовать?

YAML-файл набора данных Dog-pose можно найти по адресу https://github.com/ultralytics/ultralytics/blob/main/ultralytics/cfg/datasets/dog-pose.yaml. Этот файл определяет конфигурацию набора данных, включая пути, классы, детали ключевых точек и другую важную информацию. YAML указывает на 24 ключевые точки с 3 измерениями для каждой, что делает его подходящим для детальных задач оценки позы.

Чтобы использовать этот файл со скриптами обучения YOLO26, просто укажи его в своей команде обучения, как показано в разделе Использование. Набор данных будет автоматически загружен при первом использовании, что делает настройку очень простой.

Больше ответов на частые вопросы и подробную документацию ты найдешь в Документации Ultralytics.

Комментарии