Skeleton-Based Action Recognition with Directed Graph Neural Networks
CVPR2019
基于骨架的有向图神经网络动作识别
主要内容:将关节和骨骼信息表示为一个有向无环图,并设计了一个定制的新型有向图神经网络(DGNN)来基于构建的图预测动作。使用图形结构自适应以更好地适应多层架构和识别任务。此外,提取连续帧之间的运动信息来建模骨架序列的时间信息,并且在两个流框架中融合空间和运动信息。最终的模型在两个大规模数据集上超过了当前最先进的性能。未来的工作可能集中在如何利用骨架数据和RGB数据在一起。此外,建议探索如何在统一的体系结构中将姿态估计问题与基于骨架的动作识别相结合。
问题:如何结合骨骼数据中的关节和骨骼信息数据?
(骨骼数据将人体表示为主要身体关节的坐标序列,可由深度传感器(Kinetics)或姿态估计算法轻松捕获。)
对于自然人体,关节和骨骼是强耦合的,每个关节(骨骼)的位置实际上是由他们相连的骨骼(关节)决定的。现有的基于图的方法通常将骨骼表示为无向图,并用两个独立的网络对骨骼和关节进行建模,这不能充分利用关节和骨骼之间的这些依赖性。为了解决这个问题,我们将骨骼表示为有向无环图,以关节为顶点,骨骼为边,其中关节和骨骼之间的依赖关系可以很容易的通过图的有向边来建模。此外,设计了一种新的有向图神经网络(directed graph neural network, DGNN)来对构造的有向图进行建模,可以传递相邻关节和骨骼中的信息并更新他们在每个层中的相关信息,最终提取的特征不仅包含每个关节和骨骼信息还包含他们的依赖关系这有助于动作识别。
通过应用自适应图而不是固定图——图的拓扑是参数化的,并且在学习过程中是优化的;提出一个双流框架来融合空间流和运动流。
贡献:
- 第一个将骨骼数据表示为有向无环图来建模关节和骨骼之间的依赖关系,设计了一种新的有向图神经网络用于提取关节、骨骼及其关系的信息,并根据提取的特征进行预测;
- 基于训练过程对图的拓扑结构采用自适应学习的图结构,在训练过程中与模型参数一起训练和更新,以更好地适应动作识别任务;
- 提取连续帧之间的运动信息用于时间信息建模,空间和运动信息都被输入到最终识别任务的双流框架中;
- 在用于基于骨架的动作识别的两个大规模数据集上,我们的模型以显著的幅度超过了最先进的性能。
(二)相关工作
基于深度学习的方法三种主要框架:
- sequence-based methods:将骨架数据表示关节序列,然后基于RNN建模
- image-based methods:将骨架数据表示为伪图像,CNN
- graph-based methods:将数据建模为以关节为顶点、骨骼为边的图形
(三)方法:原始骨架数据是一系列帧,每个帧包含一组关节坐标,首先根据关节的2D或3D坐标提取骨骼信息,然后每帧中的关节和骨骼(空间信息)被标示成有向无环图的顶点和边,被送到有向图神经网络(DGNN)以提取特征用于动作识别。最后提取与空间信息相同的图形结构表示的运动信息,并在双流框架中与空间信息相结合以进一步提高性能。
-
骨骼信息:
两个相关连关节之间的向量(坐标)差表示骨骼 。
-
图的结构:
方向:更靠近根顶点的指向离根顶点更远的,如图1是根节点
对于每个顶点 v i {\bf v}_i vi,定义传入边缘 e i − {\bf e}_i^- ei−,传出边缘 e i + {\bf e}_i^+ ei+。同样,对于定向边缘 e j {\bf e}_j ej,定义源起点 v j s {\bf v}_j^s vjs,目标顶点 v j t {\bf v}_j^t vjt。如果 v i {\bf v}_i vi是 e j {\bf e}_j ej的目标(源)顶点,则 e j {\bf e}_j ej是 v i {\bf v}_i vi入(出)边。每个边都只有一个源节点和一个目标节点。
有向图 G = ( V , E ) \mathcal{G}=(\mathcal{V},\mathcal{E}) G=(V,E),其中 V \mathcal{V}