APP下载

基于时空多残差图卷积的3D骨骼点动作识别

2022-12-06丁英强辛华磊陈恩庆

小型微型计算机系统 2022年12期
关键词:残差骨骼卷积

高 猛,丁英强,辛华磊,陈恩庆

(郑州大学 信息工程学院,郑州 450001)

1 引 言

近年来,随着人机交互、体感游戏、智能监控和机器人应用技术的飞速发展,为了能帮助机器更好的识别人类的行为,人体动作识别已经成为计算机视觉领域一个重要的研究方向.多数的人体动作识别研究是基于RGB图像、光流、深度图像和骨骼特征图等模态下进行的行为识别,在这些模态中,多数模态仅仅关注于人体动作轮廓,很少研究节点之间的联系.从人体行为动态变化来看,骨骼建模[1]对动态复杂环境的适应性更强,更具有表达能力,因此得到越来越多的研究和应用进展.

随着深度学习的发展,在基于深度学习骨骼数据点人体动作识别中,一般有3类方法,基于RNN[2]的方法,基于CNN[3,4]的方法,以及基于GCN[5]的方法.其中在基于RNN的方法中,为了充分利用骨骼特征信息,将骨骼点进行修剪分割后得到的局部骨骼坐标或伪图像信息传入RNNs中,经过深层次网络的感受野模拟人体动作姿态的变化来分析骨骼序列.但这些方法往往过度强调动作时间信息,无法利用到动作空间上的特征信息,引起特征利用不充分的问题.为了更好利用骨骼的时间和空间信息,将动作的时间和空间信息相结合,Liu等人[6]使用三维卷积神经网络提取高维特征间的相关性,提出一种基于3D-CNN的网络模型,模型首先将每个动作骨骼序列转换映射到三维坐标空间,从而消除视图变化的影响.同时为了提高三维CNN模型的鲁棒性,提出了对空间信息和时间信息进行编码的策略.但此类方法忽略了人体骨骼点自然连接关系,利用骨骼信息的RGB图像特征信息和深度图像特征信息,同时对图像数据特征信息数量要求过高,导致该方法的网络模型参数过多,模型训练和应用的复杂度较大.针对该问题,近年来研究者提出对人体骨骼点进行动作建模的方法,充分利用人体骨骼点之间的自然连接关系,通过预先对人体骨骼手工标注方法,将人体骨骼标注为18个骨骼点(Kinetics数据集)或者25个骨骼点(NTU-RGB+D数据集),并将标注的人体骨骼点作为图结构对图建模分析.

图卷积神经网络(GCN)[7]是一种在CNN的基础上提出的利用深度学习方法对图数据进行端到端学习的新型网络模型.它把图结构数据直接作为输入,通过对图上的节点逐层进行特征提取,进而分析处理.近年来,GCN已成功应用于图像分类、文本分类、语音识别等众多机器学习领域.在2D或3D的坐标形式下,人体骨骼动态变化可以直接由人体关节位置的时间序列表示,通过坐标位置的相对变化和关节之间的自然联系分析人类的行为动作.Yan等人[8]提出的在时空图上的卷积神经网络(ST-GCN)把骨骼点之间的距离关系通过非欧式距离表示,利用骨骼关节间的自然连接,有效地捕捉在空间帧和时间帧上的特征信息,分别在空间上和时间对动作进行建模.

然而由于时空图模型(ST-GCN)图卷积模型中的骨骼点空间图子集划分是按照根节点和相邻节点预先手工设定的,只包含了和动作密切相关的骨骼点的局部信息,因此对于相似性动作经常会发生误判.例如,对于识别“阅读”和“鼓掌”两个相似动作,它们都是主要由手部及相邻骨骼关节点参与的动作,但对于“鼓掌”动作来说有时肩部关节点也有变化.如果仅关注手部关节部位之间的变化信息将无法准确判断属于哪个动作,只有通过引入骨骼点全局信息才能实现准确区分.

