Набор данных 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 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 🚀 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, а также преимущества использования мозаики в процессе обучения.
Цитирование и благодарности
Если ты используешь набор данных 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.