【原文:https://zhuanlan.zhihu.com/p/31416521

2017年CVPR和ICCV结果总结

CVPR 2017: 首先看看今年STOA(state of the art, 顶尖方法)的相关论文,下面是CVPR 2017的目标跟踪算法,在OTB-100数据库上的结果,来自ECO的poster http://www.cvl.isy.liu.se/research/objrec/visualtracking/ecotrack/eco_poster.pdf可能MD大神想说,一个能打的都没有!

VOT2017:卷积特征和相关滤波更配哦

除了ECO,还推荐CSR-DCF和CFNet:

ECO: Martin Danelljan, Goutam Bhat, Fahad Shahbaz Khan, Michael Felsberg. "ECO: Efficient Convolution Operators for Tracking." CVPR (2017). [paper] [supp] [project] [github]

CSR-DCF: Alan Lukežič, Tomáš Vojíř, Luka Čehovin, Jiří Matas, Matej Kristan. "Discriminative Correlation Filter with Channel and Spatial Reliability." CVPR (2017). [paper] [supp] [code]

CFNet: Jack Valmadre, Luca Bertinetto, João F. Henriques, Andrea Vedaldi, Philip H. S. Torr. "End-to-end representation learning for Correlation Filter based tracking." CVPR (2017). [paper] [supp] [project] [github]

ICCV 2017: 我仿照上面的表格,整理了ICCV 2017中tracking方向的相关论文结果,注意速度CPU和GPU的区别,对比ECO:哎,还是一个能打的都没有!

VOT2017:卷积特征和相关滤波更配哦

推荐CPU速度比较快的BACF和EAST:

BACF: Hamed Kiani Galoogahi, Ashton Fagg, Simon Lucey. "Learning Background-Aware Correlation Filters for Visual Tracking." ICCV (2017). [paper] [supp] [code] [project]

EAST: Chen Huang, Simon Lucey, Deva Ramanan. "Learning Policies for Adaptive Tracking with Deep Feature Cascades." ICCV (2017 Spotlight). [paper] [supp]

VOT2017的不同点

公开数据库:VOT2017的公开数据集与VOT2016一样是60个序列,区别是将VOT2016的60个难度最低的10个序列替换为10个新的难度更大的序列。或许是为了保证竞赛的难度,这10个序列简直丧心病狂,都是相关滤波最难搞定的平面内和平面外旋转,相似物体干扰也明显更严重,各种challenge组合在一起,足以让很多tracker找不到北,VOT2016的前几名直接在VOT2017测试,EAO掉一大截,嗯,毕竟竞赛是有尊严的,不能太简单。这60个序列叫public dataset,公开测试集,我们简称公测

VOT2017:卷积特征和相关滤波更配哦

保留数据集:做机器学习的基本常识是,数据集一定要划分为训练集training dataset,验证集validation dataset,测试集test dataset,训练集用于训练,验证集用于调参,测试集用于测试性能,最重要的一点,就是绝对不能偷看测试集,这是底线。这点做的最好的就是ILSVRC,举办方帮您准备好training dataset和validation dataset,test dataset只给image,不给label,由举办方公平测试。(就是这么严格还出现了有队伍被禁赛的情况)

目前的跟踪算法,尤其是过去几年的VOT,就一个数据集,训练验证测试全用它,这明显是不合理的。当然,论文会说我们的训练序列是排除了VOT的。。这是鬼话,骗鬼去吧:早期很多团队建立测试序列时,会在相同场景和目标的情况下,录一组序列,这些序列,虽然不完全一样,但相似的背景加相同的目标,用于训练会造成非非非常严重的过拟合。我们最常用的VOT和OTB,都是在前辈们录的这些测试序列里面挑选出来的,也就是说,只要VOT选了这组序列中的一个,那其余的序列也不能用来训练,比如OTB中的Freeman3和Freeman4, Tiger1和Tiger2,虽然的确是完全不同的序列,但相似度太高了:

VOT2017:卷积特征和相关滤波更配哦

VOT2017最大的改进,就是多了这个sequestered dataset,保留(隔离)数据集,我们简称内测。这个数据集也包含60个序列,除了公测数据集新增的10个序列,还挑选了50个类似属性但完全不同的序列,这60个内测序列不公开,除了举办方没有人知道到底是什么,更加公平公正。所以今年也要求所有tracker提交源代码或可执行程序,举办方内测的结果作为最终结果。

另外,今年多了几项规定,除了第三条winner必须公开代码,以防油炸,最重要的是第二条,不能用OTB,VOT,ALOV,NUSPRO作为训练集,也不能用特定类别。很明显这是严打过拟合,当然完全不用担心没有数据库end2end训练,video detection的数据库非常合适,最常用的是ILSVRC的VID,可参考CFNet。

