CTAP: Complementary Temporal Action Proposal Generation
1. 前言
时序动作提名生成的方法大致可以分为三类,基于滑动窗口的(SCNN-prop ,TURN),基于动作性分数判定的(TAG,BSN),将前两者的融合(CTAP,BMN,DBG)。这篇文章是第三种方法的最早的几篇论文了。
基于滑动窗口的方法,将视频按照不同尺度划分为一系列窗口,再对这些窗口判断是否包含动作实例,这种方法的缺点是,边界不够精确(虽然有一些方法可以调整边界),就会造成只有大量检索proposal才能达到高AR,如图1中的圆圈A所示。
基于动作性分数(actionness score),这种方法是对视频的每个位置进行分类评分(该位置在动作内的得分,或者直接二分类),再将高分数结合成proposal;该方法对分类器要求很高,如果分类出现差错救护导致忽略一些proposal,所以AR性能的上限被限制如图1的B。
融合的方法,基于动作性的proposals的边界更精确,因为它们在更精细的层次上被预测,而窗口级排名可能更有有识别力的,因为它用到更多的全局上下文信息当动作性分数的质量比较低时,actionness-based方法可能忽略一些正确的proposals;滑动窗口可以统一的覆盖视频中的所有段。 利用滑动窗口的部分来自适应的补足第二种方法的缺失,就是第三种融合的方法。
2. 方法
文章提出一个新的互补时序动作提名(CTAP)生成器包含三个模型:
- 初始proposal生成,输出actionness proposals和滑动窗口proposals。
- proposal互补滤波器,首先判断actionness方法是否可能漏掉某些proposal,并从滑动窗口proposals中收集过来,组成新的proposals。
- proposals排名与边界调整,设计了一个时序卷积神经网络,时序排序信息
2.1 初始提名生成
这一部分先介绍视频预处理,然后是actionness方法生成proposals和滑动窗口生成proposals。
视频预处理
根据之前的方法,一个未裁剪的长视频被分割成片段,每个片段包含 n u n_u nu个连续的帧。再通过视觉编码器 E v E_v Ev提取片段级的表示 x u = E u ( u ) ∈ R d f \mathbf x_u=E_u(u)\in\Bbb{R}^{d_f} xu=Eu(u)∈Rdf。在这个实验中采用two-stream CNN模型作为视觉编码器。
Actionness方法生成proposals
基于上面的片段特征,训练一个分类器为每一个片段生成actionness分数。这里是采用的两层时间卷积网络,每次输入 t a t_a ta个连续的片段特征, x ∈ R t a × d f \mathbf{x}\in\Bbb{R}^{t_a \times d_f} x∈Rta×df,并为每一个片段生成一个概率,概率表示片段是背景或者动作, p x ∈ R t a \mathbf p_x \in\Bbb{R}^{t_a} px∈Rta。
p x = σ ( t c o n v ( x ) ) , t c o n v ( x ) = F ( φ ( F ( x ; W 1 ) ) ; W 2 ) (1) \mathbf p_x = \sigma(t_{conv}(\mathbf x)), t_{conv(\mathbf x)}=\mathcal{F}(\varphi(\mathcal{F}(\mathbf {x;W_1}));\mathbf {W_2}) \tag{1} px=σ(tconv(x))