融合内外依赖的人体骨架动作识别模型

2023-11-20 10:58毛国君王一锦
计算机工程与应用 2023年21期
关键词:骨架卷积人体

毛国君,王一锦

1.福建工程学院 计算机科学与数学学院,福州 350118

2.福建工程学院 福建省大数据挖掘与应用重点实验室,福州 350118

作为计算机视觉的一个活跃分支,人体动作识别对于视频理解和分析起着重要作用,目前已经被广泛应用于应急检测[1]、人机交互[2]等领域。人体动作识别可以通过多种方法来完成,如RGB 图像序列[3]、深度图像序列[4]、人体动态骨架[5-6]等。相比其他的方法,骨架数据对复杂背景和场景变化具有更好的鲁棒性。因此,基于动态骨架的人体动作识别(简称骨架动作识别)成为近年重点关注的研究领域[7-8]。

骨架动作识别的核心是骨架节点的特征提取和分析。按照特征提取方式可以分为基于手工特征提取方法和基于深度学习的特征分析方法。基于手工特征提取方法主要通过物理直觉来设计节点特征,然后进行骨架图的特征分析。已有的工作包括:基于相对位置计算的关节特征提取[9]、基于平移和旋转等评估的特征分析[10]、基于特征编码[11]等。毋容置疑,手工特征提取方法主观性强、难度大,其效果很难令人满意。

随着深度学习的不断升温,利用深度学习来实现骨架数据的自动特征提取和分析得到充分研究,其中循环神经网络(recurrent neural networks,RNN)和卷积神经网络(convolutional neural networks,CNN)是该应用领域使用最多的技术。基于RNN的方法一般将骨架数据编码为一组特征向量(每一个特征向量对应一个关节),然后将这些特征向量输入RNN 网络完成学习[12-14]。基于CNN 的方法通常将骨架数据编码成伪图像输入到CNN网络中来提取特征[15-17]。然而,这两种技术都很少探索人体关节之间的空间依赖关系,导致错过了大量的相关信息。

事实上,人体骨架天然构成了一个以关节为节点、关节间的连通性为边的图结构,所以借助于图学习手段来实现骨架动作识别具有很好的研究价值。近年来,图卷积网络[18-19](graph convolutional networks,GCN)作为一种新型的图学习技术能够直接输入和处理图结构数据,已经在许多领域获得了不错的应用效果,如图像分类[20]、半监督学习[21]等。因此,利用GCN 来分析骨架数据的空间属性具有天然的结构优势。同时,在GCN 处理图的框架下,可以将不同时刻的骨架数据看作是图结构的动态数据变化,进而通过时空图建模来实现骨架数据的动态学习。

2018 年,Yan 等人[22]提出了一种时空图卷积网络(spatial temporal graph convolutional networks,STGCN)。它可以自动提取嵌入到关节间的空间特征和动态的时间特征,是目前比较典型的利用时空图学习来解决骨架动作识别的工作之一。然而,ST-GCN也存在很多问题,主要包括:(1)ST-GCN的图是根据人体的物理骨架预先定义的,缺乏灵活性,例如双手在拍手、拥抱等动作中有着很强的依赖关系,然而在固定的骨架图中,这种联系却不存在。(2)ST-GCN只利用了骨架数据的一阶信息(关节的坐标),而忽视了二阶信息(骨骼的长度和方向),而二阶信息对于动作识别具有更强的辨别能力。(3)ST-GCN的结构由时间卷积层和空间卷积层交错堆叠,这样分解的三维结构难以处理复杂的跨时空信息。(4)ST-GCN 的鲁棒性和可扩展性差。针对这些问题,研究者对此进行了深入研究。Li等人[23]引入了一个编码器-解码器推理模块,该模块可以从动作中捕获潜在的空间依赖关系并结合人体结构图组合了一个更加广义的骨架图结构。Shi等人[24]提出了一种新的双流自适应图卷积网络,该网络通过数据驱动的方式自动学习图的拓扑结构,增加了模型的灵活性,另外,采用双流架构融合了骨架数据的一阶信息和二阶信息,显著提高了识别精度。针对现有的时空图仅局限于分解的三维卷积,Liu等人[25]提出了一种统一的时空算子G3D,该算子允许信息直接跨时空流动,从而捕获复杂的时空联合依赖关系。受姿态估计算法的影响,STGCN 的鲁棒性不强,针对这一问题,Duan等人[26]使用3D热图体积来表示人体骨架,并通过3DCNN提取时空特征,该方法对姿态估计噪声的鲁棒性更好,易于与其他方法(如光流、RGB)集成,能够处理多人场景而不增加额外计算成本。该方法第一次使用3DCNN来处理动态骨架数据并达到了先进的水平。