VOT2017:卷积特征和相关滤波更配哦

实时测试:Real-time Experiment,这是今年新引入的一种评估方式,VOT过去用EFO来评价一个跟踪器的执行速度(EFO为跟踪器实际运行时间与测试平台上执行一次规定的滤波运算所需的时间的比值,被认为是与硬件平台无关的一个度量),但是后来发现EFO仍然受到硬件平台性能较大影响,所以今年搞了个实时实验,具体做法在执行VOT标准评估时(baseline,supervised experiment),限定跟踪器的响应时间,如果跟踪器的未能实时地(25fps,40ms每帧)反馈跟踪结果,则toolkit将不再等待,而是沿用上一帧的跟踪结果。当跟踪失败时仍然会重启跟踪器。(以上内容,来自鱼儿游)

或许像EAO综合反映Robustness和Accuracy一样,举办方为了综合比较性能和速度,提出了这么个奇葩的Real-time Experiment,太慢的tracker就会一直错下去,只有25fps以上的tracker才有资格比较performance。但这也有很多不合理的地方,比如Matlab实现和C++实现之间的问题,比如CPU时间和GPU时间的问题,比如100fps和200fps的tracker,速度只要大于25,再快也没有优势,等等。。

VOT历年结果回顾

VOT2017:卷积特征和相关滤波更配哦

VOT2017:卷积特征和相关滤波更配哦

VOT2015是MDNet vs. DeepSRDCF,VOT2016是C-COT vs. TCNN,尤其VOT2016,1,5,9是相关滤波,2,3,4,6,10都是非相关滤波的CNN end2end离线训练,某些在线更新某些不更新,都是MDNet的扩展方法,都是在跟踪数据库上直接训练,这类方法占据了主导地位。

VOT2017算法及结果

今年提交算法共51个,随着影响越来越大,这是历年来唯一一次数量下降了,原因很简单,因为MDNet及其扩展算法集体缺席。

VOT2017:卷积特征和相关滤波更配哦

公测结果

VOT2017:卷积特征和相关滤波更配哦

前十名全是相关滤波+多通道特征,特征主要是卷积特征conv. feature (VGGNet)和hand-craft feature (HOG+CN),总之很简单,都是C-COT或ECO的扩展。也有一些例外,(1)大多特征都用了CNN或CNN+HOG+CN,除了CSR-DCF仅用HOG+CN特征;(2)CNN特征都来自ImageNet上图像分类任务pre-trained的CONVNET,除了CFCF,SiamDCF和SiamFC是在VID数据库上自己训练的网络,end2end训练专用于相关滤波跟踪任务的网络。

公测EAO前五:LSART, CFWCR, CFCF, ECO, Gnet;

公测Accuracy前三:SSKCF, Staple, MCCT;

公测Robustness前三:LSART, CFWCR, ECO & Gnet.

VOT2017:卷积特征和相关滤波更配哦

前面也提到过MDNet及TCNN等非相关滤波、end2end训练跟踪的方法全都没了,我们不能总是以最坏的恶意来揣测别人,不能说这类方法全靠过拟合撑了两年,全靠过拟合水了大量论文,直到今年依然水了很多顶会,但是这是相关滤波的专栏,我不免会有有失公允的评价。我是我,劝您别这样,凡事还是要多往好的方向去想,或许只是提交结果的那天,这类方法的作者们集体拉肚子错过了时间,或许只是拿了两年冠军,没有对手太寂寞,干脆今年不参加了,恩,一定是这样。

公测数据集公开的比较早,而且是完全透明的,只要有足够的计算资源,大家都可能充分调参,得到一个不错的结果,虽然一定程度上能反映算法水平,但内测数据集的结果才是最公平,最可信的。

内测结果

VOT2017:卷积特征和相关滤波更配哦

总体来看,内测是公测前十的10个tracker,相对比较稳定,不过EAO掉了一大截。我们主要关注排名变化:

VOT2017:卷积特征和相关滤波更配哦

CFCF, ECO, Gnet排名相对稳定,从3 4 5到2 3 4;

CSRD-CFM, SiamDCF, MCPF也相对稳定,从 8 9 10到10 9 8;

LSART, CFWCR下降较大,从1 2下降到6 5;

C-COT上升最快,从公测第7,一跃成为内测第1,也是EAO变化最小的算法。

终,由于C-COT的作者是举办方成员,VOT2017的冠军是CFCF。这点也是挺奇葩的,全世界跟踪做的最好的几个组,都是举办方,而举办方都不能拿冠军。。当然这也有好处,举办方知道内测数据集,有可能干坏事,但没有拿冠军的可能,那他们也就没有动机了。

