目标跟踪方法总结

2024-08-31 12:18
文章标签 总结 方法 目标 跟踪

本文主要是介绍目标跟踪方法总结,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1 数据集

1.1 OTB
  • 最经典的benchmark,有2013的OTB50和2015的OTB100
  • OTB包括25%的灰度序列,分辨率相对较低
  • http://cvlab.hanyang.ac.kr/tracker_benchmark/datasets.html
1.2 VOT
  • 视觉跟踪领域国际顶级赛事,自2013年以来每年一届
  • VOT以short-term为主,用第一帧进行初始化,每次跟踪失败时,5帧之后再次初始化。认为跟踪检测应该在一起永不分离,detecter会多次初始化tracker
  • VOT竞赛的数据库是每年更新,还动不动就重新标注,动不动就改变评价指标,对当年算法是不可见且难度很大的,所以结果更可靠
  • http://www.votchallenge.net/challenges.html
  • 所以跟踪算法前沿基本看VOT竞赛就OK了
1.3 UAV123
  • 均是通过无人机拍摄的彩色图像
  • https://ivul.kaust.edu.sa/Pages/Dataset-UAV123.aspx
1.4 VIVID
  • 包含9个序列,均是从高空拍摄的车辆视频图像,包括灰度图像和彩色图像,相对时间都比较长,目标也比较小,遮挡情况比较多
  • http://vision.cse.psu.edu/data/vividEval/datasets/datasets.html
1.5 Temple Color 128
  • Temple Color 128数据集里面包含的全是彩色序列,部分序列也是和OTB重合的,如果算法只适用于彩色序列的话可以在此数据集上跑一下,此数据集也是免费下载。
  • http://www.dabi.temple.edu/~hbling/data/TColor-128/TColor-128.html

2 几大难点

  • 外观变形(deformation)
    在这里插入图片描述
  • 光照变化(illumination variation)
    在这里插入图片描述
  • 快速运动及运动模糊(fast motion & blur)
    在这里插入图片描述
  • 相似背景干扰(background clutter)
    在这里插入图片描述
  • 平面内、外旋转(out-of-plane & in-plane rotation)
    在这里插入图片描述
  • 尺度变化(scale variation)
    在这里插入图片描述
  • 遮挡、出视野(occlusion & out-of-view)
    在这里插入图片描述

3 分类

3.1生成类(generative)模型方法
  • 在当前帧对目标区域建模,下一帧寻找与模型最相似的区域就是预测位置,比较著名的有卡尔曼滤波粒子滤波mean-shift等。
  • 推荐算法ASMS(2014),仅用颜色特征且速度较快,在VOT2015第20名,VOT2016第32名。
    ASMS算法:在经典mean-shift框架下加入了尺度估计,经典颜色直方图特征,加入了两个先验(尺度不剧变+可能偏最大)作为正则项,和反向尺度一致性检查。
  • 例:从当前帧知道了目标区域80%是红色,20%是绿色,然后在下一帧,搜索算法就像无头苍蝇,到处去找最符合这个颜色比例的区域。
3.2 判别类(discriminative)模型方法
  • 这种方法也常被称tracking-by-detection,CV中的经典套路是图像特征+机器学习, 当前帧以目标区域为正样本,背景区域为负样本,机器学习方法训练分类器,下一帧用训练好的分类器找最优区域。在这里插入图片描述
  • 经典判别类方法推荐Struck和TLD,实时性能还行,Struck是2012年之前最好的方法TLD是经典long-term的代表,即使效果差一点但思想非常值得借鉴。
  • 判别类方法最新发展就是相关滤波(Correlation Filter)和深度学习(Deep ConvNet based),相关滤波也可以叫做模板类方法,所用的特征叫做模板类特征。
  • 例:Struck(Haar+SVM),行人检测(HOG+SVM),人脸检测(Haar+AdaBoost)。
3.3 两种方法的区别
  • 判别类方法在分类器训练过程中用到了背景信息,这样分类器就能专注区分前景和背景,所以判别类方法普遍都比生成类好。

4 相关滤波