针对ST-GCN的图结构固定的缺陷,本文提出一种融合内外依赖的时空图卷积网络(spatial temporal graph convolutional networks integrated internal and external dependencies,IED-STGCN)。其核心思想主要是通过内外两个互补的邻接矩阵来动态地挖掘节点间的隐藏关系。值得说明的是,IED-STGCN 是对ST-GCN 在某一方面进行的改进,与AS-GCN、2s-AGCN、MS-G3D、PoseConv3D这些优秀而全面的模型相比还存在着一定的差距。但是,现有的模型愈发趋于复杂,实现难度也越来越大,因此设计更加简单有效的算法可能是未来人体动作识别任务的一大趋势。本文从骨架图出发,仅通过设计邻接矩阵来解决原有图的局限性,思路简单,易于实现。另外,在现实世界中,图的结构并非总是先验的,动态邻接矩阵相比静态邻接矩阵具有更好的表征能力,因此本文所提的外在依赖概念可以集成到一般的图卷积,具有较好的可扩展性。本文的主要贡献如下:

(1)将人体关节间的空间依赖关系划分为内在依赖和外在依赖,并分别用两个互补的邻接矩阵来表示。其中,内在依赖代表了人体物理结构中关节间的自然连接关系,而外在依赖代表了关节间的非物理连接关系,旨在获取全局信息。

(2)根据两个不同的邻接矩阵分别构造内在依赖图卷积(internal dependencies graph convolution,IGC)和外在依赖图卷积(external dependencies graph convolution,EGC),并通过分配不同的边权重和特征权重来进行自主学习。其中,外在依赖对应的邻接矩阵通过边权重矩阵成为一个可学习的邻接矩阵,它能动态地预测生成关节间的非物理连接以及连接的强度,而这种学习到的非局部连接可能对识别任务起着关键作用。

(3)融合IGC和EGC构成内外依赖图卷积(internalexternal dependencies graph convolution,IEGC)作为IED-STGCN的空间卷积模块。由于图卷积在人体固有结构的基础上考量了外在依赖的影响,因而提高了模型对全局信息的感知能力,使提取到的特征信息更加丰富。

1 时空图建模

人体骨架结构用图来表示,其中图的节点表示人体骨架中的关节,图中的边是关节间的连通性的表达。图的边被分成两类:一类是关节间存在的一种自然物理连接关系,称之为内在依赖;另一类是人为设置的节点间的连接关系,称之为外在依赖。本文的骨架时空图建模是同时考虑内、外依赖关系来构造的。

图1给出了一个行走动作有关的骨架图示例,其中图的节点是蓝色实心圆点,而蓝色实线的边代表内在依赖,蓝色虚线的边代表重点关注的外在依赖。

图1 行走动作的内外在依赖示意图Fig.1 Example graph of internal and external dependence in walking action

如图1 所示,在进行人体动作识别过程中,除了考虑人体关节的局部自然连接外(图1中的实线),也重点关注了两对手脚的互动情况(图1 中的虚线)。这样扩充后的结构体现了人体活动时手脚的联动以及对动作类型识别的影响,符合人体动作行为学及日常经验对应的活动规律。假设节点的特征用关节的3D 坐标来表示,那么手脚联动规律就反映在它们相对位置的变化上。因此,融合内、外依赖关系可以有效弥补的骨架图的天然缺陷、而且也符合骨架动作识别的行为逻辑。

定义2(骨架时空图)给定一个时间序列为T={1 ,2,…,M}和骨架图结构G={V,Ea,Eb} ,对应的骨架时空图表示为STG={Gt|t∈[1 ,2,…,M]},其中Gt表示时刻t上对应的骨架图,Ea和Eb分别是时刻t上内在和外在依赖对应的边集。

