分享

基于骨架的动作识别的时空图卷积网络

 taotao_2016 2020-01-14

人体骨架为人类动作识别传递了重要的信息。传统的骨架建模方法通常依赖于手工制作的部件或遍历规则,因此表达能力有限,难以推广。本文中,我们提出了一种新的动态骨架模型,称为时空图卷积网络(ST-GCN),它通过从数据中自动学习空间和时间模式,突破了以往方法的局限性。这种方法不仅具有更强的表现力,而且具有更强的泛化能力。在两个大型数据集Kinetics和NTU-RGBD上,与主流方法相比取得了实质性的改进。

关注文章公众号

对话框回复“paper27”获取本篇论文


动机


1)现有的大多数方法都依赖于手工制作的部件或规则来分析空间模式。因此,为特定应用设计的模型很难推广到其他应用。

2)目前的使用图神经网络的方法,都假设一个固定的图作为输入,这样的方式对于基于骨架的动作识别任务来说并不是最优的。

因此,本文通过将图神经网络扩展到时空图模型,设计了一种用于动作识别的骨架序列的通用表示方法,称为时空图卷积网络(ST-GCN)。


贡献


1)提出了一种通用的基于图的动态骨架建模方法ST-GCN,首次将基于图的神经网络应用于这一课题。

2)针对骨骼建模的具体要求,提出了在ST-GCN中设计卷积核的几个原则。

3)在两个用于基于骨架的动作识别的大规模数据集上,与以前使用手工制作的部分或遍历规则的方法相比,所提出的模型获得了更好的性能,并且比手工设计的工作量要小得多。



时空图卷积网络


本文通过将图神经网络扩展到时空图模型,设计了一种用于动作识别的骨架序列的通用表示方法,称为时空图卷积网络(ST-GCN)。

骨架图结构

骨架序列通常由每个帧中每个人体关节的2D或3D坐标表示,我们构建了一个以关节为图节点,人体结构和时间中的自然连通性为图边的时空图G=(V,E),其为具有N个关节和T个帧的骨架序列。

节点集合V表示为:

包括骨架序列中的所有关节。作为ST-GCN的输入,节点上的特征向量由第t帧上第i个关节的坐标向量和置信度组成。

边E的集合由两个子集组成。首先,根据人体结构的连通性,将一个骨架内的关节用边连接起来:

然后,每个关节将连接到连续帧中的同一关节:

空间图卷积神经网络

考虑单个帧内的CNN模型。在这种情况下,在时间T 的单个帧上,有N个关节节点以及骨架边在空间卷积神经网络中,我们以图像中的卷积神经网络为依托,根据动态骨胳序列的特点,定义了新的应用与图卷积的采样函数与权重函数。

采样函数

在图像上,采样函数p(h,w)是在相对于中心位置x的相邻像素上定义的。在图上,我们可以类似地在节点邻居集合上定义采样函数:

其中:

  • 表示从的任意路径的最小长度

  • D=1,即关节节点的1-hop 邻居集

权重函数

在图像的2D卷积中,邻居内的像素可以具有固定的空间顺序。然后,可以通过根据空间顺序索引(c,K,K)维的张量来实现权重函数。而对于骨架序列这样的图,没有这样的隐式排列。

为了解决这个问题,我们按照目标节点周围的邻居的图标记过程定义来构造权重函数。不是给每个邻居节点一个唯一的标签,而是通过将关节点的邻集划分成固定数量的K个子集,每个子集都有一个数字标签。因此,可以有一个映射,将邻域中的节点映射到其子集标签:

则权重函数表示为:

可以通过索引(c,K)维张量或下式实现:

子集划分策略

我们提出了三种子集划分策略,如下图所示:

利用改进的采样函数和权函数,空间图卷积表示为:

若将图像视为规则的2D网格,该公式可以类似于标准的2D卷积。在以像素为中心的3×3网格中,若有一个9像素的邻居。然后应将相邻集合划分为9个子集,每个子集具有一个像素。

时空建模

在建立了空间图卷积之后,我们现在开始对骨架序列中的时空动力学进行建模。在构建图形时,图在时间方面是通过连接连续帧上的相同关节来构建的。为了对时间建模,我们扩展了邻域的概念,将时间连接的关节也包括在内:

其中:

  • 参数Γ控制要包括在相邻图中的时间范围,因此可以称为时间核大小。

由于时间轴是有序的,因此,我们直接修改以目标节点的时空邻域的标签映射

其中:

  • 处的单帧情况的标签映射。

ST-GCN 的实现

单个帧内关节的身体内部连接由表示自身连接的邻接矩阵A和单位矩阵 I 表示。

1)在单个帧的情况下,采用第一分割策略的ST-GCN可以用以下公式实现:

其中:

在实际应用中,在时空情况下,我们可以将输入特征映射表示为(C,V,T)维的张量。图卷积通过执行1×Γ标准2D卷积来实现,并将所得到的张量与第二维上的归一化邻接矩阵Λ^(−1/2).(A+i).Λ^(−1/2)相乘。

2)对于具有多个子集的划分策略(距离划分和空间配置划分),邻接矩阵被分解成几个矩阵,其中例如在距离划分策略中,,则SI-GCN表示为:

其中:

并且,为了表示不同节点的重要性,对于每个邻接矩阵,都伴随着一个可学习的权重矩阵M。则ST-GCN中的A+I与可以表示为:

其中:

  • ⊗表示两个矩阵之间的逐元素乘积。

  • 掩码M初始化为全一矩阵



实验


我们在两个骨架动作识别数据集上来验证 ST-GCN 的性能。

数据集

1)Kinetics-Skeleton:包含从YouTube上检索到的大约30万个视频剪辑。所为了获得骨架关键点信息,我们将视频调整到340×256的分辨率,并将帧率转换为30FPS。使用公共的OpenPose工具箱,估计每帧上18个关节的位置。该数据集共有约 30 万个视频与 400 类动作。

2)NTU-RGB+D:该数据集共有约 6 万个视频,60 个动作类别,每一帧有25个关节点。这个数据集包含了两个测试基准:1)跨表演人(X-Sub):训练片段来自一个演员,并且其余演员的片段用于评估;2)跨视角(X-View):训练片段来自相机视图2和3,评估片段都来自相机视图1。

实验结果

各种基线模型在两个数据集上的的对比结果如下表所示:

从上表可以看到我们所提出的ST-GCN在两个数据集上都能很好地工作的,证明了所提出的时空图卷积运算和所得到的ST-GCN模型的有效性。

格式 1 ( 15px, #3E3E3E )

除了对比基准模型之外,我们分析了可学习边重要性权重M(ST-GCN+Imp)对识别性能的影响:

可以看到,加入了可学习边重要性权重M之后,识别性能比元ST-GCN有所提升。并且,在表1中我们还可以看到,三种划分规则对识别精度的影响,距离划分与空间构型划分相对于原始 GCN 使用的唯一划分在精度上均有较大提高。


总结


本文提出了一种新的基于骨架的动作识别模型--时空图卷积网络(ST-GCN)。该模型在骨架序列上构造了一组时空图卷积。在两个具有挑战性的大规模数据集上,所提出的ST-GCN模型的性能优于以往最先进的基于骨架的模型。此外,ST-GCN能够捕获动态骨架序列中的运动信息,这是对RGB模态的补充。基于骨架模型和基于帧地模型的结合进一步提高了动作识别的性能。ST-GCN模型的灵活性也为以后的工作开辟了许多可能的方向。例如,如何将场景、对象和交互等上下文信息合并到ST-GCN中。

转载来源:专知

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多