4.1 KCF/DCF
  • 作者:(牛津大学 João F. Henrique)
  • OTB50上的测试结果(arVix:2014.4)
    在这里插入图片描述
  • Precision和FPS碾压了OTB50上最好的Struck。
  • MOOSE(ICCV 2010)是目标跟踪领域第一篇相关滤波算法,采用单通道灰度特征,在训练和检测时都没有加padding,速度:615FPS,第一次显示了相关滤波的潜力。
  • CSK(与KCF/DCF同一作者)在MOSSE的基础上扩展了密集采样(加padding)和kernel-trick,速度:362FPS
  • KCF/DCF在CSK基础上扩展了多道通的HOG特征,速度:KCF–172FPS,DCF–292FPS。
  • CN(Martin Danelljan大神–林雪平大学)在CSK的基础上扩展了多通道颜色的Color Names,速度:152FPS
    CN方法是将RGB的3通道图像投影到11个颜色通道,分别对应英语中常用的语言颜色分类,分别是black,blue, brown, grey, green, orange, pink, purple, red, white, yellow(对比汉语中常用的语言颜色分类:赤橙黄绿青蓝紫+黑白灰,英语和汉语对颜色的认知还是略有差异的),并归一化得到10通道颜色特征。作者还测试了多种颜色特征在相关滤波中的效果,发现CN最好,其次是LAB
  • CN2:CN基础上采用自适应PCA降维压缩2通道的颜色特征,速度:202FPS
  • HOG+CN成为跟踪算法中hand-craft特征的标配

5 VOT2014(尺度自适应)

  • 25个测试序列,38个算法​​,CF方法独霸天下
5.1 评估手段
  • EFO
    在这里插入图片描述
5.2 尺度变化
  • 尺度变化是跟踪中比较基础和常见的问题,注:前面介绍的KCF/DCF和CN都没有尺度更新
  • 如果目标缩小,滤波器就会学习到大量背景信息,如果目标扩大,滤波器只学习到目标局部纹理,这两种情况都很可能出现非预期的结果,导致漂移和失败。
5.3 比赛结果

在这里插入图片描述

  • SAMF基于KCF,特征采用HOG+CN,多尺度方法是平移滤波器在多尺度缩放(1.005间隔的7个尺度)的图像块上进行目标检测,取响应最大的那个平移位置及所在尺度,速度:4.6FPS
  • DSST(Martin Danelljan)只用了HOG特征,DCF用于平移位置检测(加padding),类似MOSSE滤波器检测尺度(1.02间隔的33个尺度)变化(不加padding),开创了采用平移滤波+尺度滤波的方法,速度:21FPS。后来有加速版的fDSST(17个尺度),速度:54.3FPS
  • 前三名都是CF类方法,KCF由于加了多尺度检测(1.05间隔的3个尺度)和子像素峰值估计,并且VOT序列分辨率比较高,速度:66.6FPS

6 VOT2015(边界效应)

  • 60个测试序列,62个tracker,最大看点是深度学习开始进入跟踪领域
6.1 评估手段
  • EFO
    在这里插入图片描述
6.2 边界效应
  • 原因:快速运动
  • 结果:当目标部分或全部移出跟踪区域边界,导致响应值不是全局最大,和那些不合理样本很像,导致跟踪失败
6.3 比赛结果

在这里插入图片描述

  • MDNet采用深度学习方法进行跟踪,荣获冠军,其次DeepSRDCF和SODLT也是深度学习方法,占比3/62
  • SRDCF(Martin Danelljan)仅使用HOG特征来解决边界效应,排名第四
    1.因为边界效应发生在边界附近,加入空域正则化,惩罚边界区域的滤波器系数
    在这里插入图片描述
    2.采用更大的检测区域(padding 从1.5–>4)
    3.由于加正则化破坏了DCF的封闭解,采用高斯-塞德尔方法迭代优化,速度:5PFS
    4.实测对快速运动的提升非常明显
  • DeepSRDCF(Martin Danelljan)是结合深度特征的相关滤波方法,将SRDCF中的HOG特征替换为用imagenet-vgg-2048网络中单层卷积层的深度特征,效果有了极大提升,排名第二
  • Mean-Shift类颜色算法ASMS是推荐的实时算法

7 VOT2016

  • 仍是VOT2015的60个测试序列,不过做了重新标注更加公平合理,共70个tracker,深度学习已经独霸一方
7.1 评估手段
  • EAO:expected average overlap,是对每个跟踪器在一个短时图像序列上的no-reset average overlap的期望值,是评价跟踪效果的主要指标
  • Accuracy:per-frame overlap,指跟踪器在单个测试序列下的平均重叠率(两矩形框的相交部分面积除以两矩形框的相并部分的面积)
  • Robustness:每个tracker在每个序列上运行15次(reset-based),统计平均失败帧数来计算
  • AO:average overlap,仅用第一帧的groundtruth来初始化跟踪器,然后让它一直跟下去(no-reset),最后算平均跟踪重叠率
  • EFO:跟踪器实际运行时间与测试平台上执行一次规定的滤波运算所需的时间的比值,被认为是与硬件平台无关的一个度量