针对以上问题,为了能更好地准确区分相同局部骨骼点参与的相似动作,更加充分利用骨骼图上的各节点之间相互连接的全局信息,本文提出了一种改进的时空多残差图卷积神经网络.我们将时空图模型中所有骨骼点数据信息视为全局特征信息,通过在原始空图模型中引入残差卷积网络将人体骨骼点全局特征和图卷积网络获取的直接参与动作的骨骼点所包含的动作局部特征相融合,从而实现对骨骼点数据中的信息更充分的挖掘,达到更好的动作识别效果.我们在国际公认的大型骨骼点动作识别数据集RGB-D以及Kinetics上进行了大量实验,验证了本文所提出改进网络模型的有效性.

2 相关工作

2.1 图卷积神经网络

近年来由于图卷积神经网络的广泛适用性,引起了越来越多研究者的关注,且已成功被用于其他领域中,如图像分类、文档分类和半监督学习等.后来的研究者们在图卷积神经网络人体动作识别领域的应用[9-11]中也取得巨大进展和突破.

图卷积网络从人体的空间结构出发,利用深度学习的骨骼建模方法,建立空间卷积滤波器,局部骨骼点相对变化较大的部分特征信息.骨骼序列通常是由每帧中每个关节的二维或三维坐标来表示,在以往的骨骼点动作识别当中仅利用时间上每帧中形成的某一个单一的特征向量,从而忽略了各关节点之间的联系的重要性.在图卷积网络中,研究者们利用手工设定好的特征信息,捕获关节的动作轨迹,构建节点子集矩阵进行骨骼建模.从某一帧上的骨骼点、骨骼边在二维图像或特征图上的卷积运算定义来看,它们都可以被视为二维网络作为输入.假设给定一个卷积核为K*K的卷积操作,通道个数为C,输入为fin,输出为fout.骨骼点信息在图卷积神经网络(GCN)中输入传播公式为:

(1)

公式(1)中是p采样函数,即节点的相邻子集集合,W为权值矩阵.因此从公式可看出输入图上的所有权重是共享的,进而模型输出经过ReLU激活函数、softmax分类器实现图卷积过程.

2.2 基于图的骨骼点动作识别

在早期,基于骨骼点的动作识别研究大多数依赖于手工制作的特征,利用局部关节之间的相对运动进行识别分析.近年来,深度学习的发展使得基于深度学习的骨架建模方法剧增.基于深度学习的研究方法是对时间和空间上[12]的同步信息进行端到端分析[13],早期的实验研究表明,基于骨骼点的人体动作识别在实际的实验测试中准确率和有效性都展现出了最高性能.

随着图卷积网络(GCN)[7]成功应用于其他领域,Yan等人[8]首次将图卷积神经网络(GCN)应用到了利用骨骼建模的人体动作识别当中,提出了时空图卷积神经网络(ST-GCN),该网络通过构建一个以关节为点、以骨骼为边的图,并将时间帧上的关节运动作为一个附加边信息进行骨骼数据建模.由于该过程的骨骼信息是预先手工定义的,因此对于语义信息的灵活性表达较差.Shi等人[14]提出了一种双流的自适应图卷积神经网络(2S-AGCN)[15],引入非局部的方法,把骨骼的长度和方向作为输入骨骼图数据的另一个分支,显著提高了模型的精度.然而,这种方法大量增加了模型的参数,计算成本相对较高.为了降低运算复杂度,提高模型的识别准确率.本文提出的时空残差图卷积网络模型,以ST-GCN为基础网络进行更深层次的研究探索,通过增加丰富的特征信息,进而提高识别准确率.

3 时空图卷积网络

3.1 时空图结构

随着深度学习和图卷积神经网络的应用和发展,Yan等人[8]首次将图卷积神经网络运用到骨骼点的动作识别当中并提出了时空图卷积网络(ST-GCN),利用人体动作的视图不变性特点,对图结构上局部动作关节点空间变化和时间帧上所包含的动态特征信息进行分析建模.

