【论文阅读】基于深度神经网络的人体运动姿态估计与识别 | 您所在的位置:网站首页 › 人体姿态检测应用场景包括哪些 › 【论文阅读】基于深度神经网络的人体运动姿态估计与识别 |
阅读文献:王芫. 基于深度神经网络的人体运动姿态估计与识别[D].电子科技大学,2020. 来源:知网 文章目录 一、绪论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个 自上而下估计人体姿态。 模型结构
训练效果(准确率达90%以上) 自下而上方法。将人体姿态估计定义为人体关节点回归的问题,每个关节点都用一整幅图进行回归。 模型结构 多人姿态估计模型,自下而上方法。 模型结构 训练效果(准确率达90%以上) 从时间上看,CPN 模型的估计速度是最快的,其次是 DeepPose 模型,最后是 OpenPose 模型。 经过比较,选取OpenPose作为评估系统的基础模型,用于估计单帧图像中运动员的人体姿态坐标。在大量数据测试中,发现OpenPose仍存在不少问题: 运动过快图像模糊,导致估计的骨骼点不全;估计时间在1.5-7秒左右,时间长;彩色图像效果好于灰度图;正面检测效果差因此后期将对模型的估计速度进行优化。 三、人体姿态评估系统设计探究采集羽毛球运动员图像资料(15 段视频,8256 帧)用作后续测试和模型训练。 1、摄像头相关问题 (1)摆放位置通过理论分析和实验,最终确定摄像头摆放最佳位置为球网左侧。 同时羽毛球运动是肢体运动,因此对传统人体姿态模型的骨骼点数量修正,去掉头部的5个骨骼点。 采用四种摄像头对比,主要考虑参数有如下五个: 原因 估计人体结构模型中的每个骨骼点时都针对于图像中的所有像素,因此图像的大小直接决定了模型的估计时间。人体姿态评估系统采用几何变换(后文称图像压缩)将图像的像素进行压缩,可以减轻模型估计时的计算压力。 图像压缩方法 最近邻法、双线性插值、双三次方插值、像素区域重采样等. 双线性插值方法 双线性插值的详细讲解 图像处理之双线性插值法 双线性插值算法及需要注意事项 三十分钟理解:线性插值,双线性插值Bilinear Interpolation算法 2)图像压缩流程及模型结果
使用双线性插值进行图像压缩,会导致源图像的图像特征减少。因此有必要验证使用图像压缩对模型估计的精度影响,通过实验探究图像压缩操作是否能用于缩短估计模型估计时间。 a. 实验流程及公式
通过实验,观察到相同视频相同压缩系数下,压缩操作前后的代表值变化存在某种线性关系,因此设计一个线形神经网络 y=Wx+b 估计线形关系。期望通过该线性神经网络模型,估计出压缩操作前后由估计的骨骼点坐标计算出的代表值的变化规律。 (x是压缩后代表值,y为压缩前代表值,W 是估计压缩系数,b 是估计误差) 网络的一些细节: 模型只有权重W和修正值b,属于线性神经网络;损失函数L2,目的是L2最小化,使结果t和正确结果y尽可能接近;![]() 训练结果 压缩系数 2![]() ![]() ![]() 结论 压缩系数为2或4时,图像压缩操作对估计的骨骼点坐标影响是线形关系;压缩系数为8时,图像压缩操作对估计的骨骼点坐标的影响不存在明显关系,说明压缩系数过大会导致图像特征丢失严重,在压缩中是不可取的;因此,选择合适的压缩系数,可以使用图像压缩操作来减少估计模型估计时间。 (2)间隔采样 1)采样原理间隔采样:主要指的是在时间维度上对摄像头采集到的连续图像进行间隔采样。 采样定理:在进行连续信号离散化的过程中,当采样频率大于信号中最高频率的 2 倍时,采样之后的离散信号可以完整保留原始信号中的信息。 本文采样原理:运动员的动作变换在10到20帧左右,而摄像头的采样帧率远高于此,因此,可以通过选用合适的帧率和采样间隔t,使采样频率大于人体运动频率的2倍以上,就可以完整保留信息。 2)间隔采样流程在图像采集后,每隔t帧后保存一帧用于人体姿态评估。可以减轻计算压力。 注意:这篇文章中是通过人体姿态估计输出的二维骨骼点坐标集,来进行姿态的评估,最终目标是识别姿态是哪种运动姿态,因此可以采用间隔采样,不会影响最终的结果,但是如果需要对视频实时进行姿态识别(也就是每一帧都标记姿态),则不可取间隔采样的方法。 (3)优化模型结构 1)优化的模型结构优化考虑因素 运动的频率不同于一般的人体动作,因此需要保证估计模块和评估模块的总体消耗时间能实时跟踪运动员的运动姿态变化;头部区域的5个骨骼点对人体姿态评估没有影响,且加重计算压力,因此骨骼点选取13个即可;优化后的模型结构 掩膜的理解:https://blog.csdn.net/bitcarmanlee/article/details/79132017 2)优化模型的优势 保留人体矢量倾合场结构,学习骨骼点之间的连接关系特征,同时在骨骼点估计时提供肢体特征置信图进行联合估计,能够保证优化模型的估计精确度;减少计算人体肢体置信图和骨骼点热点图的轮次,只有4层,减轻计算压力;减少5个无关骨骼点的检测,模型减少约30%计算量;在COCO数据集训练基础上,用采集的羽毛球运动员运动图像再次训练,保证优化模型的估计精度。 2)优化模型的结果 骨骼点估计准确度对比![]() ![]() 在前面都在讲如何进行人体姿态的估计,下面将介绍估计出可靠的人体姿态骨骼点后,如何根据骨骼点识别人体姿态。 本算法是识别单帧图像中的人体姿态,输入是一组估计的骨骼点二维坐标,输出是识别结果和评估值。由于是单帧图像,缺少时间信息,所以主要与预设的标准人体姿态进行对比。 (1)算法主要关注问题 1)整体评估与局部评估作者根据运动中主导肢体的不同,将运动分为四类: 下肢运动,如足球等;上肢运动,如羽毛球、网球等;全身运动,如篮球等;情感运动,如点头、摇头等。整体与局部评估 整体评估:以求和平均值的方法保证每个骨骼点在该帧的人体姿态代表值中权重相同,然后再与标准姿态相似度比较,通用性强;局部评估:对骨骼点设定优先级,按优先级与标准姿态的各骨骼点相似度进行评估,能够放大重要骨骼点在评估中的作用,但不直观。 2)处理异常帧 若为空白点(即图中所有的人体骨骼点都为(0,0),则不评估该帧;若为错误点(即图中有部分人体骨骼点为(0,0),则需要分两种情况:如果错误点为脖子点,则不评估该帧,其他则剔除错误点,使用剩余骨骼点进行整体评估; 3)衡量待测姿态与标准姿态a. 坐标系变换 估计模型得到的人体姿态坐标集是在图像像素坐标系下的数据集,从图像像素坐标系变换到世界坐标系步骤: 将图像像素坐标系下的理想图像去畸变得到真实图像;将图像像素坐标系转换为图像物理坐标系,即单位变换;利用相机内参矩阵将图像物理坐标系转换到相机坐标系下,这是一个光学投影的过程;利用相机外参矩阵将相机坐标系转换到世界坐标系;b. 欧氏距离和余弦相似度 衡量个体差异的主要方法。 欧式距离 用向量空间中两个向量终点间的绝对距离衡量两个个体间差异大小。 用于比较同一个羽毛球运动员运动姿态的相似度或差异。 余弦相似度 用向量空间中两个向量夹角的余弦值作为衡量两个个体间差异大小。用于羽毛球运动员运动姿态与标准姿态的相似度和差异,同时修正了羽毛球运动员之间由于体型等原因产生的度量标准不统一的问题。 由于余弦相似度角度范围是[0,180],而常规二维坐标系角度应为[0,360],所以进行修正,采用相似度进行姿态评估(涉及到坐标系变换,将图像像素坐标系平移到以脖子点为原点的直角坐标系下)。流程如下 设计了以下六种方案(方案流程图见论文): 因为局部评估是按优先级依次与标准姿态的各骨骼点进行比较的,并不以脖子点为原点,因此不涉及是否需要处理异常帧 实验比较结果如下:
根据方案六,设计人体姿态评估流程如下: 这里需要补充的是: 如根据每个区域对人体姿态的影响对相似度差值加权时,可能会出现耦合现象,因此算法最终采用直接输出匹配结束时的骨骼点、匹配的标准姿态序号和评估值;由于运动过程中右手持拍,左手大多根据根据自身需要调整以保持平衡的特点,因此在与标准姿态匹配的过程中,算法取消了左上肢区域的匹配,并且调整了其余三个区域的权重,即优先右上肢区域,随后右下肢、左 下肢区域。 四、人体姿态评估系统实现 1、整体架构 (1)系统主要组成系统由三个模块组成: 摄像头采集模块预测模型模块人体姿态评估模块输入是摄像头采集模块,输出是对于当前帧图像中人体姿态与标准姿态库的匹配结果(得到最接近的标准姿态)以及匹配损失(说明姿态与标准姿态的相似度)。 (2)系统硬件参数模型的结构参数参考原论文。网络训练步骤参照前面。 这里主要介绍一下训练的过程和结果。 (1)训练过程训练的数据集 包括 COCO 数据集中含有人的图像和摄像头采集图像,资料来源于羽毛球运动视频; 优化模型结构参数 主要是三个步骤:(1)对输入的骨骼点坐标进行坐标变换;(2)与标准姿态库进行匹配;(3)匹配结果处理。
输入的骨骼点坐标的坐标系是以图像左上角为原点的图像像素坐标系,无法直接与标准姿态进行匹配,因此需要坐标变换。 1)坐标变换步骤 (a)将坐标系从图像像素坐标系转换到以人体骨骼点中脖子点为原点的直角坐标系;(b)将坐标系从以脖子点为原点的直角坐标系转换到以脖子点为原点的极坐标系,并计算极坐标系下其余 12 个点与 x 轴正方向的夹角值,夹角范围 [0,360];
分成了 9 个小阶段,分别匹配 0、1、2、6、7、8、9、10、11九个区域(3、4、5是左上肢,忽略)。 每个小区域的都是取待评估姿态和上一阶段的候选标准位姿的对应角度,计算二者差的绝对值,后续称为累计误差。如果累计误差小于等于该阶段的允许误差,则人体这个标准位姿符合这一阶段的评估并将该标准位姿放入这一阶段的候选标准位姿集。 (3)结果展示用连续单帧图像进行匹配后,其中 138 和 139 帧没有匹配到标准姿态,140 至145 帧都匹配到了对应的姿态。 这篇论文中,作者设计了一个人体运动姿态评估系统,主要包括人体姿态估计模块和人体姿态评估模块。 人体姿态估计模块首先用三种姿态识别模型进行对比,通过实验确定本文的基础模型是OpenPose,然后考虑到本文的输入对象是视频,所以实时性也很重要,基础模型估计时间不能满足要求,因此进行模型的优化改进,通过图像压缩、间隔采样和优化模型结构(减少stage阶段数,减少需要估计的骨骼点数量)三种方法进行优化。最后也介绍了训练过程和效果。 人体姿态评估模块主要是基于估计模块输出的骨骼点坐标集,来对图像中人体的动作进行识别,通过将待预测姿态与标准姿态库中的姿态对比匹配,输出识别结果和匹配损失。在这一部分,采用局部评估+相似度的方法来进行匹配,只比较右上肢、右下肢、左下肢三个部分的骨骼点,将每个骨骼点的相似度与标准姿态的进行对比,计算累计误差,累计误差越小的,说明匹配度越高,从而得到和待预测姿态最接近的标准姿态。 |
CopyRight 2018-2019 实验室设备网 版权所有 |