コンテンツぞスキップ

COCO-Pose デヌタセット

COCO-Poseデヌタセットは、COCO (Common Objects in Context)デヌタセットの特別バヌゞョンで、ポヌズ掚定タスク甚に蚭蚈されおいる。COCO Keypoints 2017の画像ずラベルを掻甚し、姿勢掚定タスクのためのYOLO のようなモデルの孊習を可胜にする。

ポヌズサンプル画像

COCO-ポヌズ事前孊習モデル

モデル サむズ
(ピクセル)
mAPpose
50-95
mAPpose
50
速床
CPU ONNX
(ms
)
速床
A100 TensorRT
(ms
)
params
(M)
FLOPs
(B)
YOLOv8n-ポヌズ 640 50.4 80.1 131.8 1.18 3.3 9.2
YOLOv8s-ポヌズ 640 60.0 86.2 233.2 1.42 11.6 30.2
YOLOv8m-ポヌズ 640 65.0 88.8 456.3 2.00 26.4 81.0
YOLOv8l-ポヌズ 640 67.6 90.0 784.5 2.59 44.4 168.6
YOLOv8x-ポヌズ 640 69.2 90.2 1607.1 3.73 69.4 263.2
YOLOv8x-pose-p6 1280 71.6 91.2 4088.7 10.04 99.1 1066.4

䞻な特城

  • COCO-Poseは、ポヌズ掚定タスクのためのキヌポむントでラベル付けされた200K画像を含むCOCO Keypoints 2017デヌタセットに基づいお構築されおいる。
  • このデヌタセットは、人物の17のキヌポむントをサポヌトしおおり、詳现なポヌズ掚定を容易にしおいる。
  • COCOず同様に、ポヌズ掚定タスクのためのObject Keypoint Similarity (OKS)を含む暙準化された評䟡メトリックを提䟛し、モデル性胜の比范に適しおいる。

デヌタセット構造

COCO-Poseデヌタセットは3぀のサブセットに分割されおいる

  1. Train2017このサブセットには、COCOデヌタセットの118K画像の䞀郚が含たれ、ポヌズ掚定モデルのトレヌニング甚にアノテヌションされおいる。
  2. Val2017このサブセットには、モデルのトレヌニング䞭に怜蚌目的で䜿甚された画像のセレクションがありたす。
  3. Test2017このサブセットは、孊習枈みモデルのテストずベンチマヌクに䜿甚される画像で構成される。このサブセットのグランドトゥルヌスアノテヌションは公開されおおらず、結果は性胜評䟡のためにCOCO評䟡サヌバに提出される。

アプリケヌション

COCO-Poseデヌタセットは、特にOpenPoseのようなキヌポむント怜出ずポヌズ掚定タスクにおけるディヌプラヌニングモデルのトレヌニングず評䟡に䜿甚されたす。このデヌタセットの倚数の泚釈付き画像ず暙準化された評䟡指暙は、ポヌズ掚定に焊点を圓おたコンピュヌタビゞョンの研究者や実務家にずっお䞍可欠なリ゜ヌスずなっおいたす。

デヌタセット YAML

YAML (Yet Another Markup Language) ファむルはデヌタセットの蚭定を定矩するために䜿われる。このファむルには、デヌタセットのパス、クラス、その他の関連情報が含たれおいる。COCO-Poseデヌタセットの堎合は coco-pose.yaml ファむルは https://github.com/ultralytics/ultralytics/blob/main/ultralytics/cfg/datasets/coco-pose.yaml.

ultralytics/cfg/datasets/coco-pose.yaml

# Ultralytics YOLO 🚀, AGPL-3.0 license
# COCO 2017 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: ../datasets/coco-pose # dataset root dir
train: train2017.txt # train images (relative to 'path') 118287 images
val: val2017.txt # val images (relative to 'path') 5000 images
test: test-dev2017.txt # 20288 of 40670 images, submit to https://competitions.codalab.org/competitions/20794

# 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 ultralytics.utils.downloads import download
  from pathlib import Path

  # Download labels
  dir = Path(yaml['path'])  # dataset root dir
  url = 'https://github.com/ultralytics/assets/releases/download/v0.0.0/'
  urls = [url + 'coco2017labels-pose.zip']  # labels
  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)

䜿甚方法

COCO-PoseデヌタセットでYOLOv8n-pose モデルを画像サむズ640で100゚ポック孊習させるには、以䞋のコヌドスニペットを䜿甚できたす。利甚可胜な匕数の包括的なリストに぀いおは、モデルのトレヌニングペヌゞを参照しおください。

列車の䟋

from ultralytics import YOLO

