Ultralytics YOLO27:
Get Started

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 数据集,以图像尺寸 640 训练 YOLO26n-pose 模型 100 个轮次,可以使用以下代码片段。可用参数的完整列表请参阅模型的训练页面。

训练示例
from ultralytics import YOLO

# 加载模型
model = YOLO("yolo26n-pose.pt")  # 加载预训练模型(推荐用于训练)

# 训练模型
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 训练脚本中使用此文件。

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

评论