FMAN(Fully Motion-Aware Network for Video Object Detection)论文详读

abstract

目前,视频目标检测的主流方法是通过聚合邻近帧来增强当前帧中的特征,然后再进行目标检测,但是目标的特征通常会因为帧之间对象的运动而不能被空间校准。本文提出一个端到端的模型fully motion-aware network(MANet)——同时在像素层面和实例层面对对象进行联合校准,像素层面的校准对详细运动建模方面非常灵活,而实例层面的校准可以捕获更多的全局运动路径以增强对被遮挡物体识别的鲁棒性

introduce

因为运动模糊、视频虚焦等原因会产生“恶化帧”。

为了处理这种恶化帧,一种方法是聚合时间和空间信息,利用邻近帧的信息进行检测

作为对比,FGFA方法尝试通过随着运动路径聚合邻近帧的特征,在特征层面利用时间的连贯性,使用流估计来预测来预测每个像素的动作。但是这个方法在物体的外观发生剧烈变化时就不那么准确了,尤其是在目标被遮挡时,不准确的流估计导致flow-guided或许会误导特征校准,从而产生错误的结果

除了现有的像素层面的方法,本文提出一个实例层面的方法,该方法可以沿着时间估计每个对象的动作从而达到准确聚合特征的目的对每个参考帧的proposal,从当前帧和邻近帧中提取联合运动特征来预测相关的动作。通过这些相关的运动,同一目标在邻近帧的特征被ROI池化,并为了更好具代表性而被聚合。

与像素层面的方法相比,实例层面的方法对暂时性的目标外观巨大变化(如遮挡)具有更高的鲁棒性

实验发现像素层面和实例层面的校准可以在不同的运动路径下联合工作——合并后的方法对柔性运动建模更灵活,且高级的运动也可以被描述为常规的运动轨迹。

relate work

针对视频目标检测,一个主流的方法是探索边框之间的关联关系并使用启发式的后处理另一个主流方法是利用特征层面的时间一致性,使用一个有原则的方法提高检测质量

对于后处理post-process,主要思想是:利用邻近帧的高分目标来增强视频中分数较低对象的分数。各种方法的区别主要是链接静态图像检测和跨帧边框序列的映射策略不同——

  1. Seq-NMS for video object detection中,如果跨帧边框的IoU值超过某一阈值则链接这些跨帧边框,并生成整个视频片段的潜在链接关系,然后使用一个启发式方法seq-NMS重新评估边框。

  2. TCNNObject detection from video tubelets with convolutional neural networks聚焦于tubelet重新打分——使用一个线下的跟踪器再次访问检测结果,然后把tubelet周围的静态图像的检测结果联系在一起。Object detection from video tubelets with convolutional neural networks提出一个重新打分的方法来提高tubelet的时间一致性。TCNN提出multi-context suppression 来抑制错误的边框,提出motion-guided propagation来恢复假负边框(false negative box)。

  3. Detect to track and track to detect是第一个同时学习ROI跟踪器和检测器的方法。跨帧的跟踪器被用来增强正边框的分数。

上述的方法在特征层面都可以被进一步联合。实验证明,把seq-NMS和本文方法联合在一起,两个方法的性能都得到了提高。

对于特征层面的学习feature-level learning

  1. Object detection in videos with tubelet proposal networksFGFADeep feature flow for video recognition提出了可以增强视频独立帧特征的端到端的学习框架,FGFA方法提出了流引导特征聚合的方法来利用特征层面的时间一致性。
  2. 为了对帧之间的特征进行空间校准, Flownet: Learning optical flow with convolutional networks使用一个视觉流网络(optical flow network)来估计参考帧及其邻近帧中每个像素的运动。所有邻近帧的特征图被warp到参考帧以增强参考帧的representation。
  3. 与2类似,Deep feature flow for video recognition利用视觉流网络对原始像素的对应关系进行建模,但是速度有了明显的提高。
  4. 单独像素的预测因为没有考虑上下文,导致其结果或许会受局部一致性的影响。Object detection in videos with tubelet proposal networks提出tubelet proposal网络,可以有效生成时空的proposal,tubelet由一个固定的proposal开始,提取混合帧的特征,为了预测对象相对于空间anchor的运动路径,检测器将二维的proposal扩展为时空的tubelet proposal。

Fully Motion-Aware Network 全运动感知网络

在这里插入图片描述