骨架时空图包含了空间和时间信息。空间信息包含在骨架图的结构中,时间信息则体现在不同时刻的图时序序列上如图2 所示,给定一段动作视频,假设每帧采集一组骨架图数据,连续M帧的骨架图数据就可以看作是M个连续时刻的时间序列上的骨架时空图。这样,接下来的问题就是要找到合适的模型和方法来处理骨架时空图,完成人体骨架的动作识别。因此,本文将采用内外依赖融合的空间图卷积方法来处理骨架时空图的空间位置信息,同时利用时间卷积方法来提取和分析随时间演化的关节特征数据的变化。

2 模型设计与分析

本文模型主要是由时空卷积层为基本计算单元堆叠而成。每个时空卷积层又由空间卷积模块和时间卷积模块构成。本章将采用自底向上的方法,首先设计空间卷积模块和时间卷积模块,然后在此基础上设计时空卷积层,最后对学习网络的总体结构进行阐释。

2.1 空间卷积模块设计

本文空间卷积模块设计为融合了内外依赖关系的IEGC,它是由IGC 和EGC 融合而成。内在依赖图卷积用于提取内在依赖下的节点特征,外在依赖图卷积通过外在依赖分析节点特征。

2.1.1 内在依赖图卷积

IGC 最简单和直接的方式是利用单标签图卷积技术对其建模[21]。单标签图卷积简单直接,但是所有邻域节点需要共享权重向量来完成卷积计算过程。这就相当于权重向量与平均特征向量做简单的内积操作,很容易引起图的局部差分性质的丢失,导致邻域节点的标签同质化。因此,对内在依赖的建模中采用了多标签图卷积的形式。

定义3(多标签图卷积)给定骨架图G={V,Ea,Eb} ,∀vi∈V,设它的内在依赖对应的邻域为B(vi)={vj|vj,vi∈Ea} 。假设存在一个映射函数li:B(vi)→{0,1,…,K-1} ,使得该邻域内的每个节点对应且只对应一个数字标签。这种邻域节点设置多数字标签的方法被称为多标签技术,基于多标签技术的图卷积通过公式(1)来完成:

当然,多标签的设置方法与应用的需要直接相关。就本文关注的人体动作识别而言,依据关节到人体重心的距离将其邻域划分为三个子集:根节点、向心节点集、离心节点集,对应的数字标签分别设为0、1、2。

定义4(根节点、向心节点集、离心节点集)给定骨架图G={ }V,Ea,Eb。∀vi∈V,其邻域可以划分为三个子集:(1)该关节本身,被称为根节点;(2)向心节点集,比根节点更靠近人体重心的所有节点;(3)离心节点集,比根节点更远离人体重心的节点。

定义4对应的数学刻画如公式(2)所示:

其中,li(vj)是邻居节点vj的数字标签;c是人体重心的位置;d是两个关节位置的距离函数。

图3 给出了基于多标签图卷积概念的人体骨架结构示意图,其中绿色节点代表根节点本身,对应的数字标签为0;蓝色节点代表向心节点,对应的数字标签为1;黄色节点代表离心节点,对应的数字标签为2;而黑色十字代表了人体重心。

图3 根节点、向心节点集和离心节点集Fig.3 Root node,centripetal node set and centrifugal node set

定义3 和定义4 的多数字标签卷积方法,通过区分人体关节运动的向心或离心运动趋势,对一个关节的邻居节点实现了差异化卷积计算,以降低图卷积存在的所谓“过平滑”风险。过平滑是GCN模型普遍存在的瓶颈问题之一[27]。图卷积和传统神经网络计算不同,它不仅需要考虑一个节点本身的特征,而且也聚合邻居节点的特征信息。这样,随着迭代次数的增多,极易使相邻节点趋同,出现所谓的过平滑现象。过平滑现象的直接危害就是使节点的局部区分度降低,从而相邻的节点的特征难以辨别。从这个意义上说,定义4可以有效地提升局部节点的区分度,使人体运动的识别更精准。

定义5(内在依赖图卷积)使用定义4 的多数字标签技术,一个骨架图的内在依赖下的原始邻接矩阵A可以分解成3个子邻接矩阵。即:

其中,Ar、Ap和Aq分别被称作根邻接矩阵、向心邻接矩阵和离心邻接矩阵,Q={ }r,p,f。对应的内在依赖图卷积可以用公式(4)完成计算:

2.1.2 外在依赖图卷积

对于人体动作而言,任何两个关节间都有可能存在联系,而且都可能对动作的识别存在不同程度的影响,这正是外在依赖图卷积的主要动机。

定义6(外在依赖图卷积)根据定义1,外在依赖关系用邻接矩阵B表示,那么基于外在依赖的图卷积表达式如公式(5)所示:

其中,Db是邻接矩阵B对应的度矩阵;Mb和Wb分别是外在依赖图卷积的边权重矩阵和特征权重矩阵;Fin和Fb分别代表外在依赖下的图卷积的输入和输出特征。

2.1.3 内外依赖图卷积

内在依赖代表了人体的局部物理结构,而外在依赖表达了人体识别中的关节之间的非物理隐含关系。因此融合这两种关系将会使得图卷积提取的信息更加完整。

定义7(内外依赖图卷积)给定一个骨架图的内在依赖和外在依赖的邻接矩阵A和B,那么内外依赖图卷积的数学表示如公式(6)所示:

其中,Fout是内外融合图卷积的输出特征,其他符号同公式(4)和(5)。

如图4所示,输入特征通过两个不同的分支来分别处理人体骨架的内在依赖和外在依赖,然后进行内外依赖融合计算获得特征输出。对于内在依赖分支,通过区分人体运动的向心趋势和离心趋势,减缓了图学习中的过平滑风险。对于外在依赖分支,通过边权重矩阵Mb学习预测出节点之间的非物理连接关系以及强度,提高了模型对非局部信息的感知能力。为了稳定训练,的初始参数设置为1,而Mb的初始参数设置为0。

图4 IEGC的计算过程简化图Fig.4 Simplified diagram of calculation process of IEGC

2.2 时间卷积模块

如前面的图2所示,把骨架时空图中的相邻时刻的骨架图连接起来,那么同一个节点的特征在时间轴方向上就构成了一个时间序列,该时间序列数据就反映了关节随时间的变化情况。因此,通过设计有效的时间卷积(temporal convolution,TC)就可以完成时空图的分析。

定义8(时间卷积)假设一个关节在时间轴上对应的时间序列数据为xin∈ℝM(不失一般性,在此假设节点的特征维度为1)。设时间卷积核大小为Γ,令该节点的t时刻的时间邻域为,则t时刻的时间卷积输出值为:

其中,w代表权重函数,xout是时间卷积的输出特征。

注:定义8 只给出单个节点的单维特征的计算公式。对于多个节点而言,最简单的方法就是对每个关节都实施公式(7);同时,当骨架数据为多维时,需要将公式(7)改造成多维计算,即对每个维度单独计算后形成多维特征向量。

2.3 时空卷积层设计

前面完成了骨架时空图上的空间卷积和时间卷积模块的设计。进一步,融合骨架时空图中的空间特征和时间特征,利用已经设计的空间、时间卷积模块就可以组合成时空卷积层,形成骨架时空图挖掘的基本计算单元。本文的时空卷积层由IEGC、TC以及必要的连接操作构成,如图5。

图5 时空卷积层Fig.5 Layer of spatial temporal convolution

图5给出了一个时空卷积层的基本结构,对应的计算流程是:

(1)将初始或者上一层的骨架时空图数据输入到IEGC模块,完成内外依赖融合的空间图卷积。

其中,ε是一个常数,设置的目的是为了保持数据的稳定性,γ和β分别代表缩放参数和平移参数,这些参数与网络参数一起参与训练,从而增加了网络的表征能力。批量标准化是一种常用的数据标准化技术,它可以用来加速网络的收敛。

(3)标准化后的数据通过Relu()激活函数送入时间模块TC,进行时间维度上的特征卷积。

(4)对于TC 的输出再次进行批量标准化,并实施Dropout操作以防止模型过拟合。

(5)引入残差机制,使用本时空卷积层的原始输入和TC 标准化的特征输出进行残差计算,并再次通过Relu()激活函数生成本层的输出。

2.4 IED-STGCN网络结构设计