7.2 比赛结果

在这里插入图片描述

  • TCNN (2)、SSAT(3)、MLDF(4) 、DNT(10)、SiamFC-R(12)、MDNet_N(15) 、SiamFC-A(21)、SO-DLT(27)都是深度学习方法,占比8/72。C-COT、DDC 、 Staple 和 Staple+是复杂特征结合相关滤波方法
  • C-COT(Martin Danelljan)采用多层深度特征(VGG第1和5层)相结合的相关滤波方法,排名第一,但效率很低
    在这里插入图片描述
    1.综合了SRDCF的空域正则化和SRDCFdecon的自适应样本权重
    2.将DeepSRDCF的单层卷积的深度特征扩展为多层卷积的深度特征(VGG第1和5层)
    3.应对不同卷积层分辨率不同的问题,提出了连续空间域插值转换操作
    4.目标函数通过共轭梯度下降方法迭代优化,比高斯-塞德尔方法要快,检测中用牛顿法迭代优化目标位置
  • TCNN是纯CNN方法,与VOT2015冠军MDNet是同一作者
  • Staple(Luca Bertinetto–牛津大学)算法是推荐的实时算法,结合颜色统计特征(积分图)的相关滤波方法,没有深度特征更没有CNN,因为没有破坏封闭解,所以速度快
    1.相关滤波模板类特征(HOG)对快速变形和快速运动效果不好,但对运动模糊光照变化等情况比较好
    2.颜色统计特征(颜色直方图)对变形不敏感,而且不属于相关滤波框架没有边界效应,快速运动当然也是没问题的,但对光照变化和背景相似颜色不好
    3.Staple算法将这两种特征得到的响应图进行线性加权(0.7相关滤波响应 + 0.3颜色概率响应)来得到最终响应图
  • SiamFC-R也是Luca Bertinetto的算法,将孪生网络(基于ResNet)应用于视觉跟踪,效果还不错;第21名的SiamFC-A是基于AlexNet
    在这里插入图片描述
    1.目标图像缩放到 127 × 127 × 3 127\times127\times3 127×127×3 提取特征 6 × 6 × 128 6\times6\times128 6×6×128,检测图像缩放到 255 × 255 × 3 255\times255\times3 255×255×3 提取 特征 22 × 22 × 128 22\times22\times128 22×22×128
    2.相似度度量是cross-correlation交叉相关,计算每个位置的相似度得到 17 × 17 × 1 17\times17\times1 17×17×1 的score map
    3.将粗糙的score map双三次插值上采样,获得更精确稳定的目标位置

8 VOT2017(相关滤波独霸天下)

  • 将测试分为公测和内测,以内测的结果为最终结果,更加公平公正;
  • ​60个公测测试集,将VOT2016的60个难度最低的10个序列替换为10个新的难度更大的序列
  • 60个内测数据集,除了公测数据集新增的10个序列,还挑选了50个类似属性但完全不同的序列
  • 不允许在公开的OTB、VOT等跟踪数据集上训练​,导致算法只有51个,相关CNN的方法集体缺席​
8.1 评估手段
  • Real-time Experiment:这是今年新引入的一种评估方式,VOT过去用EFO来评价一个跟踪器的执行速度,但是后来发现EFO仍然受到硬件平台性能较大影响,所以今年搞了个实时实验,具体做法在执行VOT标准评估时,限定跟踪器的响应时间,如果跟踪器的未能实时地(25fps,40ms每帧)反馈跟踪结果,则toolkit将不再等待,而是沿用上一帧的跟踪结果。当跟踪失败时仍然会重启跟踪器。
8.2 历年测试序列数目

在这里插入图片描述

8.3 比赛结果
  • 公测结果
    在这里插入图片描述
    1.前10名全是相关滤波+多通道特征,特征主要是卷积特征conv feature (VGGNet)和hand-craft feature (HOG+CN),基本都是C-COT或ECO的扩展
    2.CNN特征都来自ImageNet上图像分类任务pre-trained的CONVNET,除了CFCF,SiamDCF和SiamFC是在VID数据库上自己训练的网络
    3.CSRDCF是前10名唯一没有使用CNN特征的,由组委会成员提出来的
    4.SiamFC是少数幸存的端到端的离线训练tracker,是目前唯一可以与相关滤波抗衡的方向,但2017不允许在跟踪数据集上训练后,SiamFC的效果和2016相比明显差了许多
  • 内测结果(公测进入前10)
    在这里插入图片描述
    1.公测数据集完全透明的,大家都可能充分调参,得到一个不错的结果,虽然一定程度上能反映算法水平,但内测数据集的结果才是最公平,最可信的。
  • 实时测试结果
    在这里插入图片描述
    1.SiamFC和CSR-DCF++是GPU时间,ECO-HC和Staple是CPU时间
    2.CSRDCF仅用了HOG+CN特征,公测第8,内测第10,实时性排名第1