该模型建立在标准的静态图像检测器(包括特征提取器Nfeat、RPN网络Nrpn、基于区域的检测器Nrfcn)的基础上。主要由特征提取器、RPN、基于区域的检测器、像素层面的校准、实例层面的校准、运动路径推理组成。关键点是通过特征校准聚合邻近帧
fully motion-aware network的实现步骤为:

  1. 首先特征提取器同时接收到3个帧It-r、It、It+r作为输入输出三个特征ft-r、ft、ft+r
  2. 然后,先在ft-r和ft+r应用像素层面的校准,生成ft-r→t和ft+r→t,把他们聚合为fpixel ,然后fpixel传送给RPN生成proposal,然后和Nrfcn一起等着进一步和实例层面校准得到的特征进行聚合。
  3. 紧接着实例层面的校准在Nrfcn的位置敏感分数图上被实现。在ft-r、ft、ft+r上应用特制的卷积层,生成一层k²位置敏感分数图st-r、st和st+r。对st中的第i个proposal(xit,yit,hit,wit),使用实例层面的方法来递减st-r中的第i个proposal(xit-r,yit-r,hit-r,wit-r和st+r中的第i个proposal(xit+r,yit+r,hit+r,wit+r的相应位置。邻近帧中的特征和被预测出的proposal被ROI池化,最后聚合为siinsta
  4. 最后,进行运动路径推理以及决定如何组合不同的校准方法。因为fpixel 也会被Nrfcn处理得到第i个proposal的sipixel,所以根据动态运动路径把sipixel和siinsta结合在一起

实现的细节

①pixel-level calibration 像素层面的校准

把参考帧It及其邻近帧It-r(或It+r)作为输入,使用视觉流估计对像素层面的校准进行建模。设F是一个flow估计算法如FlowNet,F(It,It-r)指明通过该网络从It-r到It得到的flow 域估计,然后把邻近帧的特征图warp到参考帧
在这里插入图片描述
其中ft-r是使用特征提取器得到的特征图,ft-r→t是t-r时刻warp到t时刻的特征。W是使用双线性函数实现的warp操作函数。它把邻近帧t-r位置为p+▲p映射到当前帧的p位置上:
在这里插入图片描述

其中G(·)是双线性插值核:在这里插入图片描述

得到邻近帧的校准特征后,把这些特征平均为更新参考特征所需的低级聚合

在这里插入图片描述

fpixel是t-r时刻到t+r时刻的邻近帧生成的特征。

自此,邻近帧的特征被时空校准,所以可以为参考帧提供更加丰富的信息,缓解了上面提到的视频检测中出现的难题。

②instance-level calibration 实例层面的校准

像素层面的特征校准针对柔性运动建模具有灵活性,但需要精准的像素对应关系,但低等级校准当物体被遮挡时并不准确,所以使用实例层面的校准来加强物体被折叠时检测的鲁棒性。

实例层面的校准来自R-FCN的分数图,R-FCN使用特定的卷积层生成位置敏感分数图st,为了聚合第i个proposal的分数,需要获得st-r,st+r和proposal的movement。st-r,st+r可以通过使用R-FCN处理ft-r和ft+r得到,困难的是得到proposal的movement。

把flow估计和参考帧的proposal作为输入生成参考帧及其邻近帧中每个proposal的movement。尽管使用FlowNet算法得到的每个像素的预测结果因为遮挡的原因并不准确,但其足以描述运动的趋势。把这个运动趋势作为输入,输出整个对象的movement。

  1. 首先使用RoI池化操作生成第i个proposal在(xit,yit,hit,wit)位置的特征mit-r
    在这里插入图片描述

    其中RoI池化是使用最大池化把特征转化到一个拥有固定空间范围的小型特征图内。

  2. 然后使用回归网络R(·),通过mit-r估计帧t-r和帧t的第i个proposal的movement:
    在这里插入图片描述 左侧的为相关的movement,且R(·)在全连接层实现。

    值得注意的是,只有正proposal才能在连续帧内学习到回归movement。

  3. 一旦获得了相关的movement,则可进行特征的校准来增强当前帧的特征。帧It-r的proposal为:
    在这里插入图片描述

    基于估计的邻近帧proposal的位置,对第i个proposal的特征聚合具体计算为:
    在这里插入图片描述其中sj是邻近帧的分数图, Ψ \Psi Ψ是位置敏感池化层,siinsta是第i个proposal的实例层面校准的特征。

③motion pattern reasoning and overall learning object 运动轨迹推理和整体学习对象

把像素层面和实例层面的校准进行结合的关键是检测柔性运动轨迹(边框的长宽比变化的非常迅速时很可能是柔性运动)。

为了得到更稳定的估计,对短片段使用平均操作以生成最终对运动轨迹的描述:

在这里插入图片描述其中 δ \delta δ(xit / yit)为中心差异,表示当前长宽比的变化率;pinonri是针对第i个proposal的运动轨迹描述器。

使用proposal中的可视化特征来预测被遮挡的概率:

在这里插入图片描述

使用可学习的soft权重来合并像素层面和实例层面的校准方法:
在这里插入图片描述 α \alpha α(·)是映射函数,控制权重的值。

整体学习对象函数为(包括像素层面的校准、实例层面的校准、运动轨迹推断、边框分类和回归,是一个端到端的方法):
在这里插入图片描述

其中cigt是ground truth的类别标签,pi代表预测类别的softmax分数,bi是基于sicom和piocclu回归的边框。 Δ \Delta Δi为被遮挡的概率及相关的movement。1{cigt > 0}表示只需要对前景proposal进行回归,Ntr指出只有正proposal才会学习回归movement目标。Lcls是交叉熵损失(cross-entropy loss),Lreg和Ltr使用L1损失进行定义。

相关movement的回归分析

Object detection in videos with tubelet proposal networks中为了生成tubelet而对movement进行了回归——利用proposal中同一位置被池化的多帧可视化特征,对目标的movement进行回归。

但是上述方法的特征没有利用运动信息,所以难以进行训练。

FMAN使用的实例层面的校准方法把流估计作为输入来预测movement,可以同时对所有proposal进行回归且无需额外的处理。

除此之外,还对FlowNet进行调整,使得其可以对像素层面的校准和实例层面的校准同时进行建模,带来了两个优势:1.特征的分享节省了时间开销;2.实例层面的运动回归提供了额外的运动信息,并改进了流估计。

猜你喜欢

转载自blog.csdn.net/weixin_41963310/article/details/112139136