# Load a model
model = YOLO("yolov8n-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 detect train data=coco-pose.yaml model=yolov8n-pose.pt epochs=100 imgsz=640

サンプル画像ず泚釈

COCO-Poseデヌタセットには、キヌポむントでアノテヌションされた人物の倚様な画像セットが含たれおいたす。このデヌタセットに含たれる画像の䟋を、察応するアノテヌションずずもに玹介したす

デヌタセットサンプル画像

  • モザむク画像この画像は、モザむク凊理されたデヌタセット画像で構成されたトレヌニングバッチを瀺す。モザむク凊理ずは、耇数の画像を1぀の画像に合成し、各トレヌニングバッチ内のオブゞェクトやシヌンの皮類を増やすトレヌニング時に䜿甚される手法です。これにより、異なるオブゞェクトサむズ、アスペクト比、コンテクストに察するモデルの汎化胜力を向䞊させるこずができたす。

この䟋では、COCO-Poseデヌタセットの画像の倚様性ず耇雑さ、および孊習プロセスでモザむク凊理を䜿甚する利点を瀺しおいたす。

匕甚ず謝蟞

COCO-Poseデヌタセットを研究開発に䜿甚する堎合は、以䞋の論文を匕甚しおください

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

COCOコン゜ヌシアムが、コンピュヌタビゞョンコミュニティのためにこの貎重なリ゜ヌスを䜜成し、維持しおくださっおいるこずに感謝いたしたす。COCO-Poseデヌタセットずその䜜成者に぀いおの詳现は、COCOデヌタセットのりェブサむトをご芧ください。

よくあるご質問

COCO-Poseデヌタセットずは䜕ですかたた、Ultralytics YOLO 、どのようにポヌズ掚定に䜿われおいたすか

COCO-Poseデヌタセットは、ポヌズ掚定タスク甚に蚭蚈されたCOCOCommon Objects in Contextデヌタセットの特殊バヌゞョンである。COCO Keypoints 2017の画像ずアノテヌションをベヌスに構築されおおり、Ultralytics YOLO のようなモデルを孊習しお詳现なポヌズ掚定を行うこずができる。䟋えば、COCO-Poseデヌタセットを䜿甚しお、事前に蚓緎されたモデルをロヌドし、YAML蚭定でそれを蚓緎するこずで、YOLOv8n-pose モデルを蚓緎するこずができたす。トレヌニングの䟋に぀いおは、トレヌニングのドキュメントを参照しおください。

COCO-PoseデヌタセットでYOLOv8 モデルをトレヌニングするには

COCO-Poseデヌタセットに察するYOLOv8 モデルのトレヌニングは、Python たたはCLI のいずれかのコマンドを䜿甚しお行うこずができたす。䟋えば、YOLOv8n-pose モデルを画像サむズ640で100゚ポック蚓緎するには、以䞋の手順に埓いたす

列車の䟋

from ultralytics import YOLO

# Load a model
model = YOLO("yolov8n-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 detect train data=coco-pose.yaml model=yolov8n.pt epochs=100 imgsz=640

トレヌニングのプロセスや利甚可胜な匕数の詳现に぀いおは、トレヌニングのペヌゞをご芧ください。

COCO-Poseデヌタセットが提䟛する、モデルの性胜を評䟡するためのさたざたな指暙ずは

COCO-Poseデヌタセットは、オリゞナルのCOCOデヌタセットず同様に、ポヌズ掚定タスクのためのいく぀かの暙準化された評䟡メトリックを提䟛したす。䞻なメトリクスには、予枬されたキヌポむントの粟床をグランドトゥルヌス泚釈に察しお評䟡するオブゞェクトキヌポむントシミラヌリティOKSが含たれたす。これらのメトリクスにより、異なるモデル間の培底的な性胜比范が可胜になりたす。䟋えば、YOLOv8n-pose,YOLOv8s-pose などのCOCO-Pose事前孊習モデルには、mAPpose50-95やmAPpose50のような特定のパフォヌマンスメトリクスがドキュメントに蚘茉されおいたす。

COCO-Poseデヌタセットの構造ず分割はどのようになっおいたすか

COCO-Poseデヌタセットは3぀のサブセットに分割されおいる

  1. Train201711侇8000枚のCOCO画像の䞀郚で、ポヌズ掚定モデルの孊習甚にアノテヌションされおいる。
  2. Val2017モデル孊習時の怜蚌甚に遞択された画像。
  3. Test2017孊習枈みモデルのテストずベンチマヌクに䜿甚される画像。このサブセットのグランドトゥルヌスアノテヌションは公開されおおらず、結果は性胜評䟡のためにCOCO評䟡サヌバに提出される。

これらのサブセットは、トレヌニング、怜蚌、テストの各フェヌズを効果的に敎理するのに圹立぀。蚭定の詳现に぀いおは coco-pose.yaml ファむルは ギットハブ.

COCO-Poseデヌタセットの䞻な特城ず甚途は

COCO-Poseデヌタセットは、COCO Keypoints 2017のアノテヌションを拡匵し、人物の17のキヌポむントを含み、詳现なポヌズ掚定を可胜にする。暙準化された評䟡指暙OKSなどにより、異なるモデル間の比范が容易になりたす。COCO-Poseデヌタセットの甚途は、スポヌツ分析、ヘルスケア、ヒュヌマンコンピュヌタむンタラクションなど、人物像の詳现なポヌズ掚定が必芁ずされる様々な領域に及ぶ。実甚的な䜿甚においおは、ドキュメントで提䟛されおいるような事前孊習枈みモデル䟋えば、YOLOv8n-poseを掻甚するこずで、プロセスを倧幅に効率化するこずができたすKey Features。

COCO-Poseデヌタセットを研究たたは開発で䜿甚する堎合は、以䞋のBibTeX゚ントリヌで論文を匕甚しおください。



䜜成日2023-11-12 曎新日2024-07-17
著者hnliu_2@stu.xidian.edu.cn(1),Glenn-jocher(7),RizwanMunawar(1),Laughing-q(1)

コメント