云计算百科
云计算领域专业知识百科平台

数据集07-YOLO数据集人体姿态估计、健身动作识别和动作计数研究

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */
#content_views .toc,
/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */
#content_views.markdown_views > p:empty:has(+ .toc),
#content_views.markdown_views > .toc + p:empty,
/* 富文本旧版目录标记 */
#content_views.htmledit_views #main-toc,
#content_views.htmledit_views #hr-toc,
#content_views.htmledit_views p[id*=\”-toc\”] {
display: none !important;
}
/* 目录去掉后,紧跟的首个标题不再多出一块上边距 */
#content_views.markdown_views > .toc + h1,
#content_views.markdown_views > .toc + h2,
#content_views.markdown_views > .toc + h3,
#content_views.markdown_views > .toc + h4,
#content_views.markdown_views > .toc + p:empty + h1,
#content_views.markdown_views > .toc + p:empty + h2,
#content_views.markdown_views > .toc + p:empty + h3,
#content_views.markdown_views > .toc + p:empty + h4 {
margin-top: 0 !important;
}

【YOLO数据集分享】健身动作姿态识别数据集,7种健身动作,支持YOLO Pose与动作计数

今天分享一个适合人体姿态估计、健身动作识别和动作计数研究的数据集

该数据集包含深蹲、硬拉和肩部训练等 7种健身动作,通过 YOLO Pose 提取人体关键点,并为动作帧标注 Up(向上)和 Down(向下)等状态。

与普通的人体目标检测数据集不同,这个数据集不仅关注人体位置,还包含人体骨架关键点和动作状态信息,适合开展健身动作识别、动作阶段分类和自动计数相关实验。

一、数据集基本介绍

数据集通过提取人员进行健身运动时的视频帧,使用 YOLO Pose 模型获取人体关键点,并为对应动作帧添加状态标签。

其主要用途是利用人体关键点的位置变化,判断健身动作所处的阶段。

1.1 数据集基本信息

项目内容
中文名称 健身动作姿态识别数据集
数据集类型 人体姿态估计、动作状态分类
文件数量 约9192个
数据大小 约528 MB
动作种类 7种
主要动作 深蹲、硬拉、肩部训练
姿态提取模型 YOLO Pose
数据组织说明 COCO格式及关键点TXT文件
状态标签 Up、Down等
适用任务 动作识别、动作阶段分类、动作计数

需要注意,9192是提供的数据文件数量,并不一定代表9192张独立图像,具体图片数量和标签数量需要以下载后的文件统计为准。

二、数据集包含哪些健身动作?

数据集共包含7种健身动作,主要分为三组:

动作类别数量主要运动特征
深蹲(Squat) 3种变式 髋关节、膝关节屈伸
硬拉(Deadlift) 3种变式 髋部伸展、躯干角度变化
肩部训练(Shoulder Exercise) 1种 上肢抬举、肩肘关节变化
合计 7种 —

在这里插入图片描述

2.1 深蹲动作(Squat)

深蹲是人体姿态估计中比较典型的动作识别任务。

运动过程中,人体膝关节和髋关节角度会发生明显变化。

通常可以分为:

  • Up:站立或向上阶段。
  • Down:下蹲阶段。

通过连续识别 Up 和 Down 状态,可以进一步实现深蹲动作计数。

2.2 硬拉动作(Deadlift)

硬拉主要涉及髋部、膝部和躯干的协调运动。

在硬拉过程中,人体由俯身状态逐渐伸展至直立状态,再返回初始姿态。

数据集介绍中提到了硬拉相关的 ibw 标签,因此实际使用时需要检查其具体含义和标签映射,不能直接假定所有硬拉样本都采用完全相同的 Up/Down 命名。

2.3 肩部训练(Shoulder Exercise)

肩部训练主要涉及上肢运动,可以通过肩关节、肘关节及腕关节的位置变化分析动作状态。

与深蹲、硬拉相比,肩部训练更依赖上半身关键点。

因此,不同健身动作在特征选择方面可能存在差异。

三、数据集标注有什么特点?

