本文最后更新于:2020年11月10日 早上

最近主要阅读了三篇视频目标检测方向的文章,这三篇都是Attention-Related的文章,主要目的在于提高检测的精度。

阅读文献:

[1] Han M, Wang Y, Chang X, et al. Mining Inter-Video Proposal Relations for Video Object Detection[J]// Proceedings of the European Conference on Computer Vision (ECCV). 2020

[2] Wu H, Chen Y, Wang N, et al. Sequence level semantics aggregation for video object detection[C]//Proceedings of the IEEE International Conference on Computer Vision. 2019: 9217-9225.

[3] Deng J, Pan Y, Yao T, et al. Relation distillation networks for video object detection[C]//Proceedings of the IEEE International Conference on Computer Vision. 2019: 7023-7032.

1.HVR-Net

此前的方法证明了合并不同帧间的proposal信息可以增强视频目标检测的性能,然而这些方法主要探索了单个视频内部的proposal关系,忽略了不同视频间的proposal关系。不同视频之间的proposal关系有助于识别易混淆的目标。作者为了解决这一问题,提出了Inter-Video Proposal Relation module和Hierarchical Video Relation Network(HVR-Net)。前者基于一个简明的多级三元选择体系,通过对不同视频间的困难proposal建模,学习更有效的目标表示。后者通过分层的方式,整合Intra-video和Inter-video的proposal关系,促进视频目标检测。

image-20201110082413497

Video-level Triplet Selection

作者设计了一个video-level的triplet-selection模块,可以为一个Target Video从一组Support Videos中选出两个Confused Videos。Confused videos可以来自相同类别中最不相似的视频,或不同类别中最相似的两个视频。至此,在每个训练batch中得到了一个Confused videos的三元组,可用于指导HVR-Net对视频间的易混淆目标建模。

详细来说,作者从训练集中随机选择K个目标类别,每个类随机选N个视频。这样,一个batch就有KxN个视频,随机选择其中一个视频作为target video,其余KxN-1个为support video。对每个视频,随机选一帧作为目标帧t,其余T-1帧为辅助帧。

将每个视频的T帧单独喂给Faster RCNN的CNN backbone,提取特征。最终得到的该视频的特征张量的尺寸为HxWxCxT,H和W是尺寸,C为通道数。然后在空间和时间维度执行global average pooling,产生C维的视频表示。根据视频间cosine相似度得到video triplet: image-20201110082949155其中V+是同类中最不相似的辅助视频,V-是不同类间最相似的辅助视频。

Intra-Video Proposal Relation

HVR-Net将上述三元组中的每个视频,抽取其样本帧(如t-s,t,t+e)喂给Faster RCNN的RPN和ROI层,为每个样本帧产生目标proposal的特征向量。随后加权合并t-s和t+e的proposals以增强目标帧t的proposal。这样可以解决Intra-Video的问题(如运动模糊、遮挡等)。使用下式加权合并所有辅助帧的所有proposal特征:(concise non-local-style relation module)

是目标帧t的第m个proposal特征, 是辅助帧i的第j个proposal特征,i属于{t-s,t+e}。上式使用一个核函数g(···,·)(例如Embedded Gaussian)来对比 和 的相似性。

Proposal-level Triplet Selection

上述Intra-video增强proposal只考虑了每个独立视频内的目标语义,忽略了视频间的目标差异。为了对这个差异建模,作者从视频三元组Vtriplet中根据Intra-video增强过的proposal特征,选择hard proposal triplets。

详细来说,根据等式(2)进行了视频内增强过的特征,对比这些proposal的cosine相似性。对于目标视频中的一个proposal ,获得其对应的proposal triplet:

image-20201110082612431

其中P+是同类中最不相似的proposalP-是不同类中最相似的proposal

Inter-Video Proposal Relation

为每个proposal triplets从support video的proposal合并增强到target video的proposal。每个proposal特征都进一步利用视频之间的依存关系来解决视频之间的目标混淆。

