这篇文章主要使用了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) 需要满足以下条件
- 若 δp < (1,1) , W(p + δp) = (1-δx) * (1-δy)
- 否则为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
- 使用6帧的历史信息
- 使用5个尺度的尺度搜索以及尺度缩放比例为1.025
- 使用Gaussian Label
- 使用PNR指标和响应图(reponse map)进行选择性更新模型(稀疏更新)
稀疏更新策略
PNR (peak-versus-noise ratio)定义见下图
其中R是跟踪模型输出的reponse map
当这两个指标超过阈值时更新模型参数
其中阈值定义见下图