STSN:Object Detection in Video with Spatiotemporal Sampling Networks

STSN:Object Detection in Video with Spatiotemporal Sampling Networks

STSN使用可变形卷积对视频进行时空采样,把这些信息用于目标检测,用以提高检测精度。和FGFA相比,STSN没有用到光流数据训练预测运动的FlowNet。

主要贡献/解决的主要问题:针对视频中有些视频帧由于抖动、镜头不聚焦,部分遮挡、姿态变化过大等问题,此时对这些难以检测的图像进行深度特征提取会出现检测失败。
原因是在这些帧中,深度特征由于这些挑战导致特征不明显,从而导致预测结果置信度很低。

达到更高的精度需要满足两个条件:
1)强有力的特征,网络结构使用最好的backbone,文中用的Res101
2)从支持的帧中提取有用目标级别特征的能力

先介绍一下可变形卷积:

首先是一般的2D卷积公式,P0是卷积结果的座标,Pn是根据卷积核大小确定的(3*3的卷积,n就有9个,从1到9)

一般卷积公式

接下来是可变形卷积公式:
和一般的2D卷积不同的是在输入x的地方增加了一个偏移量△Pn,偏移量也是训练得到的,大小和特征图的大小相同
可变形卷积

一张图了解一下可变形卷积:输入特征图中绿色部分为一般2D卷积的区域,而可变形卷积则会在输入的位置增加一个偏移量△Pn,结果就从绿色的部分变成蓝色的方框了(本人觉得也可以理解为卷积核的相对变形)
可变形卷积

算法大致流程

首先对视频中的所有帧提取特征,接着,时空采样模块从得到的所有特征图中采样,然后根据权重加到一起,作为当前帧的深度特征,然后再做检测。
STSN流程
Fig. 2: Our spatiotemporal sampling mechanism, which we use for video object
detection. Given the task of detecting objects in a particular video frame (i.e.,
a reference frame), our goal is to incorporate information from a nearby frame
of the same video (i.e., a supporting frame). First, we extract features from
both frames via a backbone convolutional network (CNN). Next, we concatenate
the features from the reference and supporting frames, and feed them through
multiple deformable convolutional layers. The last of such layers produces offsets
that are used to sample informative features from the supporting frame. Our
spatiotemporal sampling scheme allows us to produce accurate detections even
if objects in the reference frame appear blurry or occluded

算法流程:

  1. 首先,当前帧t和支持帧t+k经过backbone,得到卷积特征cwh,
  2. 然后把两个tensor按照通道的维度拼接起来2cw*h,接着做可变形卷积,在此过程中得到offset(第一个),
  3. 卷积的结果作为第二个offset(大小是w*h),用于和支持帧特征做可变形卷积,
  4. 卷积结果作为当前帧(比较模糊或者抖动导致图像质量不好)用于目标检测的特征。

检测结果

在这里插入图片描述

整体来说算法的思想比较简单,和FGFA(Flow-Guided Feature Aggregation for Video Object Detection)相比,一是没有用到光流法预测流场和光流网络(FlowNet),感觉速度上会比较快,二是训练时使用的相关帧也比FGFA少(12VS51),最后的结果也比FGFA好。
不过还没有代码放出来,希望尽快放出代码~

在这里插入图片描述

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