该数据集的核心特点是:

人体关键点 + 动作状态标签

普通 YOLO 目标检测数据集通常只标注目标的矩形框,而人体姿态数据集需要描述人体关节的位置。

3.1 人体关键点信息

YOLO Pose 常用的 COCO 人体关键点定义包含17个关键点。

关键点编号人体部位
0 鼻子
1~2 左右眼
3~4 左右耳
5~6 左右肩
7~8 左右肘
9~10 左右腕
11~12 左右髋
13~14 左右膝
15~16 左右踝

这些关键点可以用于计算人体关节角度、分析身体姿态,以及判断动作变化。

例如:

  • 深蹲:重点分析髋部、膝部和踝部关键点。
  • 硬拉:重点分析肩部、髋部和膝部关键点。
  • 肩部训练:重点分析肩部、肘部和腕部关键点。

需要注意,17关键点是常见的 COCO 人体姿态定义,实际数据文件中的关键点数量、顺序和可见性字段,应以下载后的标注内容为准。

3.2 COCO与YOLO Pose格式

数据集介绍提到使用 COCO 格式组织数据,并通过 YOLO Pose 提取关键点,映射到对应的TXT文件。

这里需要区分两种格式:

COCO关键点格式

通常使用JSON文件保存图片、人体框、关键点坐标等信息。

YOLO Pose格式

通常使用TXT文件,每行记录人体类别、检测框和关键点坐标。

常见的17关键点YOLO Pose标注结构如下:

class x_center y_center width height
x1 y1 v1 x2 y2 v2 … x17 y17 v17

其中:

  • class:人体类别。
  • x_center、y_center:人体框中心坐标。
  • width、height:人体框宽度和高度。
  • x、y:人体关键点坐标。
  • v:关键点可见性信息。

这是标准格式示例,并不代表该数据集的TXT文件一定采用完全相同的字段结构。

如果数据集中保存的是已经提取好的关键点坐标,则可以直接用于后续动作分类模型,不一定需要重新训练 YOLO Pose。

四、Up和Down标签有什么作用?

这是该数据集与普通人体姿态数据集最大的区别之一。

数据集不仅包含人体关键点,还为动作帧标注了不同的运动状态。

状态标签中文含义典型场景
Up 向上或上方状态 深蹲站立阶段
Down 向下或下方状态 深蹲下蹲阶段

具体状态含义需要结合不同健身动作的标注规则理解。

例如,深蹲动作可以通过连续状态变化实现计数。

动作计数基本原理

开始
↓
读取视频帧
↓
提取人体关键点
↓
识别当前动作状态
↓
Down → Up
↓
完成一次有效动作
↓
计数 +1

需要说明的是,单张图片只能判断当前动作状态,不能直接确定已经完成多少次动作。

真正的动作计数需要连续视频帧、状态变化判断和重复触发过滤。

例如,可以加入状态持续帧数限制,避免模型在 Up 和 Down 之间频繁抖动,导致重复计数。

因此,这个数据集比较适合训练动作状态分类模型,再结合状态机实现健身动作计数。

五、如何使用数据集进行模型训练?

这个数据集可以采用两种技术路线。

5.1 方案一:YOLO Pose + 规则计数

首先使用预训练 YOLO Pose 模型提取人体关键点,再通过关节角度判断动作状态。

例如,深蹲可以计算膝关节角度:

import numpy as np

def calculate_angle(a, b, c):
a = np.array(a, dtype=float)
b = np.array(b, dtype=float)
c = np.array(c, dtype=float)

ba = a – b
bc = c – b

cosine = np.dot(ba, bc) / (
np.linalg.norm(ba) * np.linalg.norm(bc) + 1e-8
)

angle = np.degrees(
np.arccos(np.clip(cosine, –1.0, 1.0))
)

return angle

输入髋部、膝部和踝部三个关键点,就可以计算膝关节角度。

再结合阈值判断动作处于 Up 还是 Down 阶段。

这种方法不需要单独训练动作分类模型,实现难度较低,适合基础实验。

