Advertisement

MS-AAGCN:Skeleton-Based Action Recognition with Multi-Stream Adaptive Graph Convolutional Networks

阅读量:

该研究提出了一种多流自适应图卷积神经网络(MS-AAGCN)用于骨架数据的动作识别。传统方法通常依赖于固定图拓扑,无法适应不同动作样本,且忽略了骨架数据中的二阶信息(如骨骼长度和方向)。MS-AAGCN通过自适应图卷积层、注意力模块和多流框架,增强了模型的灵活性和泛化能力。自适应图卷积层结合全局图和独立图,利用骨架数据的二阶信息,同时多流框架整合了关节、骨骼和运动信息,显著提升了动作识别性能。实验结果表明,该方法在骨架数据的识别任务中表现优异,优于传统方法。

A Skeleton-Based Approach for Action Recognition Task Utilizing Multi-Stream Adaptive Graph Convolutional Networks Framework

CVPR2019

基于骨架的多流自适应图卷积网络动作识别


主要内容:

  1. 提出一种多流注意力增强的自适应图卷积神经网络l multi-stream attention-enhanced adaptive graph convolutional neural network (MS-AAGCN),端到端自适应地学习图的拓扑结构。
  2. 提出STC注意模块并嵌入到每个卷积层,帮助模型学习选择性地专注于区分性关节、框架和通道,以便与其他参数一起共同学习和更新。这种数据驱动的方法增加了模型的灵活性和泛化能力。
  3. 首先构造骨架数据的二阶信息(骨骼)并将其与一阶信息(关节)结合,这为识别性能带来了显着的改善;进一步提取关节和骨骼的运动信息,并将这四种方式集成到一个多流框架中。
  4. 证实了自适应学习的图的拓扑结构比基于人体的图更适合于动作识别任务。

创新点:

在每个图卷积层中集成了一个STC-attention模块,有助于模型更专注于重要的节点、帧和特征。通过在统一的多流框架中有意识地对关节、骨骼和相应的运动信息进行建模,显著提升了性能。通过将骨架数据与骨架引导的RGB数据融合,带来了显著提升。未来研究的重点之一是探索如何更有效地融合RGB模态和骨架模态。整合到一个统一的框架中进行研究,将基于骨架的动作识别算法和姿态估计算法结合起来进行研究,也是值得探索的方向。

以前的GCN-based存在的问题:

  1. 在所有模型层和输入数据上,图的拓扑结构是启发式设置并固定的,并固定在所有模型层和输入数据上,不适合GCN的层次结构和动作识别中数据的多样性。
  2. 对人体动作识别来说更具信息性和辨别性的骨架数据二阶信息:骨骼的长度和方向很少被研究。

MS-AAGCN,多流注意力增强自适应图卷积神经网络。

与传统RGB视频识别方法相比,基于骨架的动作识别在动态环境下的适应性和复杂背景处理上具有显著优势。在深度学习框架下,基于骨架的动作识别方法将骨架数据表示为关节坐标向量序列或伪图像,并通过RNN或CNN进行处理以生成预测结果。将骨架数据表示为矢量序列或2D网格无法充分捕捉关节之间的内在依赖关系。由于骨架数据在非欧几里得空间中自然地表现为曲线图结构,其中关节作为顶点,其在人体中的自然连接作为边,这种特性使得骨架数据的图形结构特征得以保留。相比之下,传统的基于骨架的动作识别方法未能充分利用骨架数据的图形结构特征,并且难以有效概括具有任意形式的复杂骨骼结构。

ST-GCN 是一种基于图卷积网络的时空建模方法。通过GCN对骨架数据进行建模,构建空间图结构,并在连续帧中添加时间边,从而实现对动态人体关节关系的刻画。该方法还设计了一种基于距离的采样函数来构建图卷积层。ST-GCN的主要缺陷在于: 计算开销较大,对噪声较为敏感,且模型的解释性较差。

  1. 骨架图是基于人体自然连通性启发式预定义的,不能保证对动作识别是最佳的。预定义的基于人体的图形中彼此相距很远,有的时候不能捕获较远部位的依赖关系。
  2. 神经网络是分层的,不同层包含不同级别的语义。应用于ST-GCN的图拓扑在所有层上都是固定的,缺乏对不同层多级语义建模的灵活性和能力。
  3. 对所有不同动作类别的样本,一个固定的图结构对于不同动作类的所有样本可能不是最优的。图形结构应该是数据相关的。

