7.3 GOTURN

7.3 GOTURN

学习目标

  • 目标

    • 说明GOTURN的算法结构

    • 掌握GOTURN的训练过程

  • 应用

7.3.1 GOTURN介绍

7.3.1.1 背景

传统通用目标跟踪器(相对于特定目标跟踪器)完全是通过在线抓取来训练,而没有离线训练。这种跟踪器性能不好的原因是获取的信息太少,仅仅在线训练不能利用大量视频的优势。而这些视频有可能帮助跟踪器处理旋转,视点改变,光线改变等问题,进而提高跟踪性能。而机器学习已经能够从大量的离线数据中学习。

  • 在线更新:

    • 优点:随时适应目标的变化,和背景信息的变化,对特征的要求较低,低层特征计算速度快分辨率高;

    • 缺点:模型更新会累计误差,遮挡或失败时会学到背景,丢失后再也找不回来。

  • 在线不更新:

    • 优点:不更新速度更快,跟踪目标永远不会被污染,long-term特性非常优秀;

    • 缺点:对特征的要求非常高,必须是表达能力足够强足够鲁棒的特征,通常高层特征计算速度慢、分辨率低。

论文提出了一种基于深度学习的目标跟踪算法,有以下几个特点:

  • 100fps,比之前大多数采用深度学习的跟踪算法都快。

  • 基于线下训练,不需要在线的学习。

  • 测试目标可以不同于线下训练的数据集,当然,如果训练集里包含同样的类别,跟踪精度会有一定程度的提高。

7.3.1.2 结构

网络模型取自CaffeNet的前5个卷积层,3个全连接层。每个全连接层有4096个节点,输出层4个节点,代表输出包围盒。网络必须获得视频中被跟踪对象的信息。可以通过剪裁和调整前一帧跟踪到的目标来获得跟踪对象,剪裁中心的目标就是跟踪对象。剪裁的crop会在目标周围留有余地,会让网络学习到一些目标背景和环境信息。

7.3 GOTURN

过程:将上一帧的目标和当前帧的搜索区域同时经过CNN的卷积层(Conv Layers),然后将卷积层的输出通过全连接层(Fully-Connected Layers),用于回归(regression)当前帧目标的位置。整个框架可以分为两个部分:

  • 1、卷积层,用于提取目标区域和搜索区域的特征

  • 2、全连接层,被当成一个回归算法,用于比较目标特征和搜索区域特征,输出新的目标位置

7.3.1.3 算法细节

  • 训练与测试分离

    • 对网络的训练是offline的,在跟踪的时候没有online update的过程。算法足够快,把耗时的计算过程都离线做好,跟踪过程只有一个计算前馈网络的过程。

7.3 GOTURN

  • 算法输入输出形式

    • 输入:在第t-1帧中,假设目标所在位置为(cx,cy),其大小为(w,h),则提取一块大小为(2w,2h)的图像块输入到CNN中。

      • 剪裁后的图像的宽度和高度分别为k1w和k1h,这里的参数k1的作用是用于联系物体的背景(context),当k1值越大时,则截取的图像范围也越大,相应的,包含的背景信息也就越多。文中默认的值为k1=2

      • 在第t帧中,也以(cx,cy)为中心,提取大小为(2w,2h)的图像块,输入到CNN中。

    • 输出:输出目标在第t帧中左上角和右下角的坐标。

7.3.1.4 网络的训练过程

7.3 GOTURN

7.3.1.5 实验

data augmentation对算法的影响

7.3 GOTURN

论文作者做了非常多且非常细致、严谨的实验,

  • batch size取50,augmented data的个数可以去取0~49,至少保留一个真实样本(因为augmented data都是从这个真实样本变换得来的)。

  • 观察上图可发现,性能最好的是batch中有49个augmented data只有一个real data,但是实际上当augmented data的数量高于20的时候,性能基本保持不变了。

  • 论文使用的batch size是50,作者对每个图像进行了10倍的data augmentation。

多个因素对整体效果的影响

还做了损失函数、motion smoothness (data augmentation)、image data对整体性能的影响,最后发现使用L1 loss + motion smothness + image training + video training是效果最好的。

最终结果

  • 训练集:ALOV++ 从314个视频序列中去除7个。实际用307个。总共252个目标物体,共计13082张图,平均每个物体52帧。

  • 验证集 :56个物体 2795张图。

训练集和验证集无重复:训练集中也用了图片来训练。图片来源自ImageNet 2014。测试集: VOT2014 上的25个序列,没有使用VOT2015的原因是VOT2015的数据集中有大量视频与测试集重复。评价参数:精确度(A),鲁棒性(R),精确度误差(1-A),鲁棒性误差(1-R),总误差(1-(A+R)/2)。 实验结果:

7.3 GOTURN

7.3.1.6 论文总结

  • 1、当前帧的跟踪预测参考前一帧的跟踪结果。

  • 2、采用视频和图片训练的方式有较强的泛化能力。可以跟踪训练集中没有出现的物体

  • 3、crop的方式采用了拉普拉斯分布而不是高斯分布。让跟踪器能够更适应微小运动,进而实现跟踪的连续性。

  • 4、文中对比的算法都是经典算法,没有与目前基于深度学习的跟踪算法的比较。

  • 5、不需要在线微调网络参数,只需要一次前向传播得到目标位置,所以很快,如题跟踪可达100FPS.

7.3.2 小结

  • Goturn结构特点

  • Goturn的训练过程