Dataset Dog-Pose

Introduzione

Il dataset Dog-Pose di Ultralytics è un dataset esteso e di alta qualità, creato specificamente per la stima dei keypoint dei cani. Con 6.773 immagini di addestramento e 1.703 immagini di test, questo dataset fornisce una solida base per l'addestramento di robusti modelli di stima della posa.



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

Ogni immagine annotata include 24 keypoint con 3 dimensioni per keypoint (x, y, visibilità), rendendolo una risorsa preziosa per la ricerca avanzata e lo sviluppo nella visione artificiale.

Ultralytics Dog-pose display image

Questo dataset è inteso per l'uso con Ultralytics Platform e YOLO26.

Struttura del dataset

  • Split: 6.773 immagini di train / 1.703 di test con file di etichetta corrispondenti in formato YOLO.

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

  • Layout:

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

YAML del dataset

Viene utilizzato un file YAML (Yet Another Markup Language) per definire la configurazione del dataset. Include percorsi, dettagli sui keypoint e altre informazioni pertinenti. Nel caso del dataset Dog-pose, il file dog-pose.yaml è disponibile su 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

Utilizzo

Per addestrare un modello YOLO26n-pose sul dataset Dog-pose per 100 epochs con una dimensione dell'immagine di 640, puoi usare i seguenti frammenti di codice. Per un elenco completo degli argomenti disponibili, fai riferimento alla pagina di Training del modello.

Esempio di training
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)

Immagini campione e annotazioni

Ecco alcuni esempi di immagini dal dataset Dog-pose, insieme alle relative annotazioni:

Dog pose estimation dataset mosaic training batch
  • Immagine a mosaico: Questa immagine mostra un batch di addestramento composto da immagini del dataset a mosaico. Il mosaico è una tecnica utilizzata durante l'addestramento che combina più immagini in un'unica immagine per aumentare la varietà di oggetti e scene all'interno di ogni batch di addestramento. Ciò aiuta a migliorare la capacità del modello di generalizzare a diverse dimensioni, proporzioni e contesti degli oggetti.

L'esempio mostra la varietà e la complessità delle immagini nel dataset Dog-pose e i vantaggi dell'utilizzo del mosaicing durante il processo di addestramento.

Citazioni e ringraziamenti

Se utilizzi il dataset Dog-pose nel tuo lavoro di ricerca o sviluppo, ti preghiamo di citare il seguente articolo:

Citazione
@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}
}

Vorremmo ringraziare il team di Stanford per aver creato e mantenuto questa preziosa risorsa per la comunità della computer vision. Per ulteriori informazioni sul dataset Dog-pose e sui suoi creatori, visita il sito web dello Stanford Dogs Dataset.

FAQ

Cos'è il dataset Dog-pose e come si usa con Ultralytics YOLO26?

Il dataset Dog-Pose contiene 6.773 immagini di addestramento e 1.703 immagini di test annotate con 24 keypoint per la stima della posa dei cani. È progettato per l'addestramento e la validazione di modelli con Ultralytics YOLO26, supportando applicazioni come l'analisi del comportamento animale, il monitoraggio degli animali domestici e gli studi veterinari. Le annotazioni complete del dataset lo rendono ideale per sviluppare modelli precisi di stima della posa per i cani.

Come posso addestrare un modello YOLO26 utilizzando il dataset Dog-pose in Ultralytics?

Per addestrare un modello YOLO26n-pose sul dataset Dog-pose per 100 epoch con una dimensione dell'immagine di 640, segui questi esempi:

Esempio di training
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)

Per un elenco completo degli argomenti di addestramento, fai riferimento alla pagina Training del modello.

Quali sono i vantaggi dell'utilizzo del dataset Dog-pose?

Il dataset Dog-pose offre diversi vantaggi:

Dataset ampio e diversificato: Con oltre 8.400 immagini, fornisce dati sostanziali che coprono una vasta gamma di pose, razze e contesti canini, consentendo un addestramento e una valutazione del modello robusti.

Annotazioni dettagliate dei keypoint: Ogni immagine include 24 keypoint con 3 dimensioni per keypoint (x, y, visibilità), offrendo annotazioni precise per l'addestramento di modelli di rilevamento della posa accurati.

Scenari del mondo reale: Include immagini provenienti da ambienti variegati, migliorando la capacità del modello di generalizzare ad applicazioni reali come il monitoraggio degli animali domestici e l'analisi del comportamento.

Vantaggio del transfer learning: Il dataset funziona bene con le tecniche di transfer learning, consentendo ai modelli pre-addestrati su dataset di pose umane di adattarsi alle caratteristiche specifiche dei cani.

Per saperne di più sulle sue funzionalità e sull'utilizzo, vedi la sezione Introduzione al dataset.

In che modo il mosaicing favorisce il processo di addestramento di YOLO26 utilizzando il dataset Dog-pose?

Il mosaicing, come illustrato nelle immagini campione dal dataset Dog-pose, unisce più immagini in un unico composito, arricchendo la diversità di oggetti e scene in ogni batch di addestramento. Questa tecnica offre diversi vantaggi:

  • Aumenta la varietà di pose, dimensioni e sfondi dei cani in ogni batch
  • Migliora la capacità del modello di rilevare i cani in diversi contesti e scale
  • Migliora la generalizzazione esponendo il modello a pattern visivi più diversificati
  • Riduce l'overfitting creando nuove combinazioni di esempi di addestramento

Questo approccio porta a modelli più robusti che offrono prestazioni migliori negli scenari reali. Per immagini di esempio, fare riferimento alla sezione Immagini e annotazioni campione.

Dove posso trovare il file YAML del dataset Dog-pose e come lo utilizzo?

Il file YAML del dataset Dog-pose si trova su https://github.com/ultralytics/ultralytics/blob/main/ultralytics/cfg/datasets/dog-pose.yaml. Questo file definisce la configurazione del dataset, inclusi percorsi, classi, dettagli sui keypoint e altre informazioni pertinenti. Lo YAML specifica 24 keypoint con 3 dimensioni per keypoint, rendendolo adatto a compiti dettagliati di stima della posa.

Per utilizzare questo file con gli script di addestramento di YOLO26, è sufficiente fare riferimento ad esso nel tuo comando di addestramento come mostrato nella sezione Utilizzo. Il dataset verrà scaricato automaticamente al primo utilizzo, rendendo la configurazione semplice.

Per ulteriori FAQ e documentazione dettagliata, visita la Documentazione Ultralytics.

Commenti