为解决上述问题,文章提出了一种新的自适应图卷积层,该层能够自适应地构建两种自适应图结构。其中,全局图global graph是通过学习图邻接矩阵获得的,其构建过程基于任务相关的损失函数进行优化,从而获得更适合于动作识别的图拓扑结构。独立图individual graph则通过分析图顶点之间的特征相似性来构建边缘关系。由于数据样本的多样性,该模块能够为每个输入样本生成独特的图结构。通过引入门控机制,可以动态调整这两种图在不同模型层中的重要性。具体而言,两种图分别在独立的优化过程中进行单独训练,从而能够更好地适应神经网络的层次化特征提取需求。这种基于数据驱动的方法显著提升了图结构构建的灵活性,使其能够更广泛地适应各种数据样本。

先前研究仅依赖于骨架数据的一阶信息,即记录了关节的2D或3D坐标,而未考虑两个关节之间骨骼特征的二阶信息。骨骼的长度和方向对动作识别任务提供了额外的信息量和判别能力。为了将骨骼信息形式化,我们将其转化为从源关节指向目标关节的向量表示。通过连续帧中两个关节和骨骼之间的坐标差来建模动作的时间演变。

文章在许多方面是以前工作( L. Shi, Y . Zhang, J. Cheng, and H. Lu, “Two-Stream Adaptive Graph Convolutional Networks for Skeleton-Based Action Recognition,” in The IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2019.)的扩展版本:

  1. 对所提出的全局图和单个图融合方案进行了改进,并引入了门控网络以动态调整两图的重要性权重;
  2. 开发了STC-attention组件,该组件能够针对不同数据样本重新分配关节、框架和通道的激活强度,从而有效提升模型对关键关节、框架和特征的聚焦能力;
  3. 将原有模型进行了扩展,构建了多模态框架,该框架成功整合了关节运动和骨骼运动特征;

A。skeleton-based action recognition

与本方法相关的工作

传统技术:构建人工特征以模仿人体。通过Lie group的旋转和平移操作来编码骨架结构。通过秩池化方法,利用ranker的参数来表示数据特征。

  • 数据驱动data-driven:
    • RNN-based:将骨架数据建模为沿着空间和时间维度的坐标向量序列,其中每个向量表示人体关节
      • (“Hierarchical recurrent neural network for skeleton based action recognition,” CVPR2015)使用分层双向模型来识别骨骼序列,该模型将人体分成不同的部分,并将它们发送到不同的子网络
      • (“An End-to-End Spatio-Temporal Attention Model for Human Action Recognition from Skeleton Data.” AAAI2017)在基于的模型中嵌入时空注意模块,使网络能够自动关注骨架序列的判别时空区域
      • (“View Adaptive Recurrent Neural Networks for High Performance Human Action Recognition From Skeleton Data,” CVPR2017)在基于的模型中引入了视图转换的机制,该机制自动将骨架数据转换成更有利于动作识别的角度
      • (“Skeleton-Based Action Recognition with Spatial Reasoning and Temporal Stack Learning,” ECCV2018)提出了一种具有空间推理(SRN)和时间堆栈学习(TSL)的模型,其中SRN可以捕捉不同身体部位之间的结构信息,而TSL可以对详细的时间动态进行建模

基于CNN的方法:通过将骨架数据建模为伪图像来实现3D动作分析。该论文提出了一种方法,通过将骨架序列转换为一维残差CNN来识别关节坐标。此外,该研究还提出了一种创新的骨架可视化方法,通过结合时空图像增强技术来提高动作识别的鲁棒性。在另一个研究中,作者设计了一种多尺度残差网络架构,并结合数据增强策略,实现了基于骨架的动作识别任务。最后,该团队还开发了一种排列网络,用于学习关节重新排列的优化顺序,从而进一步提升动作识别的性能。

