文章目录
-
- 一、绪论
-
- 1、研究背景
- 2、相关介绍
- 3、研究内容
- 二、人体姿态评估系统理论研究
-
- 1、姿态估计和动作估计
- 2、人体姿态坐标集
-
- (1)估计三维空间坐标集
- (2)估计二维空间坐标集
- 3、人体姿态估计模型
-
- (1)CPN(级联金字塔 络)
- (2)Deep-Pose
- (3)Open-Pose
- (4)模型比较与分析
-
- 1)估计时间比较
- 2)估计效果比较
- 三、人体姿态评估系统设计探究
-
- 1、摄像头相关问题
-
- (1)摆放位置
- (2)摄像头自身参数
- 2、减少模型估计时间的方法
-
- (1)图像压缩
-
- 1)使用原因及方法原理
- 2)图像压缩流程及模型结果
- 3)探讨图像压缩是否可用于模型
-
- a. 实验流程及公式
- b. 数据分析
- (2)间隔采样
-
- 1)采样原理
- 2)间隔采样流程
- (3)优化模型结构
-
- 1)优化的模型结构
- 2)优化模型的优势
- 2)优化模型的结果
- 3、人体姿态评估算法
-
- (1)算法主要关注问题
-
- 1)整体评估与局部评估
- 2)处理异常帧
- 3)衡量待测姿态与标准姿态
- (2)人体姿态评估方案
-
- 1)方案选择
- 2)算法设计
- 四、人体姿态评估系统实现
-
- 1、整体架构
-
- (1)系统主要组成
- (2)系统硬件参数
- (3)系统运行流程
- 2、估计模型模块
-
- (1)训练过程
- (2)估计效果
- 3、人体姿态评估模块
-
- (1)算法流程
- (2)坐标变换和匹配详细讲解
-
- 1)坐标变换
- 2)匹配流程
- (3)结果展示
- 五、总结一下~
一、绪论
1、研究背景
运动过程中,标准的运动姿态不仅可以决定运动的效果,也可以最大限度保护运动员不受伤害。
早期的人体动作识别都需要借助外接设备的辅助,非常不方便,随着机器学习和深度学习的发展,使计算机可以仅通过摄像头等设备就能够感知人体动作。
在人体动作识别中,首先最关键的是人体姿态估计,基于人体姿态估计所得到的一系列特征与一些标准动作进行对比,就可以对人们运动中的运动姿态做出知道。
2、相关介绍
人体动作识别领域研究主要分为两个方向:
-
人体姿态估计
基于图像处理、机器学习和深度学习等方法,对给定的图像序列进行人体姿态检测,并给出人体模型的热点图,主要针对单帧图像中人体位姿的估计,并不考虑连续时间下位姿变化形成的动作含义,将人体姿态估计定义为人体关键点的定位问题。
人体姿态估计方法有:自上而下 / 自下而上 -
人体动作识别
一个人体动作由多个连续时间序列下的人体姿态组成,是一个连续的过程,在时间维度有很重要的特征信息,因此在视频中的进行人体动作识别涉及高层抽象,需要在时间维度中寻找人体动作特征。
3、研究内容
首先USB3.0摄像头作为输入;然后用新的神经 络模型进行运动员运动姿态的估计,输出是以一组图像像素坐标下骨骼点的二维坐标;最后采用新的运动员运动姿态评估算法,与标准人体姿态裤进行对比,得到评估结果。
二、人体姿态评估系统理论研究
1、姿态估计和动作估计
-
姿态估计
姿态指的是某个时刻人体的关节、肢体和躯干形成的固定姿势,这种姿势是静态的。因此姿态估计指通过观测某个时刻的人体图像,重建该时刻人体的关节和肢体在空间中的位姿; -
动作估计
动作是由连续多个时刻的人体姿态组成的动态过程,能够表达出动作的含义。因此动作估计是指通过观测连续时间序列的人体姿态,判断这个时间序列所反映的动作含义。
2、人体姿态坐标集
在人体姿态估计中,肢体间的协作配合量化到数据层面就是人体在空间中各个关节点的坐标,将这些关节点坐标的集合称为人体姿态坐标集。
(1)估计三维空间坐标集
单个摄像头采集的图像是在图像像素坐标系,从图像像素坐标系转换到世界坐标系需要内参矩阵和外参矩阵,其中,外参矩阵的获得需要借助外部方法(标定、移动视角等)。
思路:
- 双目视觉系统
- 单目视觉系统+深度相机(Kinect)
- 通过深度神经 络的训练实现
(2)估计二维空间坐标集
如果在二维空间下估计人体姿态坐标集,因为只有单目视觉系统,则该坐标集的坐标系即为相机坐标系。但是可能会存在图像畸变、复杂环境导致图像质量差、遮挡阴影等问题导致存在误差等情况。
思路
- 通过传统的图像处理,寻找边缘以提取人体姿态,缺点是没有考虑肢体与骨骼点的关系,导致精度较低;
- 通过机器学习或深度学习,在图像层面学习人体姿态特征。
3、人体姿态估计模型
传统人体姿态模型:骨骼点共18个
- 通过给定的最优人体框检测器生成人体,对每个检测到的人体进行下面的模型估计;
- GlobalNet基于特征金字塔 络,获取浅层特征和深层特征;(主要用于识别简单的关键点)
- RefineNet接收GlobalNet的所有特征信息,着重对困难点进行处理。
训练效果(准确率达90%以上)
- 经过VGG的前10层,通过其得到128个尺度的特征图F;
- 随后的 络分为t个阶段,每个阶段两个分支:一个分支用于估计关键点,主要对单张图像进行卷积生成关键点的热点图,峰值表示关键点位置;另一个分支用于像素点在骨架中的走向(关键点亲和场PAFs);
- 最后两分支结果融合,提取峰值,得到图像。
训练效果(准确率达90%以上)
2)估计效果比较
模型 | 效果 | 原因 |
---|---|---|
CPN | 正面图像估计效果极差,球 左侧正反手图像估计效果视情况定 | 1、人体检测框定位效果不好,导致提取不到完整人体或提取其他图像像素过多 ;2、对ROI区域进行关键点提取时,人体和周围环境无明显区别,导致热点图有多个峰值,错误点的峰值高于真实点,出现骨骼点的估计错误 |
DeepPose | 正面图像估计效果极差,球 左侧正反手图像估计效果一般 | 1、采集图像分辨率远大于模型要求输入图像分辨率,导致图像被压缩,当远距离拍摄时,人体在图像中占比下降,特征信息大幅减少 ;2、人体骨骼点被遮挡或与周围环境像素变化不明显,导致热点图存在多峰值,且未增加关节点约束,从而导致估计错误 |
OpenPose | 正面图像估计效果极差,球 左侧正反手图像估计效果优秀 | 1、提出亲和场pafs,近距离侧面估计效果优于其他模型;2、加入对两个骨骼点形成的肢体的特征学习,并将约束的特征用置信图表示,从而提高估计精度 |
经过比较,选取OpenPose作为评估系统的基础模型,用于估计单帧图像中运动员的人体姿态坐标。在大量数据测试中,发现OpenPose仍存在不少问题:
- 运动过快图像模糊,导致估计的骨骼点不全;
- 估计时间在1.5-7秒左右,时间长;
- 彩色图像效果好于灰度图;
- 正面检测效果差
因此后期将对模型的估计速度进行优化。
三、人体姿态评估系统设计探究
采集羽毛球运动员图像资料(15 段视频,8256 帧)用作后续测试和模型训练。
1、摄像头相关问题
(1)摆放位置
通过理论分析和实验,最终确定摄像头摆放最佳位置为球 左侧。
同时羽毛球运动是肢体运动,因此对传统人体姿态模型的骨骼点数量修正,去掉头部的5个骨骼点。
2、减少模型估计时间的方法
(1)图像压缩
1)使用原因及方法原理
原因
估计人体结构模型中的每个骨骼点时都针对于图像中的所有像素,因此图像的大小直接决定了模型的估计时间。人体姿态评估系统采用几何变换(后文称图像压缩)将图像的像素进行压缩,可以减轻模型估计时的计算压力。
图像压缩方法
最近邻法、双线性插值、双三次方插值、像素区域重采样等.
双线性插值方法
训练结果
- 运动的频率不同于一般的人体动作,因此需要保证估计模块和评估模块的总体消耗时间能实时跟踪运动员的运动姿态变化;
- 头部区域的5个骨骼点对人体姿态评估没有影响,且加重计算压力,因此骨骼点选取13个即可;
-
欧式距离
用向量空间中两个向量终点间的绝对距离衡量两个个体间差异大小。 用于比较同一个羽毛球运动员运动姿态的相似度或差异。 -
余弦相似度
用向量空间中两个向量夹角的余弦值作为衡量两个个体间差异大小。用于羽毛球运动员运动姿态与标准姿态的相似度和差异,同时修正了羽毛球运动员之间由于体型等原因产生的度量标准不统一的问题。 - 通过模型得到某帧的人体姿态坐标集后,将坐标系平移到以脖子点为原点的直角坐标系;
- 首先是右上肢区域(右肩、右肘、右手腕),依次计算三个骨骼点与脖子点之间的矢量与x轴正方向形成的夹角集,并将其作为上肢右区域的相似度集。依次计算与标准姿态的三个骨骼点的相似度的绝对值,根据预设误差筛选相似的标准姿态;
- 其次是右下肢区域,计算同第二步;
- 然后是左下肢区域,计算同第二步;
- 最后经过上述过程筛选后得到的标准姿态即为评估结果,在这三个过程中累计比较产生的相似度即为评估值(累计误差反映了其与匹配的标准姿态的相似度,累计误差越低,相似度越高)
- 如根据每个区域对人体姿态的影响对相似度差值加权时,可能会出现耦合现象,因此算法最终采用直接输出匹配结束时的骨骼点、匹配的标准姿态序 和评估值;
- 由于运动过程中右手持拍,左手大多根据根据自身需要调整以保持平衡的特点,因此在与标准姿态匹配的过程中,算法取消了左上肢区域的匹配,并且调整了其余三个区域的权重,即优先右上肢区域,随后右下肢、左
下肢区域。 - 摄像头采集模块
- 预测模型模块
- 人体姿态评估模块
注意:这篇文章中是通过人体姿态估计输出的二维骨骼点坐标集,来进行姿态的评估,最终目标是识别姿态是哪种运动姿态,因此可以采用间隔采样,不会影响最终的结果,但是如果需要对视频实时进行姿态识别(也就是每一帧都标记姿态),则不可取间隔采样的方法。
(3)优化模型结构
1)优化的模型结构
优化考虑因素
优化后的模型结构
由于余弦相似度角度范围是[0,180],而常规二维坐标系角度应为[0,360],所以进行修正,采用相似度进行姿态评估(涉及到坐标系变换,将图像像素坐标系平移到以脖子点为原点的直角坐标系下)。流程如下
因为局部评估是按优先级依次与标准姿态的各骨骼点进行比较的,并不以脖子点为原点,因此不涉及是否需要处理异常帧
实验比较结果如下:
这里需要补充的是:
四、人体姿态评估系统实现
1、整体架构
(1)系统主要组成
系统由三个模块组成:
输入是摄像头采集模块,输出是对于当前帧图像中人体姿态与标准姿态库的匹配结果(得到最接近的标准姿态)以及匹配损失(说明姿态与标准姿态的相似度)。
(2)系统硬件参数
2、估计模型模块
模型的结构参数参考原论文。 络训练步骤参照前面。
这里主要介绍一下训练的过程和结果。
(1)训练过程
优化模型结构参数
3、人体姿态评估模块
(1)算法流程
主要是三个步骤:(1)对输入的骨骼点坐标进行坐标变换;(2)与标准姿态库进行匹配;(3)匹配结果处理。
五、总结一下~
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!