图6 给出了本文的骨架时空图挖掘模型IEDSTGCN 的结构。如图6 所示,IED-STGCN 网络由三部分组成:数据预处理层、主干网络、预测输出层。

图6 IED-STGCN的整体网络架构Fig.6 Overall network architecture of IED-STGCN

在数据预处理层中,输入数据是骨架时空图(参考定义2)。值得注意的是,由于IED-STGCN 在不同的节点上需要共享权重向量,因此在进入主干网络前需要对数据进行一次批量标准化(见公式(8)),以使每个节点的输入数据的比例保持协调一致。

主干网络由若干层的时空卷积层(参考图5)堆积而成。时空卷积层的主要参数包括:时间卷积核的大小Γ、时间卷积的步长stride、输出通道数Cout(时空卷积层的输出的维度)以及输出裁剪比例dropout。

预测输出层由全局平均池化层和分类器组成。全局平均池化层将不同样本的特征图池化到相同大小,然后通过分类器(Softmax)完成类别的预测。

3 实验

将在两个不同性质的大型动作识别数据集上进行实验:Kinetics[28]和NTU-RGB+D[13]。Kinetics 是目前最大的无约束动作识别数据集之一,而NTU-RGB+D则是目前最大的室内拍摄的有约束数据集之一。

首先,在Kinetics 数据集上做了一个详细的消融实验以检验IED-STGCN 模型各个组件的有效性。然后,分别在Kinetics 数据集和NTU-RGB+D 数据集上,选择目前比较典型的基准模型进行对比实验,用以评估IEDSTGCN的性能。

3.1 数据集

(1)Kinetics

Kinetics是研究中广泛使用面向人体动作识别应用的大规模标准数据集。它包含300 000 多个视频剪辑,标注了400 多种的人类动作类型,涵盖了日常活动、体育竞赛等多种人体活动场景。每个视频大约持续10 s。

Kinetics只有原始视频而没有提供骨架数据。在本次工作中,利用OpenPose[29]开源工具箱从原始视频中生成骨架序列。其中,每个骨架图关注人体的18 个关节点,节点特征包括关节点在相机坐标系上的二维坐标(X,Y)和置信度C。考虑最多2个人的情况,如果画面出现2 人以上,只选择关节点平均置信度最高的2 人。如果画面不足2 人,就用0 填充对应实体。每个剪辑的帧数固定为300帧,如果不足300帧,则通过视频重放随机补充够300 帧。这样,基于Kinetics 公共数据集就可以生成对应的骨架序列数据。生成了大约240 000个训练数据和20 000个测试数据,供本文实验使用。

(2)NTU-RGB+D

NTU-RGB+D 是人体动作识别任务中迄今为止最大的3D关节标注数据集。该数据集包含56 000多个动作剪辑,60 个动作类别。所有剪辑都是由40 名志愿者在一个室内实验环境中由3 个不同视角的视像头拍摄而成。骨架序列的注释借助于Kinect深度传感器生成,每个剪辑最多有两个人,每个人的人体骨架有25 个关节点,3D 关节点的特征是节点在摄像机坐标系统中的位置(X,Y,Z)。

按照数据集划分标准的不同,NTH-RGB+D提供了两个不同的基准:cross-subjec(t简称X-Sub)和cross-view(简称X-View)。X-Sub 数据集通过不同受试者来划分数据,其中训练集来自一部分参与者,一共包含40 320个训练样本,测试集来自剩余的参与者,一共包含16 560个测试样本。X-View数据集按照不同摄像机来进行划分,其中,训练集来自2号和3号相机,一共包含37 920个样本;测试集来自1号相机,一共包含18 960个样本。

3.2 评估指标

本文使用Top-1和Top-5这两个标准的分类性能评估方法作为评价指标。就是说,对于每个测试样本,输出结果是所有动作的分类概率,并按照分类概率从高到低的顺序进行排序输出。对于Top-1,如果样本的实际类别是预测概率排名第一的类别,则分类正确。对于Top-5,如果样本的实际类别在预测概率排名前五名的类别之中,则分类正确。具体定义见公式(9):

其中,N是样本总数;δ是一个判断函数,若条件为真,则δ=1,否则,δ=0;classreali代表第i个样本的真实类别;分别代表第i个样本预测概率排名第一的类别和排名前五的类别。