B。GCNN:

空间透视法spatial perspective methods:通过卷积操作直接处理图形顶点及其邻域。研究重点在于如何从图中遗漏顶点和边的隐含顺序中构建局部连通的邻域。这些方法通常基于手动设计的规则来提取邻居:通过基于每个顶点在图中的距离进行采样,来确定其邻域。为了提高处理效果,提出了一种去除冗余顶点并补充虚拟顶点的归一化处理方法。将视频数据表示为一个包含人和检测到对象的图形结构。通过结合特征相似性和时空关系来定义每个顶点的邻域。

光谱分析方法:基于graph Laplace matrices的特征值和特征向量。该方法在频域中执行图形卷积,如(基于图形傅里叶变换的方法在频域中执行图形卷积,2013)所示。通过递归切比雪夫多项式设计的滤波方案具有更高的效率,如(通过递归切比雪夫多项式设计的滤波方案具有更高的效率,2016)所述。通过谱图卷积的一阶近似简化了该方法,该方法遵循空间透视法,如(通过谱图卷积的一阶近似简化了该方法,该方法遵循空间透视法,2016)所示。

A。图结构

空间维度:同一帧中的关节

时间维度:所有帧上的相同关节

在这里插入图片描述

B。图形卷积

在空间维度上,顶点上的图卷积运算公式为:f_{out}(v_i)=\sum_{v_j\in{\mathcal{B}}_i}{\frac{1}{Z_{ij}}{f_{in}(v_j)·w(l_i(v_j))}},其中,f代表特征图,v表示图的顶点,\mathcal B_i是顶点v_i指定卷积采样区域的定义域,即目标顶点v_i的1距离邻域顶点v_j集合。权重函数w类似于传统卷积运算中的加权向量,根据输入数据提供权重向量。由于卷积的权重向量数量是固定的,而顶点数量是可变的,因此通过映射函数l_i,将所有相邻顶点映射到一个固定编号的子集,每个子集均与唯一的权重向量相关联。根据经验,将内核大小设置为3,并将其划分为3个子集:中心子集、内向子集和外向子集。

C。实现

对于空间维度:特征图f\in{\Bbb{R}}^{C×T×N},其中N表示顶点数量,T表示时间长度,C表示通道数。输出特征图{\bf{f}}_{out}通过公式1计算得到:{\bf{f}}_{out}=\sum^{K_v}_{k}{{\bf{W}}_k({\bf{f}}_{in}{\bf{A}}_k)}。其中,K_v为空间维度下的卷积核尺寸(3),滤波器权重矩阵{\bf A}_k被归一化处理为:{\bf A}_k={\bf \Lambda}_k^{-\frac{1}{2}}{\overline{\bf A}}_k{\bf \Lambda}_k^{-\frac{1}{2}},其中{\overline{\bf A}}_k\in{\Bbb R}^{N\times N}与邻接矩阵相似,用于表示顶点是否属于另一顶点子集。归一化对角矩阵{\bf \Lambda}_k^{ii}=\sum_j({\overline{\bf A}}_k^{ij})+\alpha,其中\alpha=0.001用于防止出现空行情况。滤波器权重矩阵{\bf W}_k\in{\Bbb R}^{C_{out}\times C_{in}\times1\times1}为1×1卷积运算的权重向量,用于实现公式1中的加权函数w

在时间维度上,每个顶点的邻居数固定为2。对上文计算所得的输出特征图进行K_t×1卷积操作,其中K_t表示时间维度的卷积核尺寸。

MS-AAGCN multi-channel attention-enhanced self-adaptive graph convolutional network

A。adaptive graph convolutional layer

在这里插入图片描述

自适应图卷积层在端到端的学习框架下,通过优化图的拓扑结构和网络参数,使系统在保持原有稳定性的基础上,提升了系统的灵活性。

