近年来目标跟踪方法的发展(图片来源:蛮木/benchmark_results,大图可点击阅读原文查看)
在这棵大树上,MOSSE成为了CF(相关滤波)目标跟踪算法的鼻祖。继MOSSE之后,基于相关滤波思想的各种目标跟踪方法蓬勃发展,其目标跟踪算法的基本框架如下图所示。
基于相关滤波的目标跟踪基本框架(图片来自网络)
虽然总体框架是一样的,但是当时的MOSSE似乎已经落后于层出不穷的卷积神经网络——你能想象MOSSE甚至没有使用手动特征,而是直接使用像素灰度值进行运算吗?目前相关滤波跟踪算法一般需要使用CN(Color Names)、hog(矿石密集毕业生直方图)等人工特征和CNN提取的特征来学习滤波。
然后,让我们简单回顾一下一些源自MOSSE的与滤波器跟踪相关的经典著作:
特殊不锈钢
KCF[2](kernel ized Correlation Filter,TPAMI 15,F. Henriques等)利用循环移位得到的循环矩阵来收集正负样本,并利用循环矩阵可以在傅里叶空之间对角化的性质,将矩阵运算转化为元素的点乘,从而降低了计算复杂度,使算法满足实时性要求。同时,KCF使用多通道HOG特征代替单通道灰度特征,在多通道非线性特征空之间扩展特征,从而达到更高的鲁棒性。KCF的优化模式是带正则项的岭回归:
圆形矩阵(图像来源:[2])
成本核算
DSST [3](判别尺度空间追踪,BMVC 14,M. Danelljan等)更注重物体的尺度估计,将目标的中心平移和目标的尺度变化视为两个独立的问题。除了训练具有HOG特征的平移相关滤波器外,MOSSE还用于训练另一个尺度相关滤波器来预测目标的尺度变化。DSST大大提高了跟踪精度和成功率,但速度比KCF慢。
SRDCF &。DeepSRDCF
SRDCF [4](空间正则化判别相关滤波器,ICCV 15,M. Danelljan等)在KCF优化目标的基础上增加了空域正则化,增强了模型的判别能力,优化目标为:
为了和KCF比较,记数法和原来的SRDCF不一样。在公式中,意义不同于W,它是应用于W的空之间的正则化权重..即某些位置(主要是边界)的滤波系数会受到惩罚。
普通DCF(左)和SRDCF(右)对比(图片来源:[4])
在用深度CNN特征代替CN/HOG特征后,Danelljan做了大量的实验,发现使用CNN浅层特征明显优于HOG的那些手工特征。于是,我改变了自己的ICCV15 SRDCF模型,发表了一篇ICCV15 Workshop……也就是DeepSRDCF[5]。
CNN不同类型的特征和不同层次的效果对比(来源:[5])
C-COT
C-cot [6](连续卷积算子跟踪器,ECCV16,M. Danelljan等)采用隐式插值方法将模型的学习投影到空之间的连续域,并在空之间的连续域上提出了卷积算子。C-COT高效集成了多分辨率的深度特征,大大提高了模型在各种数据集上的性能。
融合后连续空之间的C-COT特征图、卷积核、各层置信度图和输出置信度图(图像来源:[6])
经济合作组织
ECO[7](有效卷积算子,CVPR17,M. Danelljan等多大?)是对C-COT的进一步改进。首先,ECO减少了C-COT的参数,简化了特征提取,提高了效率,防止了过拟合。其次,利用高斯混合模型生成不同的样本组合,简化了训练集,增加了多样性;此外,提出了一种有效的模型更新策略,不仅提高了速度,而且提高了鲁棒性。
C-COT学习后卷积核和ECO学习后卷积核(图片来源:[7])
现状——双网欣欣向荣
在目标跟踪领域,有一篇文章叫做《用于目标跟踪的全对流暹罗网络》[8],即暹罗FC(或暹罗fc)-全卷积孪生网络(L. Bertinetto等人)。虽然SiamFC在目标跟踪领域并不是第一个使用双网络的(据我所知,第一个使用双网络解决目标跟踪问题的是SINT[9](Siam Instance Search for Tracking,16,R. Tao等人),但可以说它开创了端到端的深度学习相关滤波方法,拉开了深度学习方法逐渐超越相关滤波方法的序幕。
说了这么多,这到底是什么“全量双网”?请看下图:
暹罗足球俱乐部(图片来源:[8])
在SiamRPN之后,作者提出了一个改进的版本——Dasiamrpn[11](18,Z. Zhu等),增强了训练数据,提高了模型对同类物体干扰的判别能力(一般的模型往往侧重于前景和背景的判别,对相似物体的判别较差)。此外,DaSiamRPN增加了增量学习的离散或感知模块,在运行时对模型的参数进行采样和更新。从而模型可以更好地迁移到当前视频领域。
在VOT的实验中,DaSiamRPN的表现优于ECO,并且还能以160FPS以上的速度运行。深度学习单目标跟踪法可以说是“蒸蒸日上”。
困难——卷积有很多困难
2018年,DaSiamRPN在ECCV出版。这时候CNN的各种模式的深度已经很常见了,深度有几十到几百层——不过DaSiamRPN还是用的AlexNet,只有五层没有填充。有没有可能尝试用深度残网代替网络主干来进一步提高跟踪性能(然后一篇论文)?
我真的尽力了...
不知道读者有没有关注过SiamFC和SiamRPN中每个要素图的大小?在SiamFC中,原始大小为127x127的z的特征图在经过5层AlexNet后已经小到6x6,因为没有填充,而且已经被汇集了几次。以此速度,添加一个汇集层和一个3×3卷积层,特征图将变为1×1。显然,为了让网络更深,填充是必然的。
有了填充,网络确实可以变得很深(比如我直接上了YOLOv3的DarkNet-53,甚至还加了一个特征金字塔),但是新的风暴又出现了——CNN的平移不变性变得极差,目标定位经常出现明显偏差,模型辨别目标的能力不如原来的SiamRPN。对实现这一目标充满信心的作者准备退学...
幸运的是,此时笔者无意中看到了CVPR19论文分享会的一个在线直播(这个直播可以在AI研究会CVPR交流群查看:https://AI . yanxishe . com/page/meeting/44),发现之前的学术带头人也在研究如何在目标跟踪中使用更深层次的CNN。接下来的两部作品以不同的方式论述了深度剩余网络在目标跟踪中的困难。
程序
CIR (SiamDW)根据SiamDW[12]的作者,深度卷积神经网络的感受野太大,降低了特征的区分度和定位的准确性。此外,多层填充使得双网络的学习有所偏移。作者系统地研究和分析了网络主干的各种特性(填充、步幅、感受野大小等)。),并得出以下结论:1) Twin网络跟踪器往往步幅较小;2)感受野的大小要看目标模板图像Z的大小,一般60%到80%最好;3)步幅、感受野大小和输出反应图大小相互依赖,应该一起考虑;4)全卷积的孪生网络应尽可能消除X和Z之间的知觉不一致性。
鉴于上述结论,作者提出用CIR(裁剪-内裁剪)模块来代替ResNet中的基本模块。基本方法是在添加下图中的每个块后进行裁剪操作,以移除受填充影响的边缘部分。以CIResNet-22为骨干的改进后的SiamFC和SiamRPN,性能有了很大的提升,但是这种方式似乎还是不能让网络变深?
各种CIR区块(图像来源:[12])
SiamRPN++SiamRPN++[13]是对SiamRPN作者的改进。主要改进如下:1)使用了ResNet-50主干的微调版,大大优化了特征提取;2)利用RPN对ResNet-50在3、4、5阶段的特征进行帧回归和目标定位,并利用加权融合的方法将三者的结果结合起来;3)使用深度方向的互相关操作来减少参数的数量并加速RPN的操作。4)最重要的是,提出了一种空间感知采样策略,突破了CNN对目标跟踪的严格平移不变性限制。
据笔者分析,只有没有填充的网络才具有严格的平移不变性,而加深CNN也无法避免填充的出现。然而,通过向训练样本添加服从均匀分布的随机翻译,可以在一定程度上打破这一严格的翻译不变性限制。从模型的预测结果来看,如果训练数据在一定范围内服从均匀分布,那么跟踪器预测的结果在理想情况下应该更接近均匀分布。作者通过定量实验发现,加入像素范围为32的随机平移后,最终目标位置热图更接近均匀分布,表明预测结果更接近实际测试目标的分布。
SiamRPN++(来源:[13])
添加了上述改进的SiamRPN++,在OTB2015、VOT2018、UAV123、LaSOT、TrackingNet成为第一,基于深度学习的方法最终在跟踪精度上领先。
PS:从过去几年的VOT论文数量来看,深度学习法确实领先了一步...
PPS:在上述方法之外,基于深度学习的目标跟踪还有很多值得一提的文章,如MDNet[14]、TCNN[15]、SANet[16]、CREST[17]、VITAL[18]等。,不能一一介绍。
PPPS:以上相关滤波方法大多包含相当复杂的数学推导,但本文不涉及太多,因为本人能力有限,篇幅不宜过长。对其推导感兴趣的同学请参考原文。
多目标跟踪
问题定义
与单目标跟踪相比,多目标跟踪的研究进展要慢得多,可用的数据集不够丰富,可供参考的开源代码也很少。由于多目标跟踪相对更难实现,是一个更具工程性的问题,该问题中深度学习的潜力还没有得到很好的挖掘。
一般来说,“视觉目标跟踪”或“VOT”是指单目标跟踪。虽然看起来SOT(单目标跟踪)和MOT(多目标跟踪)只是目标数量上的差异,但它们的一般方法其实是有很大区别的。从研究对象来看,单目标跟踪算法一般不受限制,而多目标跟踪一般只针对特定类别的对象。在时间上,单目标跟踪更侧重于短时图像序列,而多目标跟踪一般处理长视频,涉及各种目标的出现、遮挡和离开。从实现的角度来看,单目标跟踪更注重如何重新定位目标,而常见的多目标跟踪方法往往更注重如何根据检测到的目标进行匹配。
根据初始化方式,常见的多目标跟踪算法一般可以分为基于检测的跟踪和无检测跟踪。DBT要求目标检测器先检测每帧图像中的目标,而DFT要求知道每个目标的第一个出现位置,然后分别跟踪每个目标(这可以看作是同一视频中的多个单目标跟踪)。显然,前者的设定更接近实际应用场景,也是学术研究的主流。
根据初始化方法分类。Up:基于检测的跟踪;底部:无检测跟踪(来源:[29])
根据处理方式,多目标跟踪算法可分为在线跟踪和离线跟踪。在线跟踪需要处理每一帧时,只能利用当前帧和前一帧中的信息来确定当前帧的跟踪结果,不能根据当前帧的信息修改前一帧的跟踪结果。离线跟踪允许通过使用后续帧的信息来获得全局最优解。显然,离线跟踪的设置并不适合实际应用场景,但是“批量”形式的离线跟踪(一次获取几个帧,并在这些帧中寻找全局最优)也是可行的,但只会导致一点点延迟。
按处理方式分类。Up:在线跟踪;以下:离线跟踪(图片来源:[29])
典型方法
以下是多目标跟踪领域的一些基本但典型的工作。
SORT & amp深度排序
sort[19](Simple Online and Real Time Tracking,ICIP 16,a .比雷等)是主流的逐检测跟踪(Tracking-by-Detection)框架(Detection-code-matching-update)的雏形,后续很多作品都有类似的框架。SORT有四个基本组成部分:目标检测器、状态预测、数据关联和轨迹管理——这些也是遵循按检测跟踪框架的许多多目标跟踪算法的基本组成部分。
SORT使用VGG16主干的fast R-CNN作为目标检测器。至于目标的状态,SORT只是简单的利用中心坐标、面积、长宽比以及它们的变化率来对目标进行建模(下面的公式),并不使用任何外观信息。SORT利用卡尔曼滤波器主动预测目标后面的状态,并将预测结果与实际检测到的目标帧进行匹配。将跟踪和检测的关系视为二分图,二分图每条边的权重由其两个顶点(分别为一个跟踪和一个检测)的IOU来定义。SORT使用匈牙利算法在这个二分图中寻找最佳匹配,并设置最小IOU阈值进行匹配,以减少错误匹配的次数。
在轨道管理上,SORT将匹配失败的轨道预留帧,打开一个新的轨道进行匹配失败的检测,并设置其初始状态。
Deepsort [20](带有深度关联度量的简单在线和实时跟踪,ICIP 17,N. Wojke等)是sort的作者基于SORT的改进版本,其最大贡献在于使用深度CNN提取目标的特征作为匹配标准。DeepSORT使用马氏距离作为运动特征的相似性标准,余弦距离作为外观特征编码的相似性标准,通过加权平均得到两者的整体相似性。此外,DeepSORT定义了一种级联匹配方法,使得近年来活动度高的曲目得到优先匹配。
虽然DeepSORT已经是2017年的算法了,但是使用公共检测的MOT16列表第一名好像还是DeepSORT的副本版本…
欠条追踪器& amp欠条跟踪器
Iou tracker [21]) (avss17,e. bochinski等)的基本思想是,如果帧率足够高,检测效果足够好,则前后帧中各目标帧之间的IoU(Intersection Over Union)可以作为关联的有力依据。在这种设置下,IOU Tracker不考虑外观信息,不预测运动轨迹,不使用复杂的匹配算法,直接使用贪婪策略匹配两帧的所有帧。具体来说,在处理每一帧时,对于每个被跟踪的目标,取检测到的帧与其先前位置之间具有最大IOU的项目。如果IOU大于阈值,则认为两者匹配,否则匹配失败。如果一个小轨迹匹配失败,则认为目标离开(是的,甚至没有考虑到探测器不小心探测失败的可能性),根据其“存活”时间和置信度决定是否加入“完成轨迹”。如果有一个检测框与轨迹不匹配,它将被视为一个新目标,并为其创建一个新的轨迹。
IOU跟踪器(图像来源:[21])
但是!不可能把所有希望都寄托在目标探测器上。因此,作者在一年后引入了v-iou tracker[22](avss 18,e. bochinski等人)。一方面,当一个跟踪器不能匹配相应的检测帧时,不再简单地认为目标已经离开了视野,而是此时启动单个目标跟踪器,试图继续跟踪目标,直到ttl(生存时间)时间之后。另一方面,当一个新的跟踪器被创建时,一个单一的目标跟踪器开始试图在先前的ttl帧中找到目标。如果新的轨迹和已完成的轨迹可以通过IOU匹配,那么它们将被合并和处理。(见下图红色箭头,注意其方向)
V-IOU跟踪器(图像来源:[22])
加上单目标跟踪模块,设计简单的V-IOU Tracker也能在MOT Challenge排行榜上取得不错的成绩。
RNN交通部
作为通过深度学习解决MOT问题的尝试,安东·米兰等人提出了利用RNN-MOT-RNN [23]进行目标状态预测和数据关联的方法(MOT利用RNN,AAAI 2017,a .米兰等)。这也是第一篇尝试端到端完成在线多目标跟踪的文章。
目标状态预测是一个连续的空问题,而数据关联是一个离散的空问题。如何把这两个问题放到神经网络中,真的是让人头疼。特别是数据关联有很多限制,比如需要满足一对多输出结果的需要。作者认为,LSTM的非线性变化及其强大的记忆能力使学习满足了这些限制。
不幸的是,虽然基于RNN的方法比大多数类似的方法快得多,但它的跟踪效果与先进的方法相比相形见绌。MOT-RNN可以进一步改进的地方有很多,比如对重要目标的外观进行建模,以及如何在可优化的部分添加检测器。
左:RNN;用于目标状态预测;右:LSTM数据协会(匹配)(图片来源:[23])
在后续的工作中,陆续出现了一些尝试利用神经网络(不包括CNN进行目标检测)解决多目标跟踪问题的方法,如JDT(我简称盲起步)[24]、DMAN[25]、DeepMOT[26]、TBA[27]、TAMA[28]等。虽然性能与基于传统算法的方法有很大差距,但其方法的创新值得鼓励和学习。
八卦:其实多目标跟踪还有一个更复杂的问题——MTMCT(多目标多摄像头跟踪)[30]。今年4月,作者仍在参加杜克姆凯特CVPR挑战赛。遗憾的是,由于一些不可控因素,本次比赛的测试集无法发布,只能暂停比赛。不仅如此,发布的DukeMTMC训练集也下线了,甚至[30]的作者Ergys Ristani的DeepCC代码也在Github上被删除了。刚刚从单目标跟踪研究失败的阴影中走出来,甚至已经开始走DukeMTMC训练模式的作者有了收拾东西退学(捂脸)的想法...即使将Dukemtmc拆分为8个单相机多目标跟踪的数据集,也是一个相当高质量的大规模数据集。如果像这样的数据集更多,数据量加成的多目标跟踪研究会是一个怎样的场景?
相关资源
文学
VOT文献整理与模型效果排行 https://github.com/foolwood/benchmark_resultsMOT文献整理 https://github.com/SpyderXu/multi-object-tracking-paper-list项目商汤的VOT开源项目——PySOT https://github.com/STVIR/pysot数据集与排行单目标LaSOT https://cis.temple.edu/lasot/TrackingNet https://tracking-net.org/OTB Dataset http://cvlab.hanyang.ac.kr/tracker_benchmark/datasets.htmlUAV123 https://ivul.kaust.edu.sa/Pages/Dataset-UAV123.aspxVOT Challenge http://votchallenge.net多目标PathTrack http://people.ee.ethz.ch/~daid/pathtrack/ViDrone http://aiskyeye.com/views/indexDukeMTMC(已关闭) http://vision.cs.duke.edu/DukeMTMC/UA-DETRAC http://detrac-db.rit.albany.edu/MOT Challenge https://motchallenge.net专栏深度学习和目标跟踪 https://zhuanlan.zhihu.com/DCF-tracking带你入门多目标跟踪 https://zhuanlan.zhihu.com/c_1102212337087401984参考
[1]博尔姆,D. S .,贝弗里奇,J. R .,德雷珀,B. A .,& amp吕永明(2010年6月)。使用自适应相关滤波器的视觉目标跟踪。在2010年IEEE计算机学会计算机视觉和模式识别会议上(第2544-2550页)。IEEE。
[2]亨利克斯,杰福,卡塞罗,罗,马丁斯,p .,& amp巴蒂斯塔,J. (2014年)。使用内核化相关滤波器的高速跟踪。模式分析和机器智能,37(3),583-596。
[3] Danelljan,Martin,等,“鲁棒视觉跟踪的精确尺度估计”英国机器视觉会议,诺丁汉,2014年9月1-5日。BMVA出版社,2014。
[4]丹埃尔扬,m .,哈格,g .,沙赫巴兹汗,f .,和;费尔斯堡,M. (2015年)。用于视觉跟踪的学习空间正则化相关滤波器。在IEEE计算机视觉国际会议记录中(第4310-4318页)。
基于相关滤波的视觉跟踪的卷积特征IEEE国际计算机视觉研讨会会议录。2015.
[6] Danelljan,Martin,等,“超越相关滤波器:学习用于视觉跟踪的连续卷积算子。”欧洲计算机视觉会议。斯普林格,湛,2016。
[7]丹埃尔扬,马丁,等,“生态:跟踪的有效卷积算子。”IEEE计算机视觉和模式识别会议录。2017.
[8]贝尔蒂内托,l .,瓦尔马德雷,j .,亨利克斯,J. F .,韦达迪,a .,& amp托,惠普(2016年10月)。用于目标跟踪的全卷积连体网络。在欧洲计算机视觉会议上(第850-865页)。斯普林格,湛。
[9]陶,冉,埃夫斯特拉奥斯·加维斯,阿诺德·斯穆尔得斯。"暹罗实例搜索跟踪." alt="目标跟踪 一文带你了解视觉目标跟踪">