时空图卷积网络的时空图建模过程可分两个部分,即空间建模和时间建模.在空间建模部分,模型根据人体结构的连通性,通过自然定义的设置连接方法,将时空图中的每一帧的相邻点连接成边,形成空间边集合Es={vtivtj|(i,j)∈H},同时将每一帧上的骨骼坐标点集合V={vti|t=1,…,T,i=1,…,N}作为节点集合,H为人体自然连接的关节点集合.在时间建模部分,模型是在时间域上将相邻两帧的同一节点进行连接成边形成帧间边集合Ef={vtivt(i+1)}.分别整合空间和时间上的信息,对骨骼关键点特征信息进行时空建模,模型如图1所示.在时空图模型结构中,将人体骨骼序列通过每一帧的二维或三维坐标表示,构建一个无向骨架空间图G(V,E),其中集合E由空间边集合Es和帧间边集合Ef两部分组成,并将所有的骨骼序列的坐标向量串联在一起得到的图节点联合坐标向量作为网络模型输入.

图1 骨骼时空图模型结构图

从空间图卷积上来看,对上述图卷积网络中的采样函数和权重函数进行细化处理.将采样函数p(vti,vtj)定义为节点vti相近的集合B(vti)={vtj|d(vtj,vti)≤D},d(vtj,vti)为节点vtj到vti的最小距离.且权重函数W(vti,vtj)通过时空建模中图子集的划分规则将一个输入的联合节点的相邻节点集划分为固定数量的K个子集,并将节点映射到其子集矩阵中重新定义.由此空间图卷积公式可表示为:

(2)

其中公式(2)中Zti(vtj)=|{vtk|lti(vtk)=lti(vti)}|为相应子集的基数.

3.2 图子集的划分

基于图结构数据建模的有效性很大程度依赖于图的分割方式,通过优化图节点的分区策略构造合理的卷积核滤波器,并应用于模型中用于提高识别准确率.鉴于空间和时间图卷积的高层次表达方式,ST-GCN探索了以下几种在单个人体框架中的划分策略:a)输入骨骼的示例帧,黑色点为人体关节节点,经过D=1的空间滤波器后的感受野如图2(a)所示;b)统一标签:整个邻近节点集本身.该策略利用每个相邻节点的特征向量,对其具有的相同权重进行向量内积处理,但该策略可能会丢失局部关节点的差异化信息;c)距离划分:根据节点和根节点之间的距离进行划分,划分为根节点集和距离为1的其他相邻节点集,利用两个子集不同的权重向量之间的属性关系解决了图2(b)图中丢失的差异化信息;d)空间分割:利用空间特性分割,找到骨骼结构的重心位置,根据每个关节点到重心位置的距离长短进行分区.这4种图的分区策略也可以自然扩展到时空域中.图的分区策略如图2所示.

图2 图的分区方式

在空间分割策略中,由于身体骨骼是基于空间定位的,Yan等人[8]利用这种特定的空间定位信息,将相邻节点集分成3个子集:a)根节点本身;b)向心群:相对于根节点更靠近骨骼重心的相邻结点;c)离心群.该划分方式将所有关节点的平均坐标作为人体骨骼图的重心,公式可以表示为:

(3)

其中ri表示为所有帧上点从重心到关节i的平均距离.

3种分割方式如图2所示,在本文的实验测试中对上述3种分割方式得到的标签图分别进行了验证.预估更合理完善的分割方式在实验模型中将会有更好的动作建模能力和识别能力.

4 残差图卷积神经网络

4.1 残差卷积网络

近年来的研究表明残差网络结构对于多数卷积神经网络具有一定的性能优化作用.例如,为了进一步提高图卷积网络的网络性能,He等人[16]提出了一种精细化的残差网络模块,在神经网络模型中加入额外的连接层并通过这些连接层为信息和梯度的传输提供额外的连接通道,从而有效地解决了信息在传输的过程中丢失的问题.

受此启发,本文提出在原有时空图的空间图卷积模块中引入残差卷积网络模块,通过在空间域中经过空间卷积得到的局部特征信息,与残差卷积网络得到的全局信息相融合的方式,使网络模型提取的特征信息更加完善.改善了随着网络模型的不断加深引起的特征退化、信息丢失和梯度爆炸等问题.

