文章目录
LTMU 2020
- 长期目标跟踪相对于短期目标跟踪 和实际应用更加贴近
- 大多数长期跟踪器使用的是离线训练的Siamese结构,这样不易受到遮挡干扰等噪声的影响
- 短期跟踪器是可以有在线更新的过程
- straightforwardly 方式地直接将短期跟踪器用于长期目标跟踪问题,会因为长期的不确定和噪声观测导致很难也很冒险(对于一个工程来说)
- LTMU提出了Meta-Updater用于解决重要但是未解决的问题:当前帧的跟踪结果(目标的外貌和尺寸)能否用于更新跟踪器?
- Meta-Updater:几何(目标尺寸)、判别(跟踪的响应信息)和外观(目标的视觉外貌)以及时序信息(LSTM)
- 时序信息:可以存储变化的信息,比如位置信息,一阶变化是速度,二阶变化是加速度
引入
- 相对于短时跟踪,长时跟踪器有两个最大的挑战性:
- 1 短时一般 是秒级 sec,长时一般 是分级 min
- 2 长时跟踪可能需要频繁的应对 目标的消失和重新出现 (即需要强大的重新检测能力)
- 长时跟踪数据集有:
- VOT2018LT, VOT2019LT, OxUvALT, TLP, LaSOT
- 深度学习基础的短时跟踪,往往都从 one-shot learning和online learning两个角度
- 在线学习如 ATOM / ECO 等会更加精确 训练数据也比较少
- one-shot学习如 SiamFC / SiamRPN 等速度会更加快
- 常见的长时跟踪器的设计,是利用在线更新的短期跟踪构建 Local tracking(对应的一个算法部件是 Global re-detection)
- MBMD:VOT2018LT Winner
《Learning regression and verification networks for long-term visual tracking》
- 离线训练的网络用于回归目标的矩形框 in a local region
- 在线学习的verifier在局部跟踪和全局重检测之间切换
- SPLT
<Skimming-Perusal Tracking: A framework for real-time and robust long-term tracking>
- MBMD + local跟踪采用SiamRPN
- SiamFC+R
<Long-term tracking in the wild: a benchmark. >
- OxUvALT最好的方法
- Original SiamFC + Simple re-detection scheme
- MBMD:VOT2018LT Winner
- 在线更新捕获了目标和背景的外观变化,但不可避免地会用噪声样本污染模型
- 由于长期不确定的观察结果,在线更新的风险被长期跟踪放大了 tracking drifting
- 贡献
- Meta-updater:可以有效的引导在线跟踪器的更新,也可以很好的应用到其他短时跟踪器上
- 设计了一个成熟的框架:SiamRPN-based re-detector + online verifier + online local tracker + meta-updater,可以较安全的结合短期和长期的优点强度
- 在VOT2018LT, VOT2019LT, OxUvALT, TLP and LaSOT等长期跟踪数据集上都做了测试。
相关工作
Long-term Visual Tracking
- 大规模的长期跟踪benchmark在2018年出现
- keypoint-based, proposal-based, detector-based, etc
- 经典的长时跟踪算法有TLD
- local tracker | self-evaluation | global re-detection
Online Update for Visual Tracking
- 比如利用 kernel tracking,增量子空间,在线学习分类器 MIL等都是经典的在线更新的目标跟踪算法
- 但是 更新是双刃剑,需要平衡 dynamic information description 和 unexcepted noise introduction,比如遮挡,当目标消失之后 degrade and drift
- 常见的解决办法有;1 在线收集样本并进行聚类 以消除噪声观测的影响 2 设计一些criteria去评测当前结果的可靠性 去去除不可靠的采样 以及 拒绝不合适不恰当的更新
- 置信度的设计有:MAX,PSR,average peak-to-correlation energy,MAX-PSR
- Meta-updater 在时序上(LSTM)集成了多个cue,外观信息,几何信息,判别结果,用于判断当前帧是否更新(二值输出)
- 长时跟踪中很多 meta-learning-based 方法被提出来,但是大多都是解决 “How to Update”,meta-updater 解决的是 “When to Update”!
- A memory model based on the siamese network for long-term tracking.
- High performance visual tracking with siamese region proposal network.
- Meta-tracker: Fast and robust online adaptation for visual object trackers.
- Re2EMA: Regularized and reinitialized exponential moving average for target model update in object tracking.
- Deep meta learning for real-time target-aware visual tracking.
- GradNet: Gradientguided network for visual object tracking.
Long-term Tracking with Meta-Updater
Framework
- 1 switching:根据confidence score,结合阈值判断是采样重捕获还是局部跟踪
- 2 verifier 是判断当前的patch是不是目标
- 3 当全局检测器和校验器找到了跟丢的目标之后,就会采用reset操作
- 4 跟踪检测完成之后,所有信息都会发送到meta-updater,用于判断跟踪器更新与否
- 5 local tracker:ATOM的分类分支用于定位,使用SiamMask用于尺寸估计 (ATOM的尺寸估计用的IoUNet分支)
- 6 verifier:RTMDNet,Real-time MDNet 2018
用于判断是不是目标,在线学习的verifier在局部跟踪和全局重检测之间切换
Meta-Updater
- Geometric Cue:
b
t
=
[
x
t
,
y
t
,
w
t
,
h
t
]
\mathbf{b}_{t}=\left[x_{t}, y_{t}, w_{t}, h_{t}\right]
bt=[xt,yt,wt,ht]
- 连续帧的一系列包围框包含了关于目标的重要运动信息,如速度、加速度和比例变化
- Discriminative Cue:其实local tracking就是分类任务:把目标和他的surrounding背景区分开,大部分短时跟踪器都会输出一个响应图(MDNet只输出一个值),使用CNN从响应图中挖掘跟踪置信度,R->v: v t R = f R ( R t ; W R ) \mathbf{v}_{t}^{R}=f^{R}\left(\mathbf{R}_{t} ; \mathbf{W}^{R}\right) vtR=fR(Rt;WR)
- Appearance Cue:基于 模板匹配的方法作为目标视觉外观上的线索补充
- s t A = ∥ f A ( I t , W A ) − f A ( I 0 , W A ) ∥ 2 s_{t}^{A}=\left\|f^{A}\left(\mathbf{I}_{t}, \mathbf{W}^{A}\right)-f^{A}\left(\mathbf{I}_{0}, \mathbf{W}^{A}\right)\right\|_{2} stA=∥∥fA(It,WA)−fA(I0,WA)∥∥2
- Sequential Information:
X
t
=
[
x
t
−
t
s
+
1
;
…
;
x
t
−
1
;
x
t
]
∈
R
d
×
t
s
\mathbf{X}_{t}=\left[\mathbf{x}_{t-t_{s}+1} ; \ldots ; \mathbf{x}_{t-1} ; \mathbf{x}_{t}\right] \in \mathbb{R}^{d \times t_{s}}
Xt=[xt−ts+1;…;xt−1;xt]∈Rd×ts
- 时序信息将通过下面的级联LSTM方案进一步挖掘
Cascaded LSTM
- LSTM 知识:几个门,公式和图
- { f t = σ ( W f x t + U f h t − 1 + b f ) i t = σ ( W i x t + U i h t − 1 + b i ) o t = σ ( W o x t + U o h t − 1 + b o ) c t = f t ⊙ c t − 1 + i t ⊙ tanh ( W c x t + U c h t − 1 + b c ) h t = o t ⊙ tanh ( c t ) \left\{\begin{array}{l} \mathbf{f}_{t}=\sigma\left(\mathbf{W}_{f} \mathbf{x}_{t}+\mathbf{U}_{f} \mathbf{h}_{t-1}+\mathbf{b}_{f}\right) \\ \mathbf{i}_{t}=\sigma\left(\mathbf{W}_{i} \mathbf{x}_{t}+\mathbf{U}_{i} \mathbf{h}_{t-1}+\mathbf{b}_{i}\right) \\ \mathbf{o}_{t}=\sigma\left(\mathbf{W}_{o} \mathbf{x}_{t}+\mathbf{U}_{o} \mathbf{h}_{t-1}+\mathbf{b}_{o}\right) \\ \mathbf{c}_{t}=\mathbf{f}_{t} \odot \mathbf{c}_{t-1}+\mathbf{i}_{t} \odot \tanh \left(\mathbf{W}_{c} \mathbf{x}_{t}+\mathbf{U}_{c} \mathbf{h}_{t-1}+\mathbf{b}_{c}\right) \\ \mathbf{h}_{t}=\mathbf{o}_{t} \odot \tanh \left(\mathbf{c}_{t}\right) \end{array}\right. ⎩⎪⎪⎪⎪⎨⎪⎪⎪⎪⎧ft=σ(Wfxt+Ufht−1+bf)it=σ(Wixt+Uiht−1+bi)ot=σ(Woxt+Uoht−1+bo)ct=ft⊙ct−1+it⊙tanh(Wcxt+Ucht−1+bc)ht=ot⊙tanh(ct)
- 级联LSTM框架:
Meta-Update Training
- 采样策略:在数据集中取一小段图片序列的跟踪结果,每个帧都带有各种cue,label采用GT和目标区域的IoU>0.5的设为1,否则为0!
- 这种训练方法会把 Local tracker 和 Meta-Update 深度绑定!In this study, the local tracker and its meta-updater are tightly-coupled. K设为3了,是离线训练的,T是local tracker, MU是Meta-Updater
- PS:对于MDNet这类算法不输出响应图,只输出值的算法,只要不加挖掘响应图的CNN结构就行了!
- 实现细节:略,两个挖掘信息的子网络,带有MLP的LSTM级联结构