将图卷积应用于关系推理

【论文笔记】Learning Actor Relation Graphs for Group Activity Recognition

论文链接:https://arxiv.org/pdf/1904.10117.pdf

代码链接:https://github.com/wjchaoGit/Group-Activity-Recognition

一、论文的目的

1.1 提出问题

群体行为识别是行为识别领域中的一个子任务,需要将多个目标作为一个群体来分析他们的活动。对于复杂场景中的群体活动识别,建模活动参与者之间的相互关系至关重要。然而现存数据集大多只有个体的标签和整个群体活动的标签,缺少参与者之间的交互信息。因此,人们提出了很多方法来进行人物间的关系推理,比较典型的是利用外观特征位置信息来进行计算。

在深度神经网络出现之后,现在的大多数的方法都遵循一种二阶段的识别框架:

1.利用CNN来提取人物的特征(人级特征);

2.设计一个全局的模块来聚合(进行关系推理)1产生的特征,生成场景级特征送入分类器,得到分类结果。

现在的问题在第二阶段:很多方法由于自身采用的网络结构特性导致关系推理的计算成本过高或者缺乏普适性,所以效果都不好。

1.2 本文解决方案

本文提出了一种基于ARG(Actor Relation Graph)和图卷积的关系推理方法,能够快速高效的建模参与者的相互关系。

1.构造活动关系图(ARG),它可以捕获活动参与者的外观和位置相关性,,,后面会解释ARG的定义;
2.应用图卷积(稀疏的采样策略)对ARG中的节点进行关系推理以实现群体活动检测;

二、主要方法(主要讲空间图和图卷积的部分)

2.1 构造ARG

2.1.1 空间图的定义

假设一帧图像里有N个活动参与者,那么建立的空间图G的大小为NxN的邻接矩阵,那么Gij保存的就第j个人对第i个人关系的重要性,下图展示了四张图片和他们对应的ARG
在这里插入图片描述

这里的Gij需要通过公式计算:

在这里插入图片描述

其中xis代表第i个人的边界框中心坐标,xia代表他的外观特征,这些都是经过第一阶段之后可以得到的。而fs和fa分别代表两个人位置关系和外观特征关系,下面将详细解释。

观察上式,可以看出这个很类似于sigmoid函数,所以最终的Gij是大小都在0-1之间的标量,而ARG的则为一个NxN的矩阵。

2.1.2 建模节点间的关系

从上节可以看出本文提出的ARG能够同时捕获活动参与者位置坐标和外观特征的关系。那么如何建模这些关系?

外观的关系:论文讨论了计算外观关系值的两种方法:

(1)点积:直接对两个特征向量求内积,然后除以特征维度以标准化
在这里插入图片描述

(2) 嵌入点积:计算嵌入空间中两个特征的相似度
在这里插入图片描述

其中 在这里插入图片描述
,分别代表对两个特征向量的嵌入操作,实质上类似两个全连接层,里面的参数是可学习的。本文实验中采取这一方法。。

(3)关系网络:将两个特征连接后再经过一个全连接层和ReLU激活函数得到关系值:
在这里插入图片描述
其中[·,·]是连接操作,W和b是可学习的权重,它们将连接的向量投影到一个标量,紧接着进行ReLU非线性激活

位置关系:为了在行动者图中添加空间结构信息,需要考虑行动者之间的位置关系。为此,文章研究了使用空间特征的两种方法。

(1)Distance Mask:一般来说,来自局部实体的信号比来自远方实体的信号更重要。因此,当两个人的距离超过一定阈值的时候,可以认为他们没有关系;基于这一假设,文章提出了一种距离关系的判断方法:
在这里插入图片描述
其中I(·)为指标函数,d(xi^s, xj^s)为两个行动者边界框中心点之间的欧氏距离,u为距离阈值,是超参数。

这个方法的意义是,将ARG里距离过远的元素对的关系值直接设为零,可以节省大量的计算成本。

(2)Distance Encoding:这个办法也采用将向量嵌入到高维空间的方式:
在这里插入图片描述
其中,E表示嵌入操作,然后,通过权重向量Ws和 bs将嵌入的特征转换为标量,然后进行ReLU激活。

多图融合以及时序建模

1、多图融合:为了更充分的挖掘人物间的相互信息,可以对同一个活动者集合(用A={(xia,xis)|i=1,2…,n}来表示)建立多个ARG,它们都是通过第一节的基本公式计算得来的,只不过采用了不同的权重。

2、时序建模方面:为了更高效的建立ARG,在采样帧的时候,采取稀疏采样策略(这部分和TSN的基本一致)。

2.2 利用图卷积进行推理和训练

一旦ARG构建好了,我们就可以对它们执行关系推理来识别单个动作和群体活动。这需要用到图卷积,图卷积的基本模型如下:
在这里插入图片描述
其中Z(l)为l层的输入,Z(0)就是输入的外观特征X(大小为Nxd);而G就是ARG的矩阵表示,大小为NxN;W(l)是层特有的可学习权值矩阵,大小为dxd;以第一层为例,卷积操作的图示如下:
在这里插入图片描述

由于之前说过,文章构造了多个ARG,所以最终会得到多个这样的Nxd的结果,需要对他们进行融合:
在这里插入图片描述

其中,Ng表示图的个数,σ表示元素级别求总和,图示如下:
在这里插入图片描述

所以最终输出结果可以认为是进行过关系推理后每一个人的关系特征。最后将GCN输出的关系特征与原始特征进行求和,形成场景表示。再将场景表示提供给两个分类器来生成单个动作和组活动预测。

2.3 整体框架图

在这里插入图片描述

上图为概述文章用于群体活动识别的网络框架。首先从采样的视频帧中提取出活动参与者的特征向量。我们使用一个d维向量来表示一个人物的边界框。建立多个活动关系图,获取每个人之间的关系信息。然后,利用图卷积网络对图进行关系推理。然后将所有图的输出融合,生成参与者的关系特征向量。最后,将原始特征和关系特征聚合并输入组活动和单个动作的分类器。

三、思考

读完这篇文章,有三点认识:

一、目前的群体行为检测的基本框架都是二阶段的,分为:1.特征提取和2.关系推理,并且第一阶段的方法基本已经稳定了,而且可以借鉴行为识别方面的最新方法,接下来只需要沿用就好。所以目前我们的研究方向应该着眼于第二阶段的关系推理,想办法弄出更好的关系特征,或者更高效的建模关系特征。

二、图卷积神经网络在处理多个对象之间的相互关系方面有很大的优势,用作关系推理方法很合适。

三、行为识别和群体行为识别有共通之处,但由于数据集的限制(目前只有两个专门用于群体检测的数据集),不能进行迁移学习。

一点疑惑:
在这里插入图片描述
这一部分截取自2.2节的第一张图,我们知道Nxd张量已经保存了每个人的关系特征,为什么这里还需要乘上一个权重,作用是什么,这在文章里没有说明。

一点设想:

群组行为的数据集和行为识别的数据集最大的区别是有box(每个人的边界框),能不能用普通数据集,然后用目标检测之类的方法框出每一个人的位置,再来做群组行为识别,也有可能导致效率和准确率更低,但好处是可以用更多不同的数据集。

  • 5
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值