4.2 时空多残差图卷积网络

在时空图卷积神经网络模型中,对骨骼图提取特征信息的过程中,更多关注局部信息,而忽略了骨骼点全局信息,造成特征信息利用不充分的问题,导致在判断相似动作时容易产生误判,本文提出一种基于时空多残差图卷积的网络模型,在时空图卷积神经网络中的图卷积模块中同步增加残差卷积网络模块,通过模型输入的骨骼序列与邻接矩阵的子集进行信息融合,获取到动作骨骼点的局部特征信息.通过增加残差图卷积模型,在利用局部特征信息的基础上加入全局特征信息进行融合,进而分类输出,从而提高特征信息的利用率,得到更加完备的特征信息,达到最大化利用图结构的特征信息,同时增加了该网络模型的泛化能力.该模型改变原有通道数为64、64、64、128、128、128、128、128、256,降低模型计算成本.最终实验表明本文提出的时空残差图卷积神经网络可以提取到更加完备的特征信息,优化网络模型,使得识别准确率也有了进一步提升.模型结构如图3所示.

图3 基于时空多残差图卷积网络骨骼点的动作识别模型结构图

模型结构中每一层的ST-RESGCN模块由注意力机制模块、图卷积模块、残差卷积模块和时间卷积模块组成.模型结构如图4所示,在每层时空图中空间图卷积网络模块中,加入残差卷积网络模块,将在图卷积模块中与特征子集融合处理后捕捉到局部特征,与动作骨架图结构的全局特征信息融合后传入时间卷积模块,以此提取空间域和时间域上的特征信息,使特征信息利用更加全面、模型的鲁棒性更加稳定.

其中每一层的残差图卷积神经网络ST-RESGCN的模型结构如图4所示.在每一层的图卷积神经网络中同步加入残差卷积模块,其中每层图卷积网络输出结果为:

图4 ST-RESGCN模块结构图

fi(x)=σ(G(x,A)+R(x))

(4)

公式(4)中G(x,A)为骨骼序列经过图卷积神经网络(GCN)与手工设定好的特征节点A融合后的特征信息,R(x)为骨骼序列经过每层残差卷积模块的序列信息,fi(x)是每层TCN的输入序列信息.进而通过最后一层模型网络后传递给后续全连接层识别分类.

本文提出的时空多残差图卷积网络模型,在原模型利用上下文语义信息的基础上,在空间图卷积网络模块中同步引入残差卷积网络作为空间层的另一个分支,同时将残差卷积网络获取到的人体骨骼点的全局特征信息与图卷积网络获得的局部特征信息融合作为时间域卷积模块的输入,使网络模型获得语义信息更加全面.例如,在区分“挥动羽毛球拍”动作和“挥手”动作时,如图4所示的模块结构不但考虑手部和上臂关节点的动作变化,还将考虑腿部和腰部等全身骨骼关节点的细微动态变化,这样模型获得的动作信息更加细致和全面,从而增强了相似动作的区分性.

为了进一步优化网络模型,解决由于超参数过多导致的模型运算复杂度较大的问题.在经过最后一层的ST-RESGCN模块后,全连接层之前,加入自适应平均池化层,在已知输出维度大小的前提下,自动选择合适的超参数进行平均池化操作,减少网络模型的参数使用量.增强网络模型的泛化能力,提高模型结构的鲁棒性,得到分类辨识度较高的特征,一定程度上达到降低网络模型的运算复杂度、优化网络模型的效果,提高了识别精度.

5 实验结果及分析

5.1 实验平台与数据集

本文提出模型首先在ST-GCN网络的基础上进行训练,通过预训练得到的模型作为初始化权重模型,采用SGD梯度算法进行网络的训练.本文实验中使用4块2080TI显卡进行实验训练,初始输入通道为3,训练网络的num_epoch设置为80,训练的batch size设置为64,测试网络中的batch size设置为64.

