基于AlphaPose姿态识别模型的武术评价研究与实验
2023-10-20姚翠莉杨雨龙
王 帅,姚翠莉,杨雨龙,刘 昊,魏 维
(1. 大连理工大学电子信息与电气工程学部,大连 116024;2. 大连理工大学创新创业学院,大连 116024;3.大连理工大学体育与健康学院,大连 116024)
0 引言
运动是居民日常生活中锻炼身体的主要方式,同时国家体育总局下发《关于大力推广居家科学健身方法的通知》[1]以及冰雪运动的推广等号召,均体现出运动是当今时代的主题之一。近十年随着国家对于传统武术的大力推广,武术爱好者数量不断激增,同时近年来受疫情影响,人们对于居家健身的需求不断增加,运动空间需求较小的武术运动成为人们的理想选择之一。
传统武术指导需要专业教练,这种人工手段已经无法满足多数人对于运动的学习需求。利用神经网络、计算机视觉相关技术可以在体育领域中对人体运动姿态进行深入剖析,因此无论是为运动员动作识别与矫正提示提供科学参考,还是对于个人居家武术健身的科学性,使用人工智能技术实现此类功能已成为大势所趋。
目前相关研究中姿态识别任务的应用化还处于初级阶段,基本只停留在识别骨骼图本身,以姿态识别进行动作分类为主[2-8],例如使用姿态估计来预测目标是否进行特定动作,评价方式较为单一,缺少有效的动作评分方式[9],缺少对武术及其他体育项目的专业适应性,该类动作评价任务仍存在较大的研究空间。
本文使用AlphaPose 模型[10]提取骨骼点,然后对动作相关骨胳点进行时间和空间序列匹配度计算,针对测试者动作进行骨胳向量绘制,并依据学习得到的评分拟合算法,给出每一时刻的动作分数。
本实验设计中主要工作有:设计有效的动作评价方式;将迁移向量与被测试目标身体骨骼比例相匹配;设计了多体任务中的同帧动作向量计算模型;对于具有预存储模型的单体评价与矫正提示任务,解决了标准动作向量与被测试目标动作向量之间的时间序列和空间序列匹配问题。
1 AlphaPose模型
AlphaPose 模型使用区域多人姿态估计框架,该框架主要由三部分组成:对称空间变换网络、参数化姿势非极大值抑制和姿势引导区域发生器。该框架改善了基于单人姿态估计的人体姿态估计算法的性能。
该框架设计了一个新的对称空间变换网络,与单人姿态估计网络相连,从一个不准确的目标框中提取高质量的目标区域;针对冗余检测问题,引入了参数化姿态非极大值抑制方法,通过使用新的姿态距离计算方法来比较姿态的相似性进而消除冗余姿态;提出了一种新型的姿态引导数据生成器,通过学习不同姿势下人体检测器的输出分布,模拟人体目标框的生成,从而产生大量训练样本。
该框架的流程为:
(1)使用人体目标检测器获得人体目标框。
(2)将人体目标框送入“对称空间变换网络+单人姿态估计”模块,自动生成姿态估计。
(3)生成的姿态估计由参数化姿态非极大值抑制进行优化,消除冗余的姿态估计结果。
该框架在多人姿态估计任务中的定位、识别方面误差较小,虽然使用两阶段姿态估计方式会对检测速度造成一定影响,但相较于单阶段模型,该模型可以做到相对兼顾识别的准确率和实时性,更适合作为武术动作的姿态估计模型。
2 武术评价任务整体流程
武术评价任务的整体流程如图1 所示,包括骨骼向量提取与表示、任务分类和分数函数拟合。
图1 武术评价任务整体流程
2.1 骨骼向量
使用AlphaPose 模型提取武术练习者的骨骼向量。该信息被分为两级储存,第一级为骨骼点对,其中第一点为起始点,第二点为终止点。第二级信息由字典格式储存骨骼点对应的实际像素点位置,以便在后续的匹配任务和分数计算中进行计算。
武术评价要求能够直观表示和辅助矫正被测试目标的武术动作,因此需要将标准动作向量迁移至被测试目标对应动作位置进行绘制,该过程需要选择一个关节点作为骨骼向量迁移的对齐匹配中心点。本文实验了两种方式,第一种是以头部作为中心,整体进行迁移。第二种是通过对所有关键骨骼点进行加和求平均值来计算匹配中心点。在实际使用中,由于二维图像中骨骼向量比例的变化和三维世界不同,缺少了深度信息,在具有肢体前后重叠的动作中计算位置与实际位置偏差较为严重,很难如理想状态下将匹配中心点定位在被测试目标的正中心处,因此最终选择以头部点位为起始点。在得到起始点位后,由该点位进行延伸,按照骨骼点对中储存的顺序,依次在目标人物对应位置绘制标准动作骨骼向量。
针对骨骼向量的长度表示,本文设计了两种方式。第一种是直接迁移,即不改变基准目标的骨骼向量长度信息,直接迁移至被测试目标。由于被测试目标和基准目标骨骼向量的长度存在差异,会对最终的分数计算造成影响,因此第二种方式是对骨骼向量长度进行比例自适应调整,即将标准骨骼向量乘上一个比例系数,以此来消除标准骨骼向量长度与被测试目标骨骼向量长度不匹配的问题。
式中:leni为被测试目标人物i的肢体长度;lenj为基准动作者j 的肢体长度;εx,i和εy,i分别表示被测试目标肢体起始骨骼点和终止骨骼点沿着x和y方向变化的像素值;εx,j和εy,j分别表示基准目标肢体起始骨骼点和终止骨骼点沿着x和y方向变化的像素值。
在动作匹配计算模型中,如果被测试目标动作错误较为严重,和标准动作的计算过程产生较大误差(例如标准动作是向下微伸,而被测试目标为向下伸张),此时由于深度信息未被计算在内,标准动作向量长度与被测试目标动作向量长度之比所得系数将受到较为严重的影响。
针对这一问题,本文采用了一个权衡的解决方案。在大多数武术动作或运动中,第一帧中标准动作与被测试目标动作一般来说是差距最小的状态,记录此时的比例值来作为整体比例系数,能够在一定程度上缓解这个问题。
2.2 任务分类
多体评价任务,是在图像中存在可以代表标准武术动作的目标人物的任务,即其中一个人物作为教练员(基准目标),其他人物作为学员(被测试目标),在两类目标之间进行骨骼向量迁移和分数评价。
本文实验将最右侧目标作为基准目标,其他目标与其进行动作匹配计算,在实际使用中,也可以将该选择设计为超参,来使其他位置的目标作为基准。也可以选取一定的约束,例如以总人数除二取整选取基准目标,使标准动作人物定位在中心。
在该类任务中,本文采取同帧计算,即在视频相同的一帧内进行被测试目标与标准动作目标的相关计算。这种同帧计算任务可以满足某些特殊的需求,例如某些难以找到标准动作视频的武术或运动项目,同时对于某些团体项目,该方案可以便捷地计算武术团队的整体协调度。
单体评价任务,指的是图像中没有基准目标而只有被测试目标的评价任务。此时需要在标准动作目标人物的武术动作视频中提取所需的骨骼向量数据文件,并与被测试目标即输入视频中的目标人物进行相关计算。
对于此类任务,由于输入视频与提取出的标准动作向量数据所对应的原视频并未经过对齐,二者在时间上没有必然联系,本任务需要避免细微的时间差异导致动作匹配过程发生严重的错位,从而导致分数评价出现较大偏差。针对这一问题,本文对时间序列进行修改,计算输入视频在当前时刻的各肢体动作向量,与一定时间范围内每一时刻的标准动作向量的误差关系,选择误差总量最小的时刻作为对齐时刻,以此进行相关计算,详细流程见算法1。
其中:T表示输入视频当前时刻,x表示时序匹配的前后时间范围,Ls表示欧氏距离和,Ls_m表示欧氏距离最小误差之和,t表示当前标准视频对应的时刻。
2.3 分数拟合
得分函数需要一个参数d作为拟合函数的自变量,本文使用欧氏距离和向量方向两种方式进行试验。
计算被测目标动作向量与标准动作向量之间误差值的欧氏距离,如公式(3)所示。在评价计算过程中,若未采用身体骨骼向量长度进行等比例自适应调整,则会产生由于肢体长度不同而导致的误差。因此使用相同的技巧,即取第一帧图像,也就是双方动作差距较小的状态,为本次评价中的人物骨骼向量长度提供一个校准值。
式中:l_pair的下标i代表第i个骨骼点对,也就是第i个肢体动作,0、1分别代表被测试目标和基准目标,pixel函数表示取对应肢体动作的像素变化值。
计算双方动作向量间角度的差值,在一定程度上缓解了使用欧氏距离时遇到的长度比例问题,但角度计算由于缺失了深度信息,对于处于同一角度的动作,事实上可以对应很多不同的深度情况,这些情况难以区分,如果想要估算深度,则需要由骨骼向量长度进行反推。
式中:ɑ和b分别表示基准目标和被测试目标。
在实际应用中,前置肢体(例如大臂)发生错误而后置肢体(例如小臂)动作准确无误的情况,相较于后置肢体发生错误而前置肢体动作准确无误的情况,会对被测试目标的评价造成更大的消极影响,因此需要为每个部位提供不同的权重系数。
针对运动中每个动作都有微小差距和某部分肢体动作出现严重偏差这两种情况相比,其差值总和可能相同,但前者对于评价者的感官影响和评价均优于后者,这意味着动作误差在数值上的变化与评价人观感与评价上的变化并非线性匹配,因此误差值变化与分数变化是一个非线性的关系,也就是一个梯度单调递增的拟合函数。
针对本文武术项目,对训练集中的任务抽取足量的时间点,由大连理工大学武术社团的同学和老师对其进行人工标注,得到感官评价分数,同时计算这些时刻的误差值,即可得到动作误差值与其对应的分数,以此拟合得分函数。根据得到的拟合曲线进行适当的人工调整,得到对应各肢体动作的最终拟合函数。为防止抽取点数不足而导致拟合关系变为线性,在实验中使用e作为底来进行指数函数拟合,最终得到的得分函数形如式(6)所示:
其中:μi为拟合的比例系数,ki为各部位权重系数,εi为每一项的线性补偿。
3 分数拟合消融实验
多体任务和单体任务的测试结果如图2、图3 所示。其中图2 展示的多体评价任务使用了等比例自适应调整方法。图3 处展示的单体评价任务,没有使用等比例自适应调整方法,对比多体任务,此时绘制的标准骨骼向量与被测试目标的骨骼向量长度并不完全匹配。根据图3所示图片可以看出,即使输入视频与预存视频并未直接进行对齐,经过时序匹配算法后,被测试目标处绘制的标准动作向量仍可以比较接近此刻被测试目标的动作,说明使用时序匹配算法能够缓解动作难以对齐这一问题。在下面的消融实验中,本文将定量比较这两种算法的效果。
图2 多体评价任务测试效果(使用骨骼向量长度等比例自适应)
图3 单体评价任务测试效果(使用时序匹配算法)
多体任务、单体任务的验证分别使用如图2、图3 中截图所示的完整视频(分数拟合的训练过程使用同类武术动作的其他自制视频),在得到完整的评分视频后进行抽样并对抽样点进行人为打分标注。对于多体任务进行等比例自适应方法的效果验证,对于单体任务进行时序匹配算法的效果验证。分数拟合消融实验结果见表1。
表1 分数拟合消融实验结果
4 结语
本文成功将动作评价任务的研究工作由分类任务转化为更精确的回归任务,使用自制的训练集(用于拟合曲线)和测试集(用于验证算法有效性)获得相应武术动作的分数拟合函数,设计并验证了骨骼向量长度等比例自适应和时间序列匹配算法的有效性,为以武术动作评价为例的各类运动提供便捷有效的智能动作评价和辅助矫正功能。