PBRNet:Progressive Boundary Refinement Network for Temporal Action Detection (AAAI 2020)

PBRNet:Progressive Boundary Refinement Network for Temporal Action Detection
AAAI 2020 中国科学技术大学

欢迎感兴趣的朋友关注公。众号StrongerTang更多交流讨论,相互学习!
1 摘要
由于动作边界的模糊性,时序动作检测是一项具有挑战性的任务。为了解决这一问题,本文提出了一种端到端渐进边界细化网络(PBRNet)。PBRNet属于 one-stage系列,具有三个级联的探测模块,可以更精确地定位动作边界。

具体来说,PBRNet主要包括粗金字塔检测精金字塔检测细粒度检测前两个模块构建两个特征金字塔以执行基于anchor的检测,第三个模块探索帧级特征以细化每个动作实例的边界。在细粒度检测模块中,提出了三个帧级分类分支来增强帧级特征,更新动作实例的置信度。显然,PBRNet集成了基于anchor和frame-level的方法。

我们对提出的PBRNet进行了实验评估,并综合研究了主要组件的影响。结果表明,PBRNet在THUMOS14和ActivityNet两个常用基准上均达到了最新的检测性能,同时具有较高的推理速度。

2 相关背景
2.1 时序动作检测
时序动作检测任务当前的方法主要借鉴于目标检测的成果,即主要的两种思路,思路1:类似于Faster RCNN的two-stage,思路2:类似于SSD的one-stage;two-stage精度高但计算量大、速度慢,one-stage则恰好相反;两者的结合成为当前不少工作的思路。

与目标检测具有明显的间隔一致性相比,视频的边界是模糊的,因为连续帧之间的变化通常是微弱的。这也使得边界定位的准确度较低。为了解决这个问题,现有的方案主要有两个主流思想。一个是apply boundary regression to refine the boundaries,其中cascaded boundary regression是一个经典又高效的方案,代表成果如 CBR (Cascaded boundary regression for temporal action detection. BMVC 2017),CBR以迭代的方式进行边界回归,输出的边界被送回到作为下次refinement的输入。但CBR在边界回归的不同步骤使用同样的结构和特征,这与progressive learning是不一致的

另一个思路是densely evaluate frame-level scores, 然后通过设置得分的阈值来决定候选动作的边界。因此,proposal的边界变得细粒度。但是,这种frame-level的方法严重依赖于selection metric or preset threshold, 而这些又决定了动作边界的精度。

基于这样的背景,本文提出了一种渐进边界细化网络(PBRNet)来提高时序动作检测的精度和速度。不同于现有的大多数方法,PBRNet的整个网络,包括特征提取,都是联合训练的。 在检测阶段,一个three-step的级联回归被构造来让动作边界变得精细化。

3 方案原理
在这里插入图片描述

PBRNet整体结构图

PBRNet是one-stage的检测器,整体采用类似于U-Net的结构,主要由三个关键部分组成:coarse pyramidal detection(CPD), refined pyramidal detection(RPD) and fine-grained detection(FGD)。CPD和RPD是基于anchor的检测系统,两个对称的特征金字塔被设计来检测不同尺度的动作。FGD旨在通过frame-level的特征精细化候选动作的边界。

3.1 Feature Extraction
在这里插入图片描述

首先将视频切分为视频段(L × H × W,L为视频段的帧数,实验中 H = W = 96),3D卷积采用的 I3D ( Quovadis,action recognition? a new model and the kinetics dataset. CVPR 2017,之前组会讲过),但是I3D最后的平均池化层没有使用,得到L/8×H/32×W/32的特征图。

3.2 Coarse Pyramidal Detection
在这里插入图片描述

在基于anchor的检测模块中构建时序特征金字塔结构,为了处理动作实例时序尺度上的不同。

特征图空间大小固定为3×3,时序上金字塔每一层变为前一层的一半。特征金字塔一共有5层,即B0 ,B1 ,B2 ,B3 ,B4 , 相应的时序长度为L/8, L/16, L/32, L/64, L/128。低层的时序高分辨率特征图用来检测时间短的动作实例,高分辨率的则用来检测时间长的动作实例。类似于SSD,特征图的每一层都设置一定数量的不同尺度的anchor。假设一个特征图的时序长度为N,每个时序位置有 K 个不同尺度的anchor,则这一anchor 层一共有 NK 个anchors。

特征金字塔中的每一层都做classification and location regression,通过3×3×3的卷积层实现。

通过CPD模块,我们将获得first-level的候选动作,但是CPD的金字塔中, 低层缺乏足够的语义信息并且高层缺乏足够的 fine details,所以first-level的候选动作只拥有粗糙的边界。

3.3 Refined Pyramidal Detection
在这里插入图片描述

