Ultralytics YOLO27:

COCO8-Pose 数据集#

简介#

Ultralytics COCO8-Pose 是一个小型但用途广泛的姿态估计数据集,由 COCO train 2017 集合中的前 8 张图像组成(4 张用于训练,4 张用于验证),采用针对单个“person”类别的 17 个关键点标注方案。该数据集非常适合测试和调试姿态估计模型,或尝试新的关键点检测方法。它仅包含 8 张图像,易于管理,同时又具有足够的多样性,可用于测试训练流水线是否存在错误,并在使用完整的 COCO-Pose 数据集训练前进行合理性检查。

数据集结构#

  • 图像总数:8(4 张训练图像 / 4 张验证图像)。
  • 类别:1 个(person),每个标注包含 17 种关键点类型。
  • 下载大小:~1 MB。
  • 推荐目录布局:使用 datasets/coco8-pose/images/{train,val}datasets/coco8-pose/labels/{train,val},并将 YOLO 格式的关键点存储为 .txt 文件。

Ultralytics Platform 上探索 COCO8-Pose,浏览每张图像及其关键点骨架,在 Charts 选项卡中查看关键点和类别分布,还可以克隆该数据集,以便在云端训练你自己的模型。

数据集 YAML#

使用 YAML 文件定义数据集配置。该文件包含数据集路径、类别及其他相关信息。对于 COCO8-Pose 数据集,coco8-pose.yaml 文件维护在 https://github.com/ultralytics/ultralytics/blob/main/ultralytics/cfg/datasets/coco8-pose.yaml

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

# COCO8-pose dataset (first 8 images from COCO train2017) by Ultralytics
# Documentation: https://docs.ultralytics.com/datasets/pose/coco8-pose
# Example usage: yolo train data=coco8-pose.yaml
# parent
# ├── ultralytics
# └── datasets
#     └── coco8-pose ← downloads here (1 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: coco8-pose # dataset root dir
train: images/train # train images (relative to 'path') 4 images
val: images/val # val images (relative to 'path') 4 images
test: # test images (optional)

# 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

# Keypoint names per class
kpt_names:
  0:
    - nose
    - left_eye
    - right_eye
    - left_ear
    - right_ear
    - left_shoulder
    - right_shoulder
    - left_elbow
    - right_elbow
    - left_wrist
    - right_wrist
    - left_hip
    - right_hip
    - left_knee
    - right_knee
    - left_ankle
    - right_ankle

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

使用方法#

要在 COCO8-Pose 数据集上训练 YOLO26n-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="coco8-pose.yaml", epochs=100, imgsz=640)

示例图像和标注#

以下是 COCO8-Pose 数据集中的一些图像示例及其对应的标注:

COCO8-pose keypoint estimation dataset mosaic
  • 马赛克图像:此图像展示了由马赛克拼接数据集图像组成的训练批次。马赛克拼接是训练期间使用的一种技术,它将多张图像合并为一张图像,以增加每个训练批次中物体和场景的多样性。这有助于提升模型对不同物体大小、宽高比和上下文的泛化能力。

引用和致谢#

如果你在研究或开发工作中使用 COCO 数据集,请引用以下论文:

引用
@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 Consortium 创建并维护这一为计算机视觉社区提供的重要资源。如需了解有关 COCO 数据集及其创建者的更多信息,请访问 COCO 数据集网站

常见问题#

  • COCO8-Pose 数据集是一个小型且用途广泛的姿态估计数据集,包含 COCO train 2017 集合中的前 8 张图像,其中 4 张用于训练,4 张用于验证。它用于测试和调试姿态估计模型,以及尝试新的关键点检测方法。该数据集非常适合使用 Ultralytics YOLO26 进行快速实验。有关数据集配置的更多详情,请参阅数据集 YAML 文件

  • 加载 yolo26n-pose.pt 并调用 model.train(data="coco8-pose.yaml", epochs=100, imgsz=640)——完整的 Python 和 CLI 代码片段请参阅上方的训练示例,完整的参数列表请参阅模型的训练页面。

  • COCO8-Pose 总共包含 8 张图像(4 张训练图像 / 4 张验证图像)、1 个类别、17 个关键点标注方案,下载大小约为 ~1 MB。它小到可以在几秒内完成管理,同时又具有足够的多样性,可在扩展到完整的 COCO-Pose 数据集之前,检查姿态训练流水线是否存在错误。有关其功能和用法的更多信息,请参阅数据集介绍部分。

  • 图像拼接会将多张图像合并为一张,从而增加每个训练批次中的对象和场景多样性,帮助模型适应不同的对象大小、宽高比和上下文。有关示例,请参阅示例图像和标注部分。

  • COCO8-Pose 数据集 YAML 文件位于 https://github.com/ultralytics/ultralytics/blob/main/ultralytics/cfg/datasets/coco8-pose.yaml。该文件定义了数据集配置,包括路径、类别及其他相关信息。按照训练示例部分中的说明,将此文件与 YOLO26 训练脚本配合使用。

    有关关键点模型的更多信息,请参阅姿态估计任务文档。

评论