8.4 ECO & ECO-HC(Martin Danelljan)
  • CVPR及ICCV trackers结果对比
    在这里插入图片描述
    在这里插入图片描述
  • ECO是C-COT的加速版,从模型大小、样本集大小和更新策略三个方便加速,速度比C-COT提升了20倍,在公测上效果还更好
    1.减少模型参数–factorized convolution operator:用PCA降维,极大减小模型参数,深度特征时模型参数减少了80%
    在这里插入图片描述
    2.减少样本数量–compact generative model:采用Gaussian Mixture Model (GMM)合并相似样本,需要保存和优化的样本集数量降到C-COT的1/8
    在这里插入图片描述
    3.改变更新策略–sparser updating scheme:每隔5帧做一次优化更新模型参数,不但提高了算法速度,而且提高了对突变,遮挡等情况的稳定性。
  • ECO-HC是在ECO基础上去掉CNN特征,仅使用HOG+CN特征,并将特征从41维降到13维,论文中给出速度在CPU上可达到60FPS
    1.cpu上达到的实时的tracker(Inter i3 CPU @ 3.70GHz, 8GB,64位,没有GPU,软件MATLAB R2016a,OTB-100测试集)在这里插入图片描述

9 VOT2018(DCF+SiamNet)

  • 依然是VOT2016的测试序列,共72个tracker
9.1 比赛结果
  • 公测结果
    在这里插入图片描述
    1.72个参赛算法中占比最高的是DCF类和SiamNet类,其中38个是DCF类方法占比51%,feature以来自VGGNet的深度特征为主;14个是SiamNet类占比18%,backbone以SiamFC中的AlexNet为主,今年SiamNet类占比大幅提高
    2.鲁棒性前四名:MFT, LADCF, RCO, UPDT(Martin Danelljan),都是DCF类方法,CNN特征提取的backbone都是ResNet-50
    3.准确性前两名:SiamRPN(商汤), SA-Siam-R, 都是SiamNet类方法,这两个算法都表现出准确性奇高,而鲁棒性前十最差的特点
  • 内测结果
    在这里插入图片描述
    1.冠军:MFT是VOT2017年CFWCR的发展,在DCF框架中加multi-resolution和multi-solution,多种特征Res50, SE-Res50, Hog, 和CN组合
    2.UPDT是Martin大神ECCV 2018最新工作,在ECO的基础上特征网络换成了ResNet-50,并加入Data Augmentation提取特征,浅层特征和深度特征分治,两部分自适应融合,是SRDCF到C-COT到ECO之后的又一次飞跃
    在这里插入图片描述
  • 实时测试结果
    在这里插入图片描述
    1.商汤的SiamRPN是Short-term real-time sub-challenge冠军
    2.前10个中除第5名cdrtpp和第8名CSTEM(CPU速度),其他8个都是SiamNet类方法 (GPU速度)

10 总结

  • 跟踪算法开始从short-term向long-term及real-time方向过渡
  • DCF的方法仍然是目前跟踪的主流方向,但从最早的MOOSE–>CSK–>KCF到SRDCF、DeepSRDCF再到C-COT–>ECO,相关滤波的高效性一去不复返了;
  • 特征趋向于在传统的特征(HOG+CN)上加上CNN特征,但效率都较低;
  • SiamFC是目前唯一可与DCF方法抗衡的跟踪算法,但鲁棒性较差,应该是与端到端离线训练,无法在线更新有关
  • CNN网络结构用得最多是VGG和ResNet,但出于效率考虑,在嵌入式上也可考虑mobilenet

11 参考

  • https://zhuanlan.zhihu.com/p/26415747
  • https://zhuanlan.zhihu.com/p/46669238
  • https://zhuanlan.zhihu.com/p/32489557

这篇关于目标跟踪方法总结的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1123879

相关文章

HarmonyOS学习(七)——UI(五)常用布局总结

自适应布局 1.1、线性布局(LinearLayout) 通过线性容器Row和Column实现线性布局。Column容器内的子组件按照垂直方向排列,Row组件中的子组件按照水平方向排列。 属性说明space通过space参数设置主轴上子组件的间距,达到各子组件在排列上的等间距效果alignItems设置子组件在交叉轴上的对齐方式,且在各类尺寸屏幕上表现一致,其中交叉轴为垂直时,取值为Vert