5.2 方案二:YOLO Pose + 机器学习分类

利用数据集已经提取的人体关键点和状态标签,训练一个 Up/Down 分类模型。

可选算法包括:

算法主要用途难度
Random Forest 关键点特征分类 低
SVM 动作状态分类 低
MLP 非线性姿态特征分类 中
LSTM 连续姿态序列分析 中
GRU 轻量化动作时序分类 中

如果数据集中的样本主要是独立视频帧,可以先使用 Random Forest 或 MLP 完成状态分类。

如果希望使用 LSTM、GRU 等时序模型,则需要确认原始数据是否保留视频来源和帧顺序,以便构建连续动作序列。

推荐初学者优先采用:YOLO Pose + Random Forest + 状态机计数。

这样既能利用已有关键点标签,也可以通过状态变化实现动作次数统计。

六、数据集适合哪些研究方向?

该数据集不仅可以用于动作计数,也适合开展人体姿态分析相关实验。

研究方向主要内容难度
深蹲动作状态识别 判断Up/Down状态 低
健身动作自动计数 根据状态变化统计次数 低
多种健身动作分类 区分不同健身动作 中
关键点分类算法对比 RF、SVM、MLP对比 中
健身动作时序识别 LSTM、GRU分析动作序列 中
健身动作规范性分析 结合关节角度和额外标准判断动作质量 中~高

需要特别注意,数据集主要提供动作关键点及状态信息,没有明确说明包含动作是否标准、错误动作类型等标签。

因此,如果要实现动作规范性评分或错误姿势纠正,通常还需要补充规则、人工标注或额外的数据集。

适合的毕业设计题目

  • 基于YOLO Pose的健身动作识别与自动计数研究
  • 基于YOLO11-Pose的深蹲动作识别与计数方法研究
  • 基于人体关键点与随机森林的健身动作状态分类研究
  • 基于YOLO Pose与GRU的健身动作时序识别研究
  • 基于深度学习的多类别健身动作识别与计数方法研究
  • 对于本科毕业设计,使用该数据集完成关键点提取、动作状态分类和自动计数,具有一定的实践价值。

    如果是研究生课题,建议进一步研究动作识别的时序建模、跨人员泛化能力、关键点遮挡鲁棒性等问题。

    七、使用这个数据集需要注意什么?

    虽然数据集已经提供关键点和动作状态标签,但实际使用时仍然需要关注以下问题。

    1. 确认动作类别与状态标签的对应关系

    7种动作与Up/Down状态是两个不同层次的标签,训练前需要明确动作类型、状态类别以及对应文件的映射关系。

    3. 避免训练集和测试集数据泄漏

    如果多个图片来自同一段健身视频,建议按照原始视频或人员划分数据集,而不是随机划分相邻视频帧。

    4. 检查关键点质量

    健身动作可能出现人体遮挡、关节重叠和关键点识别错误等问题,建议先可视化检查关键点标注。

    5. 动作计数需要连续视频

    独立帧状态分类准确率高,并不意味着动作计数一定准确。最好额外录制完整健身视频,验证实际计数误差。

    八、数据集总结

    本次分享的是一个面向健身动作分析的人体姿态数据集。

    其主要特点包括:

    • 约9192个数据文件
    • 数据大小约528MB
    • 包含7种健身动作
    • 涉及3种深蹲、3种硬拉和1种肩部训练
    • 使用YOLO Pose提取人体关键点
    • 包含Up/Down等动作状态标注
    • 适合动作识别、状态分类和自动计数研究

    与普通目标检测数据集相比,该数据集的重点不再是识别图片中有没有人,而是通过人体关键点分析人员正在进行什么动作、动作处于哪个阶段。

    对于正在寻找 YOLO Pose、人体姿态估计、健身动作识别相关毕业设计数据集的同学,可以作为参考。


    赞(0)
    未经允许不得转载:网硕互联帮助中心 » 数据集07-YOLO数据集人体姿态估计、健身动作识别和动作计数研究
    分享到: 更多 (0)

    评论 抢沙发

    评论前必须登录!