COCO-Pose Veri Kümesi
COCO-Pose veri seti, poz tahmini görevleri için tasarlanmış COCO (Bağlamdaki Ortak Nesneler) veri setinin özel bir sürümüdür. Poz tahmini görevleri için YOLO gibi modellerin eğitimini sağlamak üzere COCO Keypoints 2017 görüntülerini ve etiketlerini kullanır.
COCO-Pose Önceden Eğitilmiş Modeller
Model | boyut (piksel) |
mAPpose 50-95 |
mAPpose 50 |
Hız CPU ONNX (ms) |
Hız T4 TensorRT10 (ms) |
parametreler (M) |
FLOP'lar (B) |
---|---|---|---|---|---|---|---|
YOLO11n-pose | 640 | 50.0 | 81.0 | 52,4 ± 0,5 | 1.7 ± 0.0 | 2.9 | 7.6 |
YOLO11s-pose | 640 | 58.9 | 86.3 | 90.5 ± 0.6 | 2.6 ± 0.0 | 9.9 | 23.2 |
YOLO11m-pose | 640 | 64.9 | 89.4 | 187.3 ± 0.8 | 4.9 ± 0.1 | 20.9 | 71.7 |
YOLO11l-pose | 640 | 66.1 | 89.9 | 247.7 ± 1.1 | 6,4 ± 0,1 | 26.2 | 90.7 |
YOLO11x-pose | 640 | 69.5 | 91.1 | 488.0 ± 13.9 | 12.1 ± 0.2 | 58.8 | 203.3 |
Temel Özellikler
- COCO-Pose, poz tahmini görevleri için anahtar noktalarla etiketlenmiş 200 bin resim içeren COCO Anahtar Noktaları 2017 veri kümesi üzerine kurulmuştur.
- Veri kümesi, insan figürleri için 17 anahtar noktasını destekleyerek ayrıntılı poz tahmini yapılmasını kolaylaştırır.
- COCO gibi, model performansını karşılaştırmak için uygun hale getiren, poz tahmini görevleri için Nesne Anahtar Noktası Benzerliği (OKS) dahil olmak üzere standartlaştırılmış değerlendirme metrikleri sağlar.
Veri Seti Yapısı
COCO-Pose veri seti üç alt kümeye ayrılmıştır:
- Train2017: Bu alt küme, poz tahmini modellerini eğitmek için etiketlenmiş COCO veri kümesinden 56599 görüntü içerir.
- Val2017: Bu alt küme, model eğitimi sırasında doğrulama amacıyla kullanılan 2346 resme sahiptir.
- Test2017: Bu alt küme, eğitimli modelleri test etmek ve kıyaslamak için kullanılan görüntülerden oluşur. Bu alt küme için temel doğruluk açıklamaları herkese açık değildir ve sonuçlar, performans değerlendirmesi için COCO değerlendirme sunucusuna gönderilir.
Uygulamalar
COCO-Pose veri seti, anahtar nokta tespiti ve OpenPose gibi poz tahmini görevlerinde derin öğrenme modellerini eğitmek ve değerlendirmek için özel olarak kullanılır. Veri setinin çok sayıda açıklanmış görüntü ve standartlaştırılmış değerlendirme metrikleri, onu poz tahmini üzerine odaklanan bilgisayar görüşü araştırmacıları ve uygulayıcıları için temel bir kaynak haline getirir.
Veri Seti YAML
Bir YAML (Yet Another Markup Language) dosyası, veri kümesi yapılandırmasını tanımlamak için kullanılır. Veri kümesinin yolları, sınıfları ve diğer ilgili bilgiler hakkında bilgi içerir. COCO-Pose veri kümesi söz konusu olduğunda, coco-pose.yaml
dosyası şu adreste tutulur: https://github.com/ultralytics/ultralytics/blob/main/ultralytics/cfg/datasets/coco-pose.yaml.
ultralytics/cfg/datasets/coco-pose.yaml
# Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license
# COCO 2017 Keypoints dataset https://cocodataset.org by Microsoft
# Documentation: https://docs.ultralytics.com/datasets/pose/coco/
# Example usage: yolo train data=coco-pose.yaml
# parent
# ├── ultralytics
# └── datasets
# └── coco-pose ← downloads here (20.1 GB)
# 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: coco-pose # dataset root dir
train: train2017.txt # train images (relative to 'path') 56599 images
val: val2017.txt # val images (relative to 'path') 2346 images
test: test-dev2017.txt # 20288 of 40670 images, submit to https://codalab.lisn.upsaclay.fr/competitions/7403
# Keypoints
kpt_shape: [17, 3] # number of keypoints, number of dims (2 for x,y or 3 for x,y,visible)
flip_idx: [0, 2, 1, 4, 3, 6, 5, 8, 7, 10, 9, 12, 11, 14, 13, 16, 15]
# Classes
names:
0: person
# Download script/URL (optional)
download: |
from pathlib import Path
from ultralytics.utils.downloads import download
# Download labels
dir = Path(yaml["path"]) # dataset root dir
url = "https://github.com/ultralytics/assets/releases/download/v0.0.0/"
urls = [f"{url}coco2017labels-pose.zip"]
download(urls, dir=dir.parent)
# Download data
urls = [
"http://images.cocodataset.org/zips/train2017.zip", # 19G, 118k images
"http://images.cocodataset.org/zips/val2017.zip", # 1G, 5k images
"http://images.cocodataset.org/zips/test2017.zip", # 7G, 41k images (optional)
]
download(urls, dir=dir / "images", threads=3)
Kullanım
640 görüntü boyutuyla 100 epoch için COCO-Pose veri kümesinde bir YOLO11n-pose modeli eğitmek için aşağıdaki kod parçacıklarını kullanabilirsiniz. Mevcut argümanların kapsamlı bir listesi için model Eğitim sayfasına bakın.
Eğitim Örneği
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="coco-pose.yaml", epochs=100, imgsz=640)
# Start training from a pretrained *.pt model
yolo pose train data=coco-pose.yaml model=yolo11n-pose.pt epochs=100 imgsz=640
Örnek Görüntüler ve Açıklamalar
COCO-Pose veri seti, anahtar noktalarla işaretlenmiş insan figürleri içeren çeşitli görüntülerden oluşur. İşte veri setinden bazı görüntü örnekleri ve bunlara karşılık gelen açıklamaları:
- Mozaiklenmiş Görüntü: Bu görüntü, mozaiklenmiş veri seti görüntülerinden oluşan bir eğitim grubunu göstermektedir. Mozaikleme, her eğitim grubundaki nesnelerin ve sahnelerin çeşitliliğini artırmak için birden çok görüntüyü tek bir görüntüde birleştiren eğitim sırasında kullanılan bir tekniktir. Bu, modelin farklı nesne boyutlarına, en boy oranlarına ve bağlamlara genelleme yeteneğini geliştirmeye yardımcı olur.
Örnek, COCO-Pose veri setindeki görüntülerin çeşitliliğini ve karmaşıklığını ve eğitim sürecinde mozaiklemenin faydalarını sergilemektedir.
Alıntılar ve Teşekkürler
Araştırma veya geliştirme çalışmalarınızda COCO-Pose veri kümesini kullanırsanız, lütfen aşağıdaki makaleye atıfta bulunun:
@misc{lin2015microsoft,
title={Microsoft COCO: Common Objects in Context},
author={Tsung-Yi Lin and Michael Maire and Serge Belongie and Lubomir Bourdev and Ross Girshick and James Hays and Pietro Perona and Deva Ramanan and C. Lawrence Zitnick and Piotr Dollár},
year={2015},
eprint={1405.0312},
archivePrefix={arXiv},
primaryClass={cs.CV}
}
Bilgisayarla görü topluluğu için bu değerli kaynağı oluşturdukları ve sürdürdükleri için COCO Konsorsiyumu'na teşekkür etmek isteriz. COCO-Pose veri kümesi ve yaratıcıları hakkında daha fazla bilgi için COCO veri kümesi web sitesini ziyaret edin.
SSS
COCO-Pose veri kümesi nedir ve Ultralytics YOLO ile poz tahmini için nasıl kullanılır?
COCO-Pose veri seti, poz tahmini görevleri için tasarlanmış COCO (Bağlamdaki Ortak Nesneler) veri setinin özel bir sürümüdür. Ayrıntılı poz tahmini için Ultralytics YOLO gibi modellerin eğitimine olanak tanıyan COCO Keypoints 2017 görüntüleri ve açıklamaları üzerine kurulmuştur. Örneğin, önceden eğitilmiş bir modeli yükleyerek ve bir YAML yapılandırmasıyla eğiterek bir YOLO11n-pose modelini eğitmek için COCO-Pose veri setini kullanabilirsiniz. Eğitim örnekleri için Eğitim belgelerine bakın.
COCO-Pose veri kümesi üzerinde bir YOLO11 modelini nasıl eğitebilirim?
COCO-Pose veri kümesi üzerinde bir YOLO11 modeli eğitmek, python veya CLI komutları kullanılarak gerçekleştirilebilir. Örneğin, 640 görüntü boyutuyla 100 epoch için bir YOLO11n-pose modeli eğitmek için aşağıdaki adımları izleyebilirsiniz:
Eğitim Örneği
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="coco-pose.yaml", epochs=100, imgsz=640)
# Start training from a pretrained *.pt model
yolo pose train data=coco-pose.yaml model=yolo11n-pose.pt epochs=100 imgsz=640
Eğitim süreci ve mevcut argümanlar hakkında daha fazla bilgi için eğitim sayfasına bakın.
Model performansını değerlendirmek için COCO-Pose veri kümesi tarafından sağlanan farklı metrikler nelerdir?
COCO-Pose veri seti, orijinal COCO veri setine benzer şekilde, poz tahmini görevleri için çeşitli standartlaştırılmış değerlendirme metrikleri sağlar. Temel metrikler arasında, tahmin edilen anahtar noktaların doğruluğunu temel gerçek açıklamalarına karşı değerlendiren Nesne Anahtar Nokta Benzerliği (OKS) bulunur. Bu metrikler, farklı modeller arasında kapsamlı performans karşılaştırmalarına olanak tanır. Örneğin, YOLO11n-pose, YOLO11s-pose ve diğerleri gibi COCO-Pose önceden eğitilmiş modellerinin, belgelerde listelenen mAPpose50-95 ve mAPpose50 gibi belirli performans metrikleri vardır.
COCO-Pose veri kümesi için veri kümesi nasıl yapılandırılmış ve bölünmüştür?
COCO-Pose veri seti üç alt kümeye ayrılmıştır:
- Train2017: Poz tahmini modellerini eğitmek için etiketlenmiş 56599 COCO görüntüsü içerir.
- Val2017: Model eğitimi sırasında doğrulama amacıyla kullanılan 2346 resim.
- Test2017: Eğitimli modelleri test etmek ve kıyaslamak için kullanılan görüntüler. Bu alt küme için temel doğruluk açıklamaları herkese açık değildir; sonuçlar, performans değerlendirmesi için COCO değerlendirme sunucusuna gönderilir.
Bu alt kümeler, eğitim, doğrulama ve test aşamalarını etkili bir şekilde düzenlemeye yardımcı olur. Yapılandırma ayrıntıları için şurayı inceleyin: coco-pose.yaml
dosyası şurada mevcut: GitHub.
COCO-Pose veri kümesinin temel özellikleri ve uygulamaları nelerdir?
COCO-Pose veri seti, ayrıntılı poz tahmini sağlamak için COCO Keypoints 2017 açıklamalarını insan figürleri için 17 anahtar noktayı içerecek şekilde genişletir. Standartlaştırılmış değerlendirme metrikleri (örn. OKS), farklı modeller arasında karşılaştırmaları kolaylaştırır. COCO-Pose veri setinin uygulamaları, insan figürlerinin ayrıntılı poz tahmininin gerekli olduğu spor analitiği, sağlık hizmetleri ve insan-bilgisayar etkileşimi gibi çeşitli alanlara yayılır. Pratik kullanım için, dokümantasyonda sağlananlar gibi önceden eğitilmiş modellerden (örn. YOLO11n-pose) yararlanmak süreci önemli ölçüde kolaylaştırabilir (Temel Özellikler).
Araştırma veya geliştirme çalışmalarınızda COCO-Pose veri kümesini kullanırsanız, lütfen aşağıdaki BibTeX girdisi ile makaleye atıfta bulunun.