人体行为识别是计算机视觉领域的一个重要课题,在智能监控[1]、运动分析[2]、人机交互[3]等方面有着广泛的应用前景.近年来,基于深度学习的骨架行为识别获得了广泛的研究.在基于卷积神经网络的研究中[4],将骨架数据以向量矩阵的形式作为伪图像,提取关节点空间局部特征;基于循环神经网络[5]将骨架数据建模为坐标向量,学习骨架序列的时间动态特征,文献[6]提出时空图卷积网络(ST-GCN),首次利用图卷积网络对人体骨架数据进行时空图建模并取得了良好的识别效果;然而仅依赖一个固定的骨架图去描述灵活多变的关节动作显然是不充分的.此外,从人体运动学来看,骨架各关节特征对于动作区分的贡献也是不一致的,过多的低贡献特征会干扰最后的分类决策.针对以上问题,提出了一种基于骨架自适应与关节增强图卷积网络的行为识别方法.构建了人体骨架时空拓扑图,利用自适应邻接矩阵学习各关节点间的连接关系;引入软注意力机制,增强高贡献关节点的特征表达并削弱低贡献关节点特征的干扰,提取高判别性的关节特征;构建了端到端的轻量级图卷积网络以学习骨架行为数据的时空共现特征.在MSR Action 3D数据集上进行了相关实验,结果表明本文算法在人体骨架行为识别中取得了较好的结果.1 时空图卷积网络1.1 MSR Action 3D骨架图表示骨架行为数据是由一系列身体关节点在空间的三维坐标组成[7].图卷积网络是基于拓扑图结构的卷积操作,一个包含T帧具有N个关节的人体骨架序列,可以用G=(V,E)来表示,其中:关节点集合V={vti|t=1,2,⋯,T,i=1,2,⋯,N}包括骨架序列中的所有关节,T为骨架图序列的帧数,N为单帧骨架图的关节数量;骨骼边集合E={ES,ET},其中代表单帧骨架序列中相邻关节点连接的空间边为ES={vtivtj|(i,j)∈H},H为人体相互连接的关节点对集合,连续序列帧间同一关节点相连起来的时间边为ET={vtiv(t+1)i}.图1(a)为一个人体跑步序列的时空骨架图结构,圆圈为关节点,实线为骨骼边,两个框里分别代表单帧序列里关节点与其相邻节点连接的空间边和连续帧同一关节点相连的时间边.10.13245/j.hust.220314.F0011—左肩;2—右肩;3—肩部中心;4—脊柱;5—左臂部;6—右臂部;7—臀部中心;8—左肘;9—右肘;10—左手腕;11—右手腕;12—左手;13—右手;14—左膝;15—右膝;16—左脚踝;17—右脚踝;18—左脚;19—右脚;20—头部.图1 MSR Action 3D骨架图表示1.2 时空图卷积建模基于预定义的人体时空骨架图,ST-GCN网络[6]采用分层结构堆叠9层图卷积网络以学习骨架信息复杂高级的时空共现特征.在空间维度,图卷积操作对于骨架图中任一关节点vti的特征提取表示为fout(vti)=∑vtj∈B(vti)Zti-1(vtj)fin(vtj)⋅w(lti(vtj)),(1)式中:f为关节点vti的特征,fout和fin分别为输入入、输出特征;B(vti)={vtjr(vtj,vti)∈R}表示vti的邻居节点集,R控制所取邻居节点的范围,R=1表示仅取与vti直接相连的关节点vtj;Zti(vtj)={vtk|lti(vtk)=lti(vtj)}为归一化项;w为邻居关节点的权重函数,为了有区别地学习每个邻居节点的差异化特征,将邻居节点分为K个集合,标签映射lti(vtj):B(vti)→{0,1,⋯,K-1}给每个节点vtj分配一个唯一的权重向量.采取图1(b)中的空间结构分区策略,以4号脊柱关节点作为人体骨架的重心,邻居集可以分为3个子集:根节点集(关节点本身如2号)、近心点集(比根节点到重心点的距离要近,如3号)、远心点集(比根节点到重心点的距离要远,如9号).图卷积在时间域的操作可以由空间域上的图卷积扩展得到,用参数Γ作为控制邻居集合的时间范围,则时空两个维度下的邻居集合为B(vti)={vaj|r(vtj,vti)≤K,|a-t|≤Γ/2},(2)那么邻居节点对应的标签映射集合为lST(vqj)=lti(vtj)+(a-t+Γ/2)K,式中lti(vtj)为单帧情况下vti的标签映射.在图卷积网络中,对每个关节点执行自身节点信息与邻居节点信息聚合之后再传播给下一关节点,直至遍历骨架序列中的所有关节点.结合图论中可以表示拓扑图结构的图矩阵,图卷积公式可以写为fout=D-1/2(A+I)D-1/2finW.(3)特征图f为一个C×T×N维度的张量,C为通道数,骨架图中各关节的连接关系由N×N邻接矩阵A与单位矩阵I表示,D为各关节点的度矩阵,用D-1/2(A+I)D-1/2表示归一化的骨架图结构,W为图卷积网络中学习到的权重矩阵.根据邻居结点分区策略,A+I可以用∑kAk来表示,那么图卷积公式可以进一步表示为fout=∑kDk-1/2AkDk-1/2finWk.(4)2 骨架自适应与关节增强图卷积网络提出的图卷积网络总体框架如图4所示,堆叠3层骨架自适应与关节增强图卷积网络,利用网络的分层特性不仅可以学习高级复杂的运动特征,还可以提高网络模型的表达能力和性能.其中,骨架自适应层(skeleton adaptation,SA)与关节增强注意力层(joint enhancement,JE)是对骨架图空间全局特征与局部特征的学习,时间卷积层用来提取骨架图序列连续帧的时间动态特征,为了防止模型训练过程中出现的梯度爆炸与梯度消失问题,引入残差结构进一步提升网络的性能.10.13245/j.hust.220314.F002图2骨架自适应图卷积层结构10.13245/j.hust.220314.F003图3关节增强的注意力层10.13245/j.hust.220314.F004图4骨架自适应与关节增强图卷积网络整体框架2.1 骨架自适应图卷积层图卷积公式(3)里,邻接矩阵A是一个N×N的权重矩阵,Aij=1表示关节点i与j的是相连的,Aij=0表示二者没有连接关系,以此来描述输入的骨架图结构.但是仅采用固定的邻接矩阵A描述多变的骨架结构在各种行为识别任务中并不是最优的.为此提出一个可学习的自适应矩阵ξk,根据输入的骨架数据动态地调整各关节点的连接关系以及连接的强度,为了保证人体原有的骨架形态,用二者之和替代之前的A即可.在网络层中嵌入归一化的高斯函数计可以算骨架图中两个关节点的相似度,以此来衡量两个关节点的连接关系[8].具体操作如下f(vi,vj)=exp[ΦT(vi)Ψ(vj)]/∑j=1Nexp[ΦT(vi)Ψ(vj)],(5)式中Φ(vi)=WΦvi和Ψ(vj)=WΨvj均为嵌入式操作,WΦ与WΨ为对应的权重参数.骨架自适应图卷积层的结构如图2所示.虚线方框部分表示参数都是可学习的,r表示残差模块.输入fin为一个Cin×T×N维度的特征数据,Ce为嵌入函数Φ和Ψ的通道数,通过执行双路并行的1×1卷积操作,对二者的输出特征分别进行维度变换之后再做矩阵乘法使用softmax分类得到自适应矩阵为ξk=softmax(finTWΦkTWΦkfin),(6)式中元素ξkij的值被归一化到[0,1]之间,既表示关节点i与j是否连接,也表示二者连接的强度,与预定义的骨架图相比,自适应矩阵可以根据输入的关节点数据建立起新的连接关系,而不局限于人体骨骼的固定连接,更加灵活多变.2.2 基于注意力机制的关节增强层注意力机制是根据人类视觉特性研究的一种信息处理机制[9],可以对重要的信息给予足够的关注并削弱干扰的信息,提高信噪比达到信息增强的作用.例如拍手、挥手、握手这些行为,手臂上的关节特征比骨架其他关节特征更重要,在一些相似行为里,过多的干扰特征也会影响最后的分类效果.本研究中带有软注意力机制的关节增强层可以自适应地聚焦于骨架图中的关节点并且自动地计算各关节点的重要性,其结构如图3所示,图中FC是全连接层.从第t帧骨架图中取出包含各关节空间结构特征的ft,首先经过全连接层对节点特征作变换,聚合所有变换的关节特征再经过ReLu激活函数可得查询特征为qt=ReLu(∑i=1NWqfti),(7)式中Wq为可学习的权重矩阵,骨架图中所有关节点的注意力分数可以写为mt=softmax(Wstanh(Wfft+Wqqt+bfq)+bs),(8)式中:Ws,Wf,Wq均为可学习的权重矩阵;bfq,bs均为偏置;mt=(mt1,mt2,⋯,mtN)表示第t帧骨架图中对应关节点的重要程度,其值被softmax函数归一化到[0,1].因此,注意力层可以输出关节特征增强的骨架图,每个关节点vti的空间增强特征可以表示为f̂ti=(1+mti)fti.(9)3 实验与分析为了验证本文行为识别模型的有效性,在具有代表性的MSR Action 3D公开骨架数据集上以时空图卷积网络(TS-GCN)为基准网络分别进行三组对照实验并与其他现有的方法进行了比较.3.1 数据集MSR Action 3D数据集[10]:MSR Action 3D数据集是基于Kinect深度相机获取的20个骨架关节3D坐标,常用来进行人体行为识别算法有效性的验证.具体关节名称见图1(b)所示,数据集由10个受试者分别演示表3里的20个动作种类,每个动作重复演示2~3次,一共有567个动作序列样本数据,每个动作序列的帧数在10~100之间.此数据集的动作存在着极高的相似性,并且不同动作捕获的帧数差异较大,给本文模型的验证带来了极大的挑战.根据按受试者分类的交叉验证法[11]用以测试模型的性能,其中受试者1,3,5,7,9用来训练,2,4,6,8,10用来测试.3.2 实验细节设置本实验是基于骨架自适应与关节增强的图卷积网络来实施的,如图4所示.基准网络为堆叠的3层时空图卷积(TS-GCN),输入输出通道以及Padding分别为(3,32,1),(32,64,2)和(64,128,2).BN是批归一化操作,GAP是全局平均池化层,Res是残差结构,AGCN是自适应图卷积层,ATT是关节注意力层,TCN是时间卷积层.采用带有动量为0.9的随机梯度下降优化策略,使用交叉熵损失函数作为梯度反向传播误差的计算,训练轮数为120次,初始学习率设置为0.1,分别在50和80次训练轮数衰减10%,权重衰减系数为0.000 1,随机丢弃的参数为0.25,训练和测试批次都为16.3.3 实验结果与分析在MSR Action 3D上进行4组人体行为识别实验,分别用基准网络TS-GCN与2个网络层组合训练模型加以验证本文方法的有效性.表1所示是4组网络的参数量(Param)、计算量(FLOPs)以及识别准确率(ᴧ).用时空图卷积网络TS-GCN作为基准网络训练时,参数量为0.928 7 MiB,计算量为749.8 MiB,识别率为92.05%,当加入SA和JE时,参数量和计算量只有少量增加,识别率分别提高了1.67%和1.23%,当二者融合之后参数量和计算量增加了0.346和211.7 MiB,识别率提高到95.36%.10.13245/j.hust.220314.T001表1本文模型在计算复杂度与识别率的比较模型方法参数量/MiB计算量/MiB识别准确率/%TS-GCN0.928 7749.892.05SA+TS-GCN1.167 4961.493.72JE+TS-GCN1.036 0749.993.38(SA+JE)+TS-GCN1.274 7961.595.36图5和图6分别为4组实验在训练中的损失值(L)和测试时的识别准确率(Λ)随训练轮数(M)的变化曲线.图5是偏移量为0.1的组图,其中基准网络TS-GCN损失值收敛速度最慢,损失值最低为0.031 3;而加了SA和JE的损失值可以实现更快速地收敛,损失值最低为0.013,能够更好地拟合3D骨架数据.图6中4组实验的行为识别准确率基本都在第100个训练轮数时趋于平稳,其中基准网络的识别率震荡较大,与之相比,加了SA和JE的网络则更加稳定,识别准确率也得到了一定提升.10.13245/j.hust.220314.F005图5训练损失值变化曲线10.13245/j.hust.220314.F006图6测试识别率变化曲线从细节上来看,骨架自适应层是根据不同的输入数据对骨架全局图结构的邻接矩阵进行了自适应调整,更加符合不同行为样本间各关节点的关联状态,图7给出了自适应调整后关节点之间灵活的连接关系.10.13245/j.hust.220314.F007图7原始邻接矩阵与骨架自适应邻接矩阵对比在图7(a)中预定义的原始邻阶矩阵显示关节点之间连接关系是固定不变的,而在图7(b)中的骨架自适应邻接矩阵更加灵活,并且随着骨架数据的变化而调整,能够更好地适应不同的行为识别任务.形式上,关节注意力机制通过对骨架动作中高贡献的关节点分配更高权重,相对地减少低贡献节点的权重,从而达到对骨架局部关节特征的强化作用.表2是TS-GCN与JE+TS-GCN的识别准确率对比,其中捶打、画叉、侧面出拳与捡起投掷这些行为在进行中其手部关节运动轨迹和幅度都极其相似,运动特征之间的区分程度小,以至于识别率低下.在增加关节增强层后使得手抓、画叉、侧面出拳、捡起和投掷这些动作的识别率分别提高了0.17,0.16,0.22和0.15,具有相似动作的行为也得到了一定的改善.值得注意的是高抛与正面上手发球这两个动作的识别率反而下降了0.17与0.12,这些动作之间本身具有极高的相似性,相似动作间的高贡献关节也会出现一定的相似,在加了增强关节层之后,二者在分类上就出现了混淆.这个问题说明了对于某些相似动作应该给予更多关节点的关注,而不是集中于某几个节点而丢弃其他低贡献节点的信息,这为以后工作的方向提供了思路.10.13245/j.hust.220314.T002表2基准网络与加关节增强层的识别准确率MSR Action 3D行为种类行为识别准确率TS-GCNJE+TS-GCN高挥手1.001.00胸前挥手1.001.00捶打0.670.71手抓0.831.00冲拳1.001.00高抛1.000.83画叉0.500.66画勾1.001.00画圈1.001.00拍手1.001.00双手挥1.001.00侧面出拳0.670.89弯腰1.001.00向前踢1.001.00侧踢1.001.00慢跑1.001.00挥网球拍1.001.00正面上手发球1.000.88高尔夫挥杆0.891.00捡起和投掷0.710.86为了更加全面地验证本文算法的性能,与当前基于MSR Action 3D数据集行为识别领域最先进方法(SOTA)进行了实验比较.基于自适应骨骼中心点[10]和基于李群结构[12]的行为识别准确率为88.47%和89.48%;而基于差分循环神经网络算法[5]的识别率为92.03%;而提出的行为方法的识别准确率达到了95.36%,相较于文献[13]方法提高了3.16%,与文献[14]中93.41%相比,也提高了1.95%;其中基于特征融合方法[15]的识别准确率达到了97.10%,虽然比本文算法高了1.74%,但是用到了30多个参数,为了得到最优的识别结果,须要耗费大量时间成本去手动调整参数值,增加了模型的训练难度.而如表1中计算复杂度所示,构建的是一个轻量型图网络,可以自动便捷地提取骨架行为的时空运动特征,减少了手动调参的过程并降低了模型的计算复杂度.通过实验分析可知:本文算法对3D人体骨架数据建模具有较高的可行性,与现有的行为识别方法相比也有一定的可竞争性.在MSR Action 3D数据集上的实验结果表明:嵌入了骨架自适应层和关节增强层的图卷积网络训练更加稳定且具有更快的收敛速度和更高的识别准确率.
使用Chrome浏览器效果最佳,继续浏览,你可能不会看到最佳的展示效果,
确定继续浏览么?
复制成功,请在其他浏览器进行阅读
复制地址链接在其他浏览器打开
继续浏览