C-COT也太牛逼了,VOT2016和VOT2017都是第一名,虽然都不是冠军。。

实时测试结果

VOT2017:卷积特征和相关滤波更配哦

这个奇葩的realtime experiment,随便看看就行了,总体来看,公测最好的,速度基本都垫底,速度比较快的大多位于公测中等水平。SiamDCF是前十里面速度最快的,速度排11,LSART是前十里面速度最慢的,排倒数第4。另外,CSR-DCF虽然没有用CNN特征,但需要做目标分割和迭代优化,速度并不快,MATLAB加速版CSR-DCFf在速度排第8,C++版本的CSR-DCF++是速度第1,看来C++和MATLAB差距是挺大的,三个版本的CSRDCF,亲生的就是不一样。

虽然实现有C++和MATLAB的差异,虽然测试环境有CPU和GPU的差异,但VOT2017好像并不在意。速度榜前十的都是老朋友了:

CSR-DCF++, SiamFC, ECO-HC, Staple, KFebT, ASMS, SSKCF, CSR-DCFf, UCT, MOSSE_CA.

虽然CSR-DCF++是CPU时间,但依然是那个举办方不能是冠军的限制,实时测试的冠军是GPU上比较快的SiamFC,就是这个去年亮瞎了的东东,今年依旧坚挺,最新版本是CVPR 2017的CFNet。

比赛结果总结及部分方法简析

框架问题

相关滤波DCF:可以看成是像素级的分类器,或一个特征相似度的快速比较框架,这个框架可以兼容任何特征,完成快速比较和目标定位,后续所有工作都表明,只要特征够好,分类器的性能没那么重要,用不用kernel-trick, 用不用SVM都不是关键。

C-COT是解决了边界效应,和不同尺度特征图集成问题,是升级版的DCF框架,这个框架也能兼容任何特征,可以是raw-pixel, HOG, CN, IC, CNN,或他们的任意特征组合,基本VOT2017前几名的所有算法都基于这个框架。

ECO是以速度为出发点的更快的C-COT框架,内测结果来看不一定比C-COT好,但这是一个能让STOA traker落地的框架,毕竟内测第三,性能有保障。

特征问题

卷积特征:跟踪问题最重要还是特征,从DeepSRDCF开始大家就都知道,CNN特征一定比HOG和CN要好。不过CSR-DCF也证明HOG+CN并不差,而且方便优化速度,但其实速度早已不是问题,可能基于VGGNet的速度确实比较慢,但类似SiamDCF的卷积特征,完全可以在CPU上飞起来。

预训练的CNN特征,常用是ImageNet图像分类的预训练网络pre-trained model,大家也都知道VGGNet的特征比GoogLeNet和ResNet都好,比如基于GoogLeNet的GNet并没有比CCOT更好的表现。

跟踪专用的CNN特征,这可以是从头训练的CNN,更适配DCF框架的卷积特征,比如SiamDCF,CFNet,也可以是fine-tune的CONVNET,比如CFCF用fine-tune的VGGNet做特征拿了冠军,虽然还是比C-COT差一点点。

既好又快算法推荐(实用向)

高性能算法推荐:参考内测结果,主要是C-COT,及其加速版ECO,fine-tune特征版CFCF,及GoogLeNet特征版GNet.

C-COT: martin-danelljan/Continuous-ConvOp

ECO: martin-danelljan/ECO

CFCF: egundogdu/CFCF

GPU高速算法推荐:综合内测结果和速度测试结果,推荐SiamFC,及其扩展版本SiamDCF,UCT,还有偏慢的ECO.

SiamFC: bertinetto/siamese-fc

SiamDCF: foolwood/DCFNet (即将公开)

UCT: zhengzhugithub/UCT

CPU高速算法推荐:以速度测试结果为主,参考公测结果,推荐ECO-HC,Staple,ASMS,以及即将开源的速度测试第一名CSR-DCF++.

ECO-HC: martin-danelljan/ECO (内含HC版本)

Staple: bertinetto/staple

ASMS: vojirt/asms

CSR-DCF++: alanlukezic/csr-dcf (即将公开)

VOT2017:卷积特征和相关滤波更配哦

END

相关文章:

  • 2021-09-18
  • 2022-01-01
  • 2021-09-01
  • 2021-06-27
  • 2021-09-19
猜你喜欢
  • 2021-11-26
  • 2021-07-12
  • 2022-03-05
  • 2021-06-05
  • 2022-01-20
  • 2021-12-02
相关资源
相似解决方案