本篇学习报告的内容为“一种基于多任务学习的人体活动分割和工程学风险评估方法”,所参考的论文是《A Multi-Task Learning Approach for Human Activity Segmentation and Ergonomics Risk Assessment》[1],参考论文在2021年发表在WACV会议上。本论文提出了一种新的基于图的人类活动评估(Human Activity Evaluation,HAE)多任务学习框架(Multi-Task Learning,MTL),用来解决长视频中的人类活动评估的问题。该网络框架以长视频中每帧的骨骼序列数据作为输入,输出为长视频中被分割成不同的活动类及其对应的风险评分。该网络框架在UW-IOM和TUM Kitchen数据集上进行了训练和测试,最后对实验结果进行了总结与对比,原文链接与代码链接见文末。
1.研究背景和内容
1.1研究背景:
随着计算机视觉技术的发展,自动化人体活动评估(HAE)得到了广泛的关注。这类问题的目的是设计一个计算模型,捕捉人类运动的动态变化,并根据预定义的度量标准衡量人类活动的质量。HAE已被用于多种计算机视觉应用,如运动活动评分、运动员训练、康复和保健、互动游戏、技能评估和工业环境中的工人活动评估,具体举例如下:在工程活动中有很多工人因为姿势不当而反复举重物造成背部损伤,因此需要有方法来评估姿势的得分;在体育活动中,可以根据运动员的姿势进行评分;在康复医疗中可以根据病人的活动姿态给出相应的分数来辅助判断是否康复 。
早期的一些HAE研究使用传统的特征提取方法进行活动特征提取和性能分析,近年来,随着深度学习方法的普及,出现了许多解决HAE问题的方法,比如有:
①一些方法直接学习从图像到质量评分之间的映射。由于活动质量高度依赖于任务,大多数研究都集中在学习过程中利用可用的活动信息。
②另一种方法是测量测试序列与模板序列的偏差,以确定活动质量。当人们以某种方式(如体育比赛或制造操作)遵守一系列固定活动的情况来评估其表现时,这种方法很有价值。
但是大多数HAE的深度学习的方法高度依赖于视频帧的背景,此外,学习到的视频每帧和得分之间的映射没有纳入人体运动学的影响,一个成功的算法应该学习人体关节动力学与对应的人机工程学风险评分之间的关系。
1.2研究内容:
本篇论文的研究内容是在一个长视频中定位动作并将不同的活动分割出,同时在每一帧推断人类动作的人机工程学风险评分,如图1所示。
图1 多任务活动分割和人机工程学风险评分
2.研究方法
2.1基于图的多任务学习框架
论文提出了一种新的HAE多任务学习框架,如图2所示。首先利用图卷积网络(Graph Convolutional Network,GCN)主干将人类关节之间的连接嵌入到特征中,后续分为两个任务来实施:
(1)在该框架下,将人类活动分割(Human Activity Segmentation ,HAS)问题作为一项辅助任务来改进活动评估,HAS由一个编解码器时间卷积网络(Encoder-Decoder Temporal Convolutional Networks,ED-TCN)驱动,以语义上将长视频分割成不同的活动类,随后计算分类任务的损失函数值(Activity Define loss,AD loss)。
(2)另一个是人体姿势评估(Human Postural Assessment,HPA)任务,HPA是HAE的一个子类,这里使用基于长-短期记忆网络(Long Short-Term Memory,LSTM)的结构来得出风险评分,随后计算回归任务的损失函数值(Postural Assessment loss,PA loss)。
最后将两个任务的损失函数按不同权重相加即得整个网络的损失函数(Final Loss)。
图2 多任务学习(MTL-emb)网络框架
GCN用于处理非欧几里得空间的数据,比如图、流形等数据形式,GCN是人体运动学最直观的选择,因为对于图数据来说,常用的独立同分布随机变量假设并不适用,所以GCN常用于分析视频中的人体运动,并在多个计算机视觉应用中得到了应用。论文首先利用GCN网络来提取关节空间特征,GCN的公式如下:
式中,输入,D=3表示关节使用坐标(x, y, z),N是关节的数目,表示度矩阵,W是待学习的权重矩阵,a是分区索引,即对于某帧某个位置x作为输入,f是提取了图中空间信息的高层输出特征,随后将输出特征传到后续的HAS和HAE分支任务中。
2.2人体活动分割(HAS)任务
HAS的任务是将一个视频语义分割成对应各种活动的片段,并确定它们的初始和最终帧。HAS任务由基于1维扩展卷积的ED-TCN(见图2)完成。ED-TCN由四个时间卷积、池化和上采样层组成的层次结构,该ED-TCN的输出被提供给分类层。然后计算分类任务真实值(ground truth)与模型预测值之间的交叉熵损失,如下式所示:
式中,T为帧数,Cl是类的数量,yt,c表示第t帧动作是否属于第c类的真实标记,xt,c表示第t帧动作属于第c类的网络预测概率输出。
2.3人体工程学风险评估(ERA)
在介绍HAP任务前,先介绍人体工程学风险评估(Ergonomics Risk Assessment,ERA),仅在美国,每年就有超过15万名工人因姿势不当而反复举起重物而背部受伤,因此需要有方法来评估各类姿势的风险评分,最近有许多研究着眼于设计自动化ERA方法。行业中使用最广泛的方法是快速全身评估(Rapid Entire Body Assessment,REBA)和欧洲装配工作表(European Assembly Worksheet Assessment,EAWS):
(1)REBA提供了1- 15数字之间的风险评分,考虑了所有的主体关节角度,施加的力的大小,以及抓取物体的容易程度。
(2)EAWS是一种类似的方法,专注于装配任务中的上肢姿态。
在实践中风险值的量化主要是基于观察。
自动化年代分析研究大致可分为两大类:其中一条研究重点是在协作环境中降低人体工程学风险。另一项研究重点是学习各种个体行为的人体工程学风险。本篇论文的HPA任务中的ERA方法使用REBA评估方法,并且研究的是个体行为的人体工程学风险。
2.4人体活动评估(HAE)任务和人体姿势评估(HPA)
HAE也称为动作质量评估,有侧重于设计模型,能够学习人类关节动力学和相应的人机工程学风险评分之间的关系。
HPA是HAE的一个子类,侧重于使用基于人体工程学(或基于生物力学)的标准来确定人体姿势的质量,本论文将HPA作为另一个任务来评估动作质量。其中活动评分是根据姿势的安全性来确定的,在HAP中,任务是找到时空特征和人机工程学风险评分之间的映射。GCN提取的空间特征通过带有双非线性的FC层,然后被送入堆叠的LSTM结构中,以预测REBA分数,LSTM网络的预测输出用来计算回归问题的损失函数值,如下式所示:
式中,xt是网络预测的得分,yt是真实值得分,α和β是需要学习的权重,是L1范数。
2.5 ERA的多任务方法
多任务学习(MTL)是对单个网络进行端到端训练以解决多个相关任务的流行框架,在这些网络中,一个共同的主干为负责学习特定任务的分支提供数据表示。在MTL中,通常有一个主要任务加上多个辅助任务来补充核心任务。
本论文选择HAE的子类HAP作为核心任务,主要是确定动作质量,行动质量和行动类别关系密切,所以选择HAS作为辅助任务,将HAS任务的分类输出结果融合到HAP任务中。辅助任务的监督信号可以被看作是归纳偏差,它限制了假设搜索空间,并导致一个更一般化的解。
本篇论文在MTL的框架中并且在数据集下实验了两种不同的体系结构,并将它们的结果进行对比:
1.在第一个体系结构中,每个任务只共享GCN的输出特征,即不融合两个任务,称为MTL-base(Multi-Task Learning-base,MTL-base)方法,即在图2中最后不将两个任务的损失函数相加即得MTL-base框架图。
2.在第二个体系结构中,HAS任务的Softmax层的输出被融合到LSTM回归器的特性中,称为MTL-emb(Multi-Task Learning-emb,MTL-emb)方法,此方法的最后将HAS和HAP任务的损失函数相加作为整体多任务的损失函数,如图2所示,公式如下所示:
式中,y是待学习的权重。
3.实验
3.1数据集
工业活动中的数据集较少。有两个这样的数据集可用:
(1)UW-IOM数据集是具有20个视频的公开数据集,用于捕获行业相关活动。数据集有17个动作类,其标签是四层层次:指示对象,人的运动,对象操作的类型(如果适用),和活动正在发生的表面的相对高度。这个数据集中最长的视频有2384帧。论文使用的是作者早期工作的UW-IOM数据集的3D姿态。
(2)TUM Kitchen Dataset有19个视频,包括厨房的日常活动。这个数据集中最长的视频有2048帧。我们模型的输入特征是N =15个关节的三维关键点(x, y, z),随着时间的推移连接在一起。因此,得到的输入张量的维数为3×15×T。输出的ground真值标签是基于帧的标签,其尺寸为1 × T。
论文提出的方法在这两个数据集上均进行了实验。
3.2实施细节
(1)人体工程学风险预处理
REBA方法根据关节角度和动作的性质计算一个描述身体总风险的分数。REBA评分是1(最低风险级别)到15(最大风险级别)之间的离散整数。所有受试者的分数都是平均的,每个活动都有一个分数,我们使用检测到的骨骼来计算关节角度,并得到一个基于帧的REBA评分。随后使用Python UnivariateSpline函数平滑了REBA序列,使ERA回归器更容易学习模式。可以在本学习报告末尾的代码链接中获得平滑的REBA分数和代码。
(2)网络参数和具体结构
所有网络都是在PyTorch中实现的。损失函数权重参数α、β和γ的初值设为1。所有的网络都是用Adam optimizer优化器训练的。作者以不同的学习速率对模型进行训练,以找到最佳的学习速率(最佳学习速率如表3所示)。将UW-IOM数据集中的20个视频随机分成15个和5个,分别作为训练集和验证集。对于TUM数据集,训练集和验证集分别包含15和4个视频。
本篇论文的GCN网络,HAS任务和HAP任务所用到的网络结构如图3所示:
图3 具体网络结构
(3)指标评价
为了测量HAS网络的性能,论文使用了F1-overlap分数、分段编辑评分和平均精度(Mean Average Precision,MAP):
①F1-overlap分数本质上是Precision和Recall的调和平均值,计算公式如下:
②分段编辑评分是衡量预测序列与真实序列的接近程度。如果序列的顺序和动作片段的数量不正确,这个度量就会减小。
③MAP是计算所有类的平均精度,并报告其平均值。
4.实验结果
4.1单任务实验(single-task experiments)
为了评估提出的多任务学习方法在解决HAS和HPA问题上的优势,论文对HPA任务和HAS任务进行了两个单任务实验,分别称为STL-PA和STL-AS。STL-AS实验背后的另一个原因是为了研究我们的GCN模型作为空间特征提取器在解决HAS问题上的能力。
STL-PA网络与MTL网络具有相同的GCN骨干网和LSTM设计,表1中报告了验证集的平均MSE结果。从结果中可以清楚地看出,STL-PA网络无法学习REBA配置文件的复杂模式。
表1 STL-PA单任务网络在两种数据集上的表现,用MSE和Sp.Corr.系数指标来衡量评估性能
4.2基于GCN-ED-TCN的动作分割方法vs其它先进方法
这里作者在单任务STL-AS中把GCN网络换成其它三种空间特征提取器:即ImageNet上的预训练VGG16,VGG16模型的微调版本,以及P-CNN模型。
然后在两种数据集上进行实验,并用3.2节的第(3)点提到的性能指标来衡量各种网络方法的性能,结果如表2所示:
从图中可以看出论文提出的GCN-ED-TCN网络组合的性能可与表2所示的最新技术相媲美,并且基于姿态的特征更适合于设计可推广的算法,然而,我们应该强调的是,当姿势信息很差或活动需要类似的姿势时,模型的性能就会下降,这就是TUM数据集的情况(表2)。
表2 在解决HAS任务的不同网络结构在UW-IOM和TUM数据集上的性能表示
4.3单任务vs多任务方法
论文将融合方法(MTL-base)和不融合方法(MTL-emb)的网络分别在两种数据集上进行了实验,两种方法的网络性能结果如表3所示。
将表1(STL-PA单任务网络性能)和表3(MTL多任务网络性能)的结果进行比较,可以发现MTL方法在预测活动风险评分方面的实质性改进是明显的。我们认为,这一观察结果背后的深层原因是REBA评分高度依赖于活动类型,学习辅助的HAS任务可以提高HPA任务的表现。
然而,通过比较表2和表3的网络性能得分结果,表明STL-AS方法在HAS中的表现优于MTL方法,即相反的依赖性并不强(即HAP任务对提高HAS的表现关联不大)。
表3 在MTL框架下的MTL-base和MTL-emb方法在两种数据集上的性能表示
4.4融合vs不融合方法
图4显示了MTL-base和MTL-emb两种方法在UW-IOM数据集上的结果。本论文实验的主要目的是验证动作信息可以提高REBA评分预测的观点,当HAS任务的Softmax层输出融合到HPA任务后,从表3可以看出MTL-emb方法比MTL-base方法的性能更好,同时从图4中的结果表明MTL-emb对REBA分数的预测更为准确:。
图4 融合方法和不融合方法在UW-IOM数据集上的结果,图中第1,3行的不同颜色代表同一种方法对视频不同动作的分类,第2,4行是对应动作的评分曲线,第2,4行有浅蓝绿色的真实评分曲线(Ground truth REBA),以便和不同方法的网络预测进行比较。可以看出MTL-emb网络的预测更贴合真实评分。
4.5失败案例
从表2和表3可以看出,论文的MTL-emb和STL-AS方法在TUM数据集上并不是特别成功,下面对这种情况进行了分析。图5给出了UW-IOM和TUM数据集的混淆矩阵。
图5 MTL-base方法的混淆矩阵,上面和下面的矩阵分别用于UW-IOM和TUM数据集
有两个原因造成在TUM数据集上表现不好的这种情况:
1.TUM数据集中的摄像头视图是从顶部开始的。因此,对于背对着相机、手臂被遮挡的活动(如拾取抽屉、关闭抽屉),手臂姿势估计质量较差。
2.另一个造成混淆的原因是双手提手和单手提手之间的姿势非常相似。 所以这两个原因导致在TUM数据集上的动作分割不是很成功,MTL-emb和MTL-base模型在REBA评分预测方面的改善也不像UW-IOM数据集那样显著。
改进的措施:对于TUM数据集,将基于图像的特征与GCN融合可以潜在地减少GCN空间描述子的模糊性,从而改善用于REBA评分预测的STL-AS和MTL结果。
5.个人总结与思考
1.本篇论文介绍了一种新的HAE多任务学习框架,和传统方法比,此方法的亮点在于通过引入GCN把人体关节动力学特征和ERA联系起来。实验结果表明,将GCN与ED-TCN的结合用于长视频的活动分割,该结合在HAS上的表现优于其它最新方法在UW-IOM数据集上的表现。关键的是多任务学习方法比单任务方法在HPA的表现上更好(对比表1和表3)。在MTL的框架下,多任务融合的方法在风险评分方面比多任务不融合方法的表现更贴合真实值评分曲线(见图4),并且多任务融合方法的网络性能也比多任务不融合方法的网络性能更好(见表3)。
2.虽然本篇论文的重点是人机工程学风险评估,但此多任务学习方法框架可以应用于许多其他领域,如技能评估、康复医疗等领域,关键是找到初始的行为评估得分方法。
3.GCN网络的输入在空间表示中只考虑关节位置,而其他运动学信息,如速度和加速度,已经被证明对许多类型的损伤很重要,如背部损伤。所以,之后的方向可以开发一个基于生物力学的人体姿态表示模型来解决这些问题[1]。即基于图的人体骨骼序列数据将速度,加速度等信息包含进去,不仅仅只包含关节点的2维或3维坐标,然后再利用该模型学习关节运动学和由此产生的人机工程学风险之间的映射关系。
参考文献:
[1] Parsa B, Banerjee A G. A Multi-Task Learning Approach for Human Activity Segmentation and Ergonomics Risk Assessment[C]// IEEE/CVF Winter Conference on Applications of Computer Vision. IEEE, 2021.
原文链接:https://arxiv.org/pdf/2008.03014.pdf
代码链接:https://github.com/BehnooshParsa/MTL-ERA
撰稿:曾嘉煜
审稿:周成菊