为proposal triplets之间的关系建模,以描述视频间的目标差异。为每个proposal triplet采用concise non-local-style relation module:

image-20201110082619766

其中f(·,·)是用于相似性对比的核函数(例如Embedded Gaussian),α+是经过视频内增强的hard positive proposal P+的特征,α-是经过视频内增强的 hard negative proposal P-。

作者使用以下损失函数来有效的减少检测时的目标混淆:

image-20201110082651032 image-20201110082654644

image-20201110082704279

这里我发现作者的表述有一定问题,与梁俊学长讨论,他也发现了这个问题:文中所述损失函数中的d为欧氏距离。作者的目的是增强当前Proposal Ptargett,m和P+的关系,减少当前Proposal Ptargett,m和P-的关系。那么就应该缩短与P+的距离,增加与P-的距离。而按照作者的Lrelation的定义则恰恰相反。经过与作者沟通,作者表示通过实验发现这样的Loss效果比较好,但还是感觉解释的有点牵强。

总结:

创新点:

  • 基于灵活的多级triplet selection体系,提出了一个分层视频关系网络HVR-Net。
  • 学习了不同视频间的关系,提升了视频目标检测效果。

缺点:损失函数定义可能有误,与文章描述的意图描述不符。

2.SELSA

此前的视频目标检测方法依赖光流或循环神经网络进行特征融合,更强调时间上相邻帧。本文在full-sequence level(整个序列级别)上进行特征融合,具有更多的判别性和鲁棒性。作者不将视频看为连续的,而是将其看为一组无序帧,并尝试在整个序列级别上学习每个类的不变表示。将视频目标检测从顺序检测任务重新解释为multi-shot检测任务。本文的方法设法在proposal级别利用视频级别的信息合并特征,并且是端到端的优化,没有后处理步骤。

FGFA和MANet从一个短的时间窗口中提取特征。然而,目标表观退化会在一个较长的时间窗口持续发生,使得基于时间的方法效率不高。而且,这些帧在短时间窗口内可能是高度冗余的,因此削弱了特征聚合的优势。为了解决该问题,作者提出从语义邻域中聚合特征,该特征不易随时间持续出现外观退化。

理想的特征聚合方式是在ground truth小片段内合并,但在测试阶段无法为proposal获得跨帧的黄金关联。对于每一帧f,Xf={xf1,xf2,…}表示Faster-RCNN中RPN生成的proposals。对于特定的一对proposal(xki,xlj)使用cosine相似性度量其语义相似性。相似度越高,说明proposal属于同一类的概率越大。

在定义了proposal间的相似性后,语义相似性就可以指导参考proposal从其他proposal合并特征。通过合并多个proposal,新的proposal将包含更丰富的信息,并且对目标外观变化(如姿势、运动模糊、变形)具有鲁棒性。由于相似性建立在proposal级别上,因此与需要在特征图的每个位置计算光流的方法相比,更具有鲁棒性。

为了保持合并后的特征大小不变,在所有proposal上使用softmax函数将相似性进行标准化。假设从视频中随机选择F帧进行合并,每帧有N个proposal,合并后的参考proposal定义为: ,其中Ω是帧的索引。SELSA可以用标准SGD进行端到端的优化,在合并之后,增强过的proposal特征被喂给检测header网络,进行分类和边界框回归。

image-20201110082721299

SELSA的结构如上图所示,首先在视频的不同帧提取proposal,然后计算其语义相似性,最后根据语义相似性合并其他proposal的特征,从而获得更具有辨识性和鲁棒的目标检测特征。

此外,作者进一步揭示了该方法与经典光谱聚类算法的紧密联系,从类内方差减少的角度阐明了SELSA的工作方式。

总结:

本文使用全序列级别的特征聚合,提出了一个简单高效的SELSA模块,聚合帧间的语义特征。对于关键帧上的某个proposal,聚合来自其他帧中的同类proposal。本文的特征聚合是在proposal level的,而非在feature map级或像素级,所以该方法对运动模糊或较大的姿势变化比较鲁棒。