3.3 实验设置

(1)网络参数设置

IED-STGCN 的主干网的总层数设置为9 层。每层时空卷积层的时间卷积核大小Γ均设置为9,dropout=0.5。主干网络的前三层的输出通道数设置为64,中间三层的Cout为128,最后三层的Cout为256。这样,随着输出通道数的成倍增加,获取到的动作特征也越来越丰富,进而学习性能会更好。时间卷积的步长stride在第4层和第7层设置为2,其余层均为1。这样,经过第4层和第7 层后,时间维度的总帧数就会减少一半,因而可以减少帧间的冗余信息,提高计算效率。预测输出层中的分类器采用Softmax分类器。

(2)软硬件环境设置

实验用的计算机的CPU 型号为Inter®Core™i7-10700 CPU@2.90 GHz,配置为RTX-3090 显卡(显存24 GB)提升计算。实验基于的软件环境为python3.8+pytorch1.8+cuda11.1。

(3)训练过程设置

对于Kinetics 数据集,实验的总迭代次数epoch 为50 次,批量大小为16。优化策略选用随机梯度下降法(SGD),初始学习率为0.1,依次在第20、30、40 个epoch衰减0.1倍。

对于NTU-RGB+D数据集,实验的总迭代次数epoch为50次,批量大小为16。使用SGD来训练模型,初始学习率为0.1,依次在第30、40个epoch衰减0.1倍。

3.4 消融实验

本文模型主要由内在依赖图卷积(简称I)、外在依赖图卷积(简称E)和时间卷积(简称T)等3个技术来支撑,融合了这些技术形成了本文网络模型。为了说明这些技术融合的有效性,在Kenitic 数据集上进行了技术消融实验,即以T 为基准模型,通过T+I、T+E 和T+I+E来进行对比实验。

(1)基准模型Temporal Conv[16]:Temporal Conv 是目前比较成功的基于时间序列的特征卷积方法之一。具体地说,将每帧中的所有关节的位置信息在时间轴方向连接起来构成一组输入特征向量,然后输入到Temporal Conv中进行时间卷积计算。

(2)ST-GCN[22]:ST-GCN 仅考虑了人体骨架图的自然连接,是采用T+I 技术的典型模型,所以选择它作为对比模型进行了实验。

(3)T+E 的融合模型:迄今为止还没有发现这样的模型。然而,T+E 模型有明确的技术含义,就是忽略所有骨架图的自然连接,全部通过人为设置外部依赖关系来进行空间模式学习。因此,使用本文的外在卷积计算(公式(5))替代空间图卷积模块计算公式(公式(6)),就得到T+E模型,供本文实验所用。

(4)本文模型IED-STGCN:它是T+I+E的融合模型。

表1给出了在Kinetics数据集中Top-1和Top-5性能上的消融实验的结果。

表1 Kinetics数据集上的消融实验Table 1 Ablation experiments on Kinetics dataset

从表1可以看出:

(1)相比Temporal Conv、ST-GCN 和T+E,本文模型的Top-1准确率分别提升了12.9、2.5和6.9个百分点,而Top-5 准确率分别提升了15.3、2.5 和7.8 个百分点。说明本文模型明显优于目前在人体动作识别中使用最多的时间卷积的模型(Temporal Conv),也比单独考虑内在依赖、外在依赖(ST-GCN、T+E)的时空卷积要好。

(2)IED-STGCN的Top-1和Top-5准确率比ST-GCN模型分别提升了2.5 和7.8 个百分点。这说明引入外在依赖是必要的,而且基于内外融合的图卷积是更有效的。

3.5 模型比较实验

在Kinetics 数据集上,选取Feature Enc[11]、Deep LSTM[13]、Temporal Conv[16]和ST-GCN[22]四种模型,进行精度对比实验。表2 给出了在Top-1 和Top-5 指标上的比对实验结果。

表2 Kinetics数据集上的Top-1和Top-5准确率比较Table 2 Comparison of Top-1 and Top-5 accuracy on Kinetics dataset

表2 表明,在Kinetics 数据集上,IED-STGCN 模型全面优于对比模型的准确率。Kinetics是一个无约束环境的典型数据集,因此这样的结果反映了IED-STGCN模型在无约束环境下视频中人体动作识别的优势。

