2018CVPR之end2end光流相关滤波

这篇文章主要使用了FlowNet和注意力机制利用了当前帧的上下文信息
里面的trick还是很多的

这里写图片描述

Historical branch

FlowNet

详见我这篇文章
https://qrfaction.github.io/2018/05/14/%E5%85%89%E6%B5%81%E4%BB%8B%E7%BB%8D%E4%B8%8EFlowNet/

Wrap操作

1.光流场的插值使用法

由光流定义可知 It+1(x2,y2) = It(x1+vx,y1+vy)
于是我们得到了一个像素间一一对应的关系
由于 (x1+vx,y1+vy) 可能是小数
所以需要使用双线性插值进行近似计算

2.双线性插值嵌入layer

f(p) = ∑ W(p + δp) * f(p + δp)    p为位置(x,y)

其中 W(p + δp) 需要满足以下条件

  1. 若 δp < (1,1) , W(p + δp) = (1-δx) * (1-δy)
  2. 否则为0
    这样就满足了双线性插值使用最近的四个点以及其权重两个条件

W(p,q) = max(0,1-|px-qx|) * max(0,1-|py-qy|) = max(0,1 - δpx) * max(0,1 - δpy)

3.历史信息封装

将 Ii 封装到 It-1 操作的定义如下
这里写图片描述
δp 是FlowNet输出的坐标偏移
K 是双线性插值权重函数
φi 是第i帧图片经过FeatureNet后的特征图
m是φi的第m个通道

这样即可利用双线性插值将 Ii 的信息融入 It-1 得到 φi→t-1

Spatial-temporal attention

Spatial attention

该注意力计算公式如下
这里写图片描述
使用余弦相似度得出了每个特征图中每个位置p的注意力权重
然后再使用softmax对所有历史帧中的p位置的注意力权重进行规范化

temporal attention

这里写图片描述
该注意力则是利用了类似SEnet中的模块的结构对时序轴进行加权
RASnet中的tracking也有用它

计算φ(x)

定义如下
这里写图片描述
加权求和

CFnet框架

一个将相关滤波end2end实现的结构
使用siamese fc的框架,不过效果并没有比siamese fc好多少
把他当做 siamese fc也完全没问题的,这里就不细讲了

other details

  1. 使用6帧的历史信息
  2. 使用5个尺度的尺度搜索以及尺度缩放比例为1.025
  3. 使用Gaussian Label
  4. 使用PNR指标和响应图(reponse map)进行选择性更新模型(稀疏更新)

稀疏更新策略

PNR (peak-versus-noise ratio)定义见下图
这里写图片描述
其中R是跟踪模型输出的reponse map
当这两个指标超过阈值时更新模型参数
其中阈值定义见下图
这里写图片描述