同时本文将初始基础学习率设为0.1,在step为10和50时将学习率衰减为原来的1/10.同时为了防止过拟合问题,本文将dropout设置为0.5,alpha设置为0.2.此外,本文采用自适应平均池化层进行池化,使得该网络模型更加稳定、运算成本进一步降低.

5.1.1 NTU-RGB+D数据集

NTU-RGB+D[17]动作识别数据集是由56880个动作样本组成,是目前最大的具有关节标注的用于人体动作识别的数据集,其中每个样本中包含RGB视频,深度图序列,3D骨架数据和红外数据.此数据集是由3个Microsoft Kinect v.2相机同时获取,3D骨骼数据包括每帧25个主要身体关节的三维位置,每个样本的帧数为300帧,对于小于300帧的样本,重复序列使其达到300帧.该数据集含有两种分割方式,X-Sub(跨表演人)和X-View(跨视角).为了评估模型,其中训练集和测试集分别有37920和18960个样本.

5.1.2 Kinetics数据集

Kinetics[18]数据集来源于YouTube,是一个用于动作识别的大型数据集,共有600个类别,覆盖了从日常活动、运动场景到复杂的交互动作.每个类别至少有600个视频,共具有30万个视频片段.由于只提供了RGB视频,我们需要通过OpenPose工具箱获取特定像素上的骨架数据.该数据集包含的动作覆盖范围广,每个骨骼包括18个身体节点,每个身体节点由3D向量(x,y,c)表示,每个样本固定有300个帧.训练集和测试集分别包含240000和20000样本骨架序列.

5.2 实验结果分析

本文提出的时空多残差图卷积神经网络,是以时空图卷积神经网络(ST-GCN)为基准进一步研究探索,同时为了使实验结果更加准确,在不修改网络层数的情况下进行多次实验.分别在NTU-RGB-D、Kinetics两个大型人体行为识别数据集上进行验证,并以Top-1和Top-5的准确率作为试验标准与以往的多个先进网络模型进行实验对比,实验表明增加残差网络后的时空图卷积神经网络在模型结构复杂度增加的情况下,该模型运算复杂度并未增加,且模型的识别准确率得到进一步的提升.实验结果分别如表1、表2、表3所示.

表1 在C-Sub上的实验结果

表2 在C-View上的实验结果

表3 在Kinetics上的实验结果

从对比实验中实验结果可得出,本文提出的时空多残差图卷积神经网络(ST-RESGCN)相比于现有的ST-GCN等网络模型在多个大型数据集上的识别效果有了进一步的改善和提升.并与当前网络模型相比,加入残差卷积网络后的网络模型在C-Sub上Top-1的提升率约为1.21%,在C-View上Top-1的提升率约为0.90%.在Kinects上Top-1的提升率约为1.08%,在Top-5上的提升率约为1.66%.

6 结 语

本文提出一种基于时空残差图卷积的3D骨骼点人体动作识别,在原来的时空图卷积神经网络(ST-GCN)的基础上,引入多残差图卷积神经网络,充分利用骨骼数据中的三维骨骼信息和相同关节在不同帧之间的特征信息,更加准确地区分相似动作,提高模型的鲁棒性.并采用自适应池化的方式,减少了网络模型超参数的使用,使特征信息得到最大化的利用,增强了网络模型的泛化能力,在提高识别准确率的同时改善了过拟合的问题.最终实验结果表明本文提出的ST-RESGCN网络模型优于目前先进的时空图卷积神经网络(ST-GCN)模型,为基于3D骨骼点的动作识别研究提供了新的思路和方法.

猜你喜欢

残差骨骼卷积
基于双向GRU与残差拟合的车辆跟驰建模
做家务的女性骨骼更强壮
基于3D-Winograd的快速卷积算法设计及FPGA实现
三减三健全民行动——健康骨骼
基于残差学习的自适应无人机目标跟踪算法
卷积神经网络的分析与设计
基于递归残差网络的图像超分辨率重建
从滤波器理解卷积
基于傅里叶域卷积表示的目标跟踪算法
综合电离层残差和超宽巷探测和修复北斗周跳