表2 实验选取的对比模型基本代表了目前主要类型的人体动作识别算法类,实验结果验证了不同类型识别方法的有效性。首先,基于手工特征提取方法Feature Enc 效果最差,这主要是因为基于手工特征提取的主观性和随意性大,很难同时提取不同运动模式下的特征,导致学习泛化性能很差。其次,虽然基于RNN或CNN方法(Deep LSTM,Temporal Conv)可以利用深度学习技术自动地提取动作特征,但是都是基于单关节特征分析的,没有利用骨架数据的图结构,所以准确率也很难提升。相比较而言,基于图卷积网络的ST-GCN和IED-STGCN,同时利用骨架图的图结构和节点特征数据,所以识别性能得到提升。特别地,本文引入骨架图的外部依赖关系,有效地弥补了ST-GCN模型的局部物理连接的不足,取得了最佳的实验效果。

值得注意地是,由于Kinetics 是一个室外复杂场景拍摄的多种运动模式并存的现场视频数据,因此表2实验中的精度普遍不高,这也和现有的类似研究实验是吻合的。为了进一步验证所提模型的有效性,在室内场景下的3D骨架数据集NTU-RGB+D进一步进行了精度对比实验。

在NTU-RGB+D 数据集的两个代表性子集X-Sub和X-View上,尽量选取目前流行的不同识别技术的算法完成了实验。共选取13个对比模型或算法:Lie Group[10]、H-RNN[12]、Deep LSTM[13]、PA-LSTM[13]、ST-LSTM+TS[14]、STA-LSTM[30]、VA-LSTM[31]、Two-Stream 3DCNN[15]、Temporal Conv[16]、C-CNN+MTLN[17]、Synthesized CNN[32]、ST-GCN[22]和DPRL+GCNN[33]。表3给出了Top-1精度的实验结果。

表3 NTU-RGB+D数据集上的TOP-1准确率比较Table 3 Comparison of Top-1 accuracy on NTU-RGB+D Dataset

从表3不难看出:

(1)后面3 个模型ST-GCN、DPRL+GCNN、IEDSTGCN 是图学习模型。相比于单节点的特征学习方法,实验结果表明基于图学习的动作识别具有显著的技术优势。

(2)IED-STGCN 在X-Sub 和X-View 数据集上分别取得了84.9%和92.1%的Top-1精度,超越现有模型。这表明本文模型在处理有无约束环境下的骨架3D 数据上,有能力提升动作识别的精确性和可用性。

结合表2 和表3 可以看出,无论是在有约束的Kinetics 数据集还是在无约束的NTU-RGB+D 数据集上,IED-STGCN均取得了较好的识别精度,说明本文技术与方法可以明显改善骨架图的动作识别性能。

4 结论

本文提出一种基于内外融合图卷积的人体骨架动作识别模型IED-STGCN。首先,在空间图卷积模块中融合了内在依赖和外在依赖关系,使得该模型能更好地捕获和分析人体骨架图。其次,为了区分出不同的运动趋势对于动作识别的影响,进一步将内在依赖划分为根节点、向心节点集、离心节点集,这有效地提升了图卷积的泛化能力,一定程度减缓了学习中过平滑的危险。再次,将融合了内外依赖的空间图卷积模块和时间卷积模块应用到骨架时空图中,构建了基本的时空卷积单元,并通过多层时空卷积层的传播实现对骨架时空图的精准挖掘。最后,在两个典型的公共数据集Kinetics 和NTU-RGB+D完成了模型对比实验。实验结果表明,本文IED-STGCN 在不同环境下的Top-1 和Top-5 准确率均优于现有的比较模型。

猜你喜欢
骨架卷积人体
人体“修补匠”
浅谈管状骨架喷涂方法
人体冷知识(一)
基于3D-Winograd的快速卷积算法设计及FPGA实现
排便顺畅,人体无毒一身轻
骨架密度对炭/炭多孔骨架压力浸渗铜的影响
从滤波器理解卷积
奇妙的人体止咳点
基于傅里叶域卷积表示的目标跟踪算法
内支撑骨架封抽技术在突出煤层瓦斯抽采中的应用