邻接矩阵{\bf{A}}_k表征了图中各顶点之间的连接关系;掩码矩阵{\bf{M}}_k则表征了这些连接的强度;为了实现拓扑的自适应性,我们引入了以下变换:{\bf{f}}_{out}=\sum^{K_v}_{k}{{\bf{W}}_k{\bf{f}}_{in}({\bf{B}}_k+\alpha{\bf{C}}_k})}。其主要区别在于,图的邻接矩阵被划分为两个子图:一个用于表示直接连接,另一个用于表示经过某种变换后的连接关系。

  • {\bf{B}}_k从数据中学到的全局图 ,表示更适合动作识别任务的图拓扑,用基于人体的图的邻接矩阵初始化。在训练过程中参数化并与其他参数一起更新,没有约束即完全根据训练数据来学习。通过这种数据驱动的方法模型可以学习完全针对识别任务的图形。对每一层都是唯一的,因此对于包含在不同层中的不同语义级别来说更个性化。
  • {\bf{C}}_k是学习每个样本的唯一拓扑的独立图 。使用嵌入高斯函数f(v_i,v_j)=\frac{e^{\theta(v_i)^T\phi(v_j)}}{\sum^{N}_{j=1}{e^{\theta(v_i)^T\phi(v_j)}}}来估计两个顶点的特征相似度。点积测量嵌入空间中两个顶点的相似度,这里选择1×1卷积层作为嵌入函数,将两个嵌入的特征图重塑为矩阵然后相乘来获得相似度矩阵C_k,矩阵元素表示顶点与顶点之间的相似度,归一化高斯用softmax运算:{\bf{C}}_k=SoftMax({\bf{f}_{in}}^T{\bf{W}}_{\theta k}^T{\bf{W}_{\phi k}}{\bf{f}_{in}})
  • gating mechanism:全局图决定动作识别任务的基本图拓扑,单个图根据各种样本特征增加个性。底层接受场小,限制了从不同样本中学习图拓扑的能力,因此顶层比底层更需要单独的图individual graph,顶层包含的信息更具有语义性,具有更大的可变性,需要图拓扑更多个性。这两种图形使用选通机制(gating mechanism)进行融合,该机制可以自适应地调整它们在每个模型层中的重要性。两个图在不同的层上都是单独优化的,因此它可以更好地适应神经网络的层次结构。总之,这种数据驱动的方法增加了模型构建图的灵活性,并为适应各种数据样本带来了更大的通用性。{\bf C}_k 乘的参数\alpha都是每个层唯一参数化的系数,在训练过程中学习和更新。

B。注意力模块:

建议开发一个STC注意机制,包含三个子组件,这些组件可以采用多种布置方式,其中并行布置是一种常见选择。推荐优先采用SAM、TAM、CAM的顺序。数学公式...保持不变。

在这里插入图片描述
  • Spatial attention module (SAM)空间注意模块帮助模型对每个关节进行不同级别的关注:{\bf{M}}_s=\sigma(g_s(AvgPool(f_{in}))),对输入特征图在所有帧上取平均值,g_s是1维卷积。
  • Temporal attention module (TAM)时间注意模块:{\bf{M}}_t=\sigma(g_t(AvgPool(f_{in})))
  • Channel attention module (CAM)通道注意模块可以帮助模型根据输入样本来增强区分特征(通道):{\bf{M}}_c=\sigma({\bf{W}}_2(\delta ({\bf{W}}_1(AvgPool(f_{in})))))

C。模块:基于时间维度的卷积与ST-GCN结构一致。在训练稳定性方面,通过引入残差连接来简化梯度传播路径。

在这里插入图片描述

D。网络体系结构

在这里插入图片描述

E。多流网络

在这里插入图片描述

骨骼向量是在同一帧内源节点坐标减去前一帧的坐标结果;运动数据是在连续帧之间对应关节或骨骼坐标差的集合。

实验:

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

融合骨架数据和RGB数据用与动作识别的必要性。

全部评论 (0)

还没有任何评论哟~