创新点:

  • 将聚合的目标放在具有相同语义的proposal上,对于关键帧上的某个proposal,聚合来自其他帧中的同类proposal。

  • 将抽样的角度放在了整个序列,将检测与时序解耦,通过打乱视频帧顺序,又一次的提高了准确度。

  • 由于进行了全视频序列采样,该方法很好融合了序列信息,所以不需要进行 SeqNMS 之类的后处理,极大简化了整个方法流程。

3.Relation Distillation Networks

RDN直接在局部范围学习不同帧的候选框之间的关系来增强box-level的特征。

众所周知,对目标间的关系建模有助于目标检测。但探索目标间的交互对于增强视频目标检测器同样重要。本文设计了RDN来捕捉时空上下文间的目标交互,RDN聚集和传播目标关系来增强用于检测的目标特征。首先通过RPN生成目标proposals,一方面通过多步推理对目标关系建模,另一方面用级联方式的高度对象性的评分,通过精练辅助目标proposals,逐步提炼关系。所学习到的关系验证了该算法在提高帧内目标检测和帧间框连接方面的有效性。

视频目标检测通过两个方向来探索时空一致性:1)box-level 聚合2)特征聚合。前者在连续帧的bbox内探索关联,生成tubelets。后者通过聚合临近的特征来提升每帧的特征。以上这些增强视频目标检测的方法都没有充分研究如何利用目标之间的关系。

image-20201110082727995

目标关系描述了目标间的交互或几何位置。文章《Relation networks for object detection》的基本思想是,测量一个目标的关系特征,作为图像中其他目标的外观特征的加权总和,权重反映外观和几何信息方面的目标依赖性。图(a)展示了一个堆叠的关系模块,以多步方式聚合关系特征并增强目标特征。该方法验证了对目标关系建模来增强图像目标检测的有效性。然而,将挖掘图像的目标关系扩展至视频非常有挑战,因为视频包含复杂的时空上下文信息。从相邻帧提取的辅助目标以及参考帧的目标都需要被考虑到。这个区别就导致了计算开销和内存需求的急剧增加。如果直接使用《Relation networks for object detection》中的目标关系度量,不考虑增加辅助目标proposals会导致更多无效的proposals,可能会影响整个关系学习的稳定性。

为了解决这一问题,作者提出了如图(b)所示的多步模块,其独到的设计是逐步安排关系蒸馏。我们从所有支持框架中选择具有较高客观性得分的目标proposals,并且仅通过目标关系来增强这些提议的特征,以进一步提炼相对于参考帧中proposal的关系。这种级联的方法一方面可以减少计算量,过滤掉无效的proposal,另一方面可以更好地改善目标关系。

总结:

作者通过巩固时空上下文中对象关系建模的思想,提出了关系蒸馏网络(RDN),用于增强视频对象检测。具体来说,利用Region Proposal Network(RPN)从参考帧和所有支持帧中生成目标proposal。从支持帧中提取的proposal被打包放入supportive pool。RDN的目标是:通过聚合supportive pool中proposals的关系特征,增强参考帧中每个目标proposal的特征。

RDN采用多阶段推理结构,包括基础阶段和高级阶段。在基础阶段,RDN利用supportive pool中的所有proposal来度量在外观和几何信息上度量的关系特征。无论proposal的有效性如何,都将在此阶段对所有支持proposal的交互进行整体探讨。相反,在高级阶段,RDN会很好地选择具有高客观性得分的支持proposal,并且首先为这些proposal的特征赋予其与所有支持proposal的关系。然后,这些合并的特征反过来加强了参考帧中proposal的关系蒸馏。用目标关系增强过的每个proposal特征最终被用于proposal分类和回归。并且学习到的关系也有利于box-linking的后处理,RDN适用于任何基于region的视觉任务。