学习hash总结

2014/1/29/   最近刚开始学hash,名字很陌生,但是hash的思想却很熟悉,以前早就做过此类的题,但是不知道这就是hash思想而已,说白了hash就是一个映射,往往灵活利用数组的下标来实现算法,hash的作用:1、判重;2、统计次数;

【C++】_list常用方法解析及模拟实现

相信自己的力量,只要对自己始终保持信心,尽自己最大努力去完成任何事,就算事情最终结果是失败了,努力了也不留遗憾。💓💓💓 目录   ✨说在前面 🍋知识点一:什么是list? •🌰1.list的定义 •🌰2.list的基本特性 •🌰3.常用接口介绍 🍋知识点二:list常用接口 •🌰1.默认成员函数 🔥构造函数(⭐) 🔥析构函数 •🌰2.list对象

浅谈主机加固,六种有效的主机加固方法

在数字化时代,数据的价值不言而喻,但随之而来的安全威胁也日益严峻。从勒索病毒到内部泄露,企业的数据安全面临着前所未有的挑战。为了应对这些挑战,一种全新的主机加固解决方案应运而生。 MCK主机加固解决方案,采用先进的安全容器中间件技术,构建起一套内核级的纵深立体防护体系。这一体系突破了传统安全防护的局限,即使在管理员权限被恶意利用的情况下,也能确保服务器的安全稳定运行。 普适主机加固措施:

webm怎么转换成mp4?这几种方法超多人在用!

webm怎么转换成mp4?WebM作为一种新兴的视频编码格式,近年来逐渐进入大众视野,其背后承载着诸多优势,但同时也伴随着不容忽视的局限性,首要挑战在于其兼容性边界,尽管WebM已广泛适应于众多网站与软件平台,但在特定应用环境或老旧设备上,其兼容难题依旧凸显,为用户体验带来不便,再者,WebM格式的非普适性也体现在编辑流程上,由于它并非行业内的通用标准,编辑过程中可能会遭遇格式不兼容的障碍,导致操

透彻!驯服大型语言模型(LLMs)的五种方法,及具体方法选择思路

引言 随着时间的发展,大型语言模型不再停留在演示阶段而是逐步面向生产系统的应用,随着人们期望的不断增加,目标也发生了巨大的变化。在短短的几个月的时间里,人们对大模型的认识已经从对其zero-shot能力感到惊讶,转变为考虑改进模型质量、提高模型可用性。 「大语言模型(LLMs)其实就是利用高容量的模型架构(例如Transformer)对海量的、多种多样的数据分布进行建模得到,它包含了大量的先验

烟火目标检测数据集 7800张 烟火检测 带标注 voc yolo

一个包含7800张带标注图像的数据集,专门用于烟火目标检测,是一个非常有价值的资源,尤其对于那些致力于公共安全、事件管理和烟花表演监控等领域的人士而言。下面是对此数据集的一个详细介绍: 数据集名称:烟火目标检测数据集 数据集规模: 图片数量:7800张类别:主要包含烟火类目标,可能还包括其他相关类别,如烟火发射装置、背景等。格式:图像文件通常为JPEG或PNG格式;标注文件可能为X

git使用的说明总结

Git使用说明 下载安装(下载地址) macOS: Git - Downloading macOS Windows: Git - Downloading Windows Linux/Unix: Git (git-scm.com) 创建新仓库 本地创建新仓库:创建新文件夹,进入文件夹目录,执行指令 git init ,用以创建新的git 克隆仓库 执行指令用以创建一个本地仓库的

【北交大信息所AI-Max2】使用方法

BJTU信息所集群AI_MAX2使用方法 使用的前提是预约到相应的算力卡,拥有登录权限的账号密码,一般为导师组共用一个。 有浏览器、ssh工具就可以。 1.新建集群Terminal 浏览器登陆10.126.62.75 (如果是1集群把75改成66) 交互式开发 执行器选Terminal 密码随便设一个(需记住) 工作空间:私有数据、全部文件 加速器选GeForce_RTX_2080_Ti

二分最大匹配总结

HDU 2444  黑白染色 ,二分图判定 const int maxn = 208 ;vector<int> g[maxn] ;int n ;bool vis[maxn] ;int match[maxn] ;;int color[maxn] ;int setcolor(int u , int c){color[u] = c ;for(vector<int>::iter