为了完善CPD的缺陷,我们在RPD中提出了更强大的金字塔。特征金字塔逐层将特征图在时序上进行上采样,同时融合CPD的特征图来丰富特征。特征层变为U0 ,U1 ,U2 ,U3 ,U4,时序尺度为L/128, L/64, L/32, L/16, L/8。
其中,特征图Un是通过融合前面一层的特征图Un−1和CPD模块中相应的特征图B 。具体实现如下图中的FBv1模块:
在这里插入图片描述

由于CPD 和RPD有着对称结构,我们直接将first-level候选动作作为RPD的anchor。随后,进行classification和regression 来产生second-level 候选动作。

类似的两个inter-connected 时序金字塔在论文(Multi-granularity generator for temporal action proposal. CVPR 2019)中已经提出,但是本篇论文作者认为他们的创新性在于classification 和 regression在金字塔上都被进行了,形成了级联的检测方案。

3.4 Fine-grained Detection
在这里插入图片描述

FGD模块被设计用来以细粒度精细化候选动作。在FGD中,使用如下图所示的FBv2来生成frame-level特征。frame-level特征来源于两部分,第一部分是 RPD中最后的特征图作为输入,经过三次反卷积后将时序长度变为和网络起始输入的视频段一样。第二部分将raw frames作为输入,使用三个卷积层和一个平均池化层来使得特征图与第一部分的维度一致。然后将这两部分的特征图级联进行融合,再使用一个卷积层来生成最后的frame-level特征。

第二部分的特征图可以补充第一部分的空间信息。此外,我们在frame-level特征上增加了三个frame-level的分类分支,输出对应的三个frame-level 分类概率:actionness, starting 和 ending probability。每一个卷积层都由卷积核为3×3×3的卷积层和softmax层组成。

frame-level 的分类分支有两个主要的功能:首先,额外的frame-level 的监督可以帮助丰富frame-level 特征的语义信息,这对细粒度的边界回归大有裨益。其次, 在推论阶段, frame-level 的分类得分被用来融合anchor-based的分类得分。
在这里插入图片描述

对于精细化的boundary regression,我们单独调节每一个候选动作的开始和结束时间,正如下图所示。

对于一个动作实例s,首先,在frame-level特征图中定位, 前后前后各延伸 t/β ( t = e−s,是候选动作的时长,实验中β = 8,和我之前组会讲的一样)作为输入来refine s。

采用一个时序空洞3D卷积层来预测最后的边界,输出的是时序的偏置。空洞卷积的卷积核大小为3×3×3,时序空洞率为 t/(2 · β)。

最后,得到third-level的候选动作。然后将每一个候选动作映射到 frame-level 的分类分支,得到相应的动作开始和结束的概率 在这里插入图片描述
,将被用于测试阶段anchor的得分。
在这里插入图片描述

4 Training of PBRNet
4.1 Progressive Matching Strategy
通过设置 IoU阈值来判断anchor的取舍,三个模块的阈值分别为
在这里插入图片描述
,实验中分别设置为0.5,0.6,0.7,刚好满足由粗糙到精细的渐进性训练。

4.2 Preliminary Anchor Discarding
对于anchor的正负样本不平衡问题,论文采用了两种措施。一是直接删除掉哪些背景分类得分超过阈值的anchor;二是hard example mining;

4.3 Loss Function
在这里插入图片描述
即为CPD, RPD 和 FGD三个模块的损失之和,λ1和 λ2实验中均等于1。

因为CPD和RPD有相似的检测结构,Lcp和Lrp采用同样的损失函数Lx:
在这里插入图片描述
Lfg包含两部分:
在这里插入图片描述
在这里插入图片描述是边界回归损失:
在这里插入图片描述

在这里插入图片描述
是frame-level分类的损失:
在这里插入图片描述
整个实验中,分类损失为 cross-entropy loss,回归损失为smooth L1 loss for regression。

5 实验效果
5.1 THUMOS14数据集
在这里插入图片描述
5.2 ActivityNet 1.3 数据集
在这里插入图片描述

5.3 Qualitative examples
在这里插入图片描述

5.4 Comparison on action detection speed for test
在这里插入图片描述

5.5 消融实验
在这里插入图片描述

6 结论
文章提出了一个新的渐进边界回归的网络,其中粗细粒度结合的方法值得借鉴。

推荐阅读:
Knowledge Integration Networks for Action Recognition AAAI 2020
TEINet: Towards an Efficient Architecture for Video Recognition(AAAI2020)
P-GCN:Graph Convolutional Networks for Temporal Action Localization 2019 ICCV
G-TAD: Sub-Graph Localization for Temporal Action Detection
ActivityNet数据集简介及下载分享(百度网盘)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章