近几年目标跟踪论文简单分类综述

2023-10-13 18:59

本文主要是介绍近几年目标跟踪论文简单分类综述,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

转载自:https://blog.csdn.net/sinat_31184961/article/details/99993350

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/sinat_31184961/article/details/99993350

Siamese类

  • SiamFC(ECCV2016)
  • SiamRPN(CVPR2018 Spotlight):SiamFC+RPN
  • DaSiamRPN(ECCV2018)
  • SiamRPN++(CVPR2019):ResNet+multilevel feature,对每个层的特征都做RPN,再结合,和C-RPN不一样;
  • CFNet(CVPR2017):第一篇将Siamese和相关滤波结合
  • RASNet(CVPR2018 王强):对Siamese的网络详细分析,并且使用了三个attention来做
  • Triplet_tracker(ECCV2018):使用三元组的损失,没有改变输入,只是损失函数上做
  • MemTracker(ECCV2018):用了一个空间的attention,使得search区域更加准确,使用LSTM来控制模型更新,但是这个LSTM好像不怎么管用
  • SA_Siam(CVPR2018):网络有四个branch,将语义和表观特征结合使用,使用了一个channel attention
  • MBMD(VOT2018long-term 1):将Siamese网络作为预测网络,MDNet作为验证网络,然后Siamese使用的是MobileNet的网络结构,MDNet就是原始没有再训练,可以试试只用MobileNet做的效果;
  • EAST(ICCV2017):这篇文章提出使用不同的特征处理不同的图片,简单图片使用浅的手工特征,难的图片就使用深度特征,用线下训练的强化学习方式做决策;
  • FlowTrack(CVPR2018):利用FlowNet编码光流的信息,然后提出了Spatial-Temporal注意力机制来将光流信息集成到当前帧中;
  • SiamMask(CVPR2019):将视频语义分割应用到目标跟踪中来,就是在Siamese网络后面多加了一个segmentation回归分支,然后利用翻卷积来做segmentation的准确定位。因为多任务所以学到的特征泛化性更强;
  • C-RPN(CVPR2019):参考了two-stage的物体检测方式,在网络后面使用了三个RPN,后面两个RPN的输入都是上一个RPN的输出,这样网络就可以不用指定的anchor大小,而是自适应的,每个RPN还用了不同层的特征,最后再融合这些层的特征;
  • SiamDW(CVPR2019):加了很多Inception来做,就是把网络搞宽了,看不懂网络结构,复现大概也很难,调参会调死;
  • SINT++(CVPR2018): 提出了传统的正样本都是从groundtruth附近提取的,所以都很像,所以他先是弄了个正样本生成网络,然后加了一个根据强化学习的正样本生成网络,用SINT的结构,总体论文是看不懂了,不过不是E2E的,但是只需要很少的训练,不过看不懂确实很伤了;
  • DenseSiam(VOT获奖):使用非常密集的表示,把各个层的特征都放到一起,但是单看论文好像效果不是很好,但是人家在VOT2018 上好像表现很好,有空可以把代码跑一下;
  • SiamVGG(VOT2018):就是把backbone改成了用VGG16,然后在大数据集上训练,效果很好
  • TADT(CVPR2019):DAT和HART的结合,不过空间和尺度的attention弄到了channel维度上,用了两个loss来指导attention的学习,效果可以,论文写的很漂亮;
  • SPM-Tracker(CVPR2019):用了两个stage,一个用RPN回归出score,另一个通过前一个stage的输出来做proposal的选择,大概是这个意思,做的时候用了多层的特征,时间120FPS,效果很好;
  • ATOM(CVPR2019 oral):MD大神的作品,用了线下训练目标估计和线上训练分类来做,也提出了IoUNet的有用性,其实也可以理解为是一个two-stage的过程,也用了多层的特征;
  • EDCF(IJCAI2018):也是Siamese的框架只不过是弄了encoder和decoder的结构,有点像分割的那种形式来回溯到原来大小,然后根据响应去做的预测;
  • EDCF(IJCAI2018):王强的文章,用了编解码网络,通过反卷积回原始大小,来控制网络学到的特征鲁棒(类似hourglass的思路),同时比较巧妙使用多层特征,不是融合的方式,而且先相应做卷积,再相加(其实也是concate的一种方式),模型更新策略可以;
  • SPLT(ICCV2019) : 用了一个SiameseRPN来做初步的bbox的选择,然后弄了一个embedding网络来验证检测出来的proposal是否靠谱,若是不靠谱,就用还是用Siamese的结构来重新定位search region,再用SiameseRPN来跟踪。 是一个长程跟踪的算法,其中三大模块都是分开训练的,分三个模块是长程跟踪中比较经典的做法;
  • DiMP(ICCV2019):MD大神的新作,在Atom基础上更加优化的一篇文章,主要提出了一个新的类似合页损失的损失函数,来更加精确定位target,然后把网络的训练弄成端到端的了,没有像Atom一个backbone是固定的。

MDNET类

  • MDNet(CVPR2016)
  • TCNN(ECCV2016):树型结构的MDNet,不过没有后续工作,浪费空间时间吧;
  • RT_MDNet(ECCV2018):使用了RoIAlign来加快网络特征提取,优化损失函数(instance的损失+classify的损失,类内与类间,有点triplet loss的感觉);
  • Meta-tracker(ECCV2018):指导模型在跟踪时的初始化过程,元学习应用,还用了一个标签洗牌操作,不知道管不管用;
  • DAT(NIPS2018):利用attention,不过只是将attention作为损失函数的一项,每帧更新模型一次,精度高速度慢;
  • VITAL(CVPR2018 Spotlight):把GAN引入,通过对抗学习一个Mask,意在提取一些general的特征,用多个Mask其实就是模拟target的变化,还对样本进行reweighting,平衡不同样本的影响,精度高速度慢;
  • LSART(CVPR2018 Spotlight):CNN的特征相关滤波相结合使用的,论文太难懂了;
  • HART(NIPS2017):利用了多种注意力机制,还对每种注意力机制都弄了损失函数,还使用了LSTM来做,但是最管用的还是多任务损失;
  • ANT(AAAI2019):用了多属性来跟踪,属性代表一些遮挡、尺度变化等,每个属性都有一个branch来编码;
  • UDT(CVPR2019):使用无监督的方式做,最巧妙的就是通过前向和反向做,来保证tracker的鲁棒性,还提出了三帧训练的形式,使得目标可以适应各种形式。
  • StarGAN+MDNet(ICASSP2019): 就是利用StarGAN去生成行人的不同姿态样本,作为艰难的正样本,去对正样本进行扩充,StarGAN和MDNet都是原来就有的框架,作者只是把它们一起用了而已,(其实有点像SiamPRN一样,但是效果很好,而且移植地好)

相关滤波

  • KCF(TPAMI2015):鼻祖
  • PTAV(ICCV2017):CF + deeplearning
  • CREST(ICCV2017Spotlight):将DCF搞成了网络中的一层,有点像SiamFC这种,但是不知道为什么精度比SiamFC高,然后用了残差学习来提精度;
  • MHIT:用了很多trick,融合多层特征,每层特征都过一个独立的CF分类器,最后弄了一个自适应的特征权重融合方式,而且提出了需要用到的多层特征最好不要相邻,相邻信息冗余了。使用了卡尔曼滤波做的运动信息编码;
  • TRACA(CVPR2018):引入了很多Auto-encoder来自适应编码输入图像,使得网络更加适应当前的样本,做了channel和空间上的数据增强,使得网络更加适应各种变换;
  • UPDT:用ECO的框架,但是研究了如何使用高层的深度特征和底层的手工特征,并且研究了如何用深的网络做跟踪;

VGG类?

  • DSLT(ECCV2018):提出了一个shrinking loss,有点类似focal loss,但是这篇文章的损失函数只惩罚简单样本,其他样本不改,但是精度比focal loss高,再者就是使用了反卷积做多层特征融合;
  • UPDT(ECCV2018):Martin大神的新作,分析了为什么跟踪中较深的网络不管用,并提出了不同的数据增强以及高低层特征融合的方式,值得借鉴把,是一篇比较有指导性的工作。
  • DEDT(CVPR2018):看不懂啊,只知道用了一个集成的跟踪器,用多个跟踪器来一起预测结果,训练的时候尽量使得每个分类器的耦合性低,就为了实现这个,他们自己生成耦合性低的样本,来分别训练,然后说是因为每帧都更新,所以结合了时间信息。不过实在太麻烦,还是ANT高明一些。

Attention 类

  • RASNet:residual+channel+general
  • DAT: 将attention作为一个损失函数的一个项
  • MemTracker:Spatial + Channel
  • SA_Siam : Channel
  • FlowTrack:Spatial + Channel
  • HART:Spatial + appearance
  • TADT:空间+尺度
  • DensSiam:用了self-attention,其实就是何凯明的non-local features的结构

Multilevel feature(感觉只有在层数比较多的网络才会用到)

  • SiamRPN++ : conv3+conv4+conv5
  • SA_Siam:conv4 + conv5
  • C-RPN:conv3+conv4+conv5
  • DSLT:用反卷积做,但是只用了两层
  • MHIT:用了很多层
  • EAST:用强化学习来决定用那层的特征
  • UPDT:深度特征+手工特征
  • SPM-Tracker:conv2 +conv4
  • ATOM
  • EDCF:conv2(CACF)+conv5

loss

  • VITAL : 就是使用了何凯明的focal loss;
  • RT_MDNet:也不算是focal loss,就是在损失函数上不仅计算了类内的距离,也考虑的类间的距离;
  • Triple_tracker:三元组损失;
  • DAT:正则化的空间attention损失;
  • HART:多种attention损失相加;
  • DSLT:Shrinking loss
  • DaSiamRPN:使得loss离distractor越远越好
  • EDCF:多任务损失
  • DiMP:类合页损失,使得正负样本之间距离大

多属性,多任务

  • SiamMask:用视频语义分割的方法和数据来训练
  • ANT:把遮挡、形变当成属性,多属性学习;
  • DEDT:用了集成的跟踪器,像Adaboost那样,集成多个分类器来做

多stage

  • C-RPN:三个stage
  • ANT:一个stage负责编码各种不同的属性,一个stage负责结合这些属性;
  • ATOM:一个stage得到bbox,一个stage用来分类;
  • SPM-tracker:一个stage得到粗糙的表示,另一个stage来区分distractor
  • EDCF:也是低层的结果作为后面层的输入,然后再调整的过程

时间序列

  • MEMTracker:LSTM控制;
  • FlowTracker:光流信息

无监督

  • UDT:无监督学习

GAN

  • VITAL:利用GAN来去生成mask,希望mask之后留下来的部分是最discriminate的。
  • StarGAN:就是用GAN去做数据增强,但是只对行人做了。

贴一张组会汇报时做的图

在这里插入图片描述

                                </div><link href="https://csdnimg.cn/release/phoenix/mdeditor/markdown_views-e9f16cbbc2.css" rel="stylesheet"></div>

这篇关于近几年目标跟踪论文简单分类综述的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

使用Python开发一个简单的本地图片服务器

《使用Python开发一个简单的本地图片服务器》本文介绍了如何结合wxPython构建的图形用户界面GUI和Python内建的Web服务器功能,在本地网络中搭建一个私人的,即开即用的网页相册,文中的示... 目录项目目标核心技术栈代码深度解析完整代码工作流程主要功能与优势潜在改进与思考运行结果总结你是否曾经

Mysql表的简单操作(基本技能)

《Mysql表的简单操作(基本技能)》在数据库中,表的操作主要包括表的创建、查看、修改、删除等,了解如何操作这些表是数据库管理和开发的基本技能,本文给大家介绍Mysql表的简单操作,感兴趣的朋友一起看... 目录3.1 创建表 3.2 查看表结构3.3 修改表3.4 实践案例:修改表在数据库中,表的操作主要

springboot简单集成Security配置的教程

《springboot简单集成Security配置的教程》:本文主要介绍springboot简单集成Security配置的教程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,... 目录集成Security安全框架引入依赖编写配置类WebSecurityConfig(自定义资源权限规则

python+opencv处理颜色之将目标颜色转换实例代码

《python+opencv处理颜色之将目标颜色转换实例代码》OpenCV是一个的跨平台计算机视觉库,可以运行在Linux、Windows和MacOS操作系统上,:本文主要介绍python+ope... 目录下面是代码+ 效果 + 解释转HSV: 关于颜色总是要转HSV的掩膜再标注总结 目标:将红色的部分滤

如何使用Python实现一个简单的window任务管理器

《如何使用Python实现一个简单的window任务管理器》这篇文章主要为大家详细介绍了如何使用Python实现一个简单的window任务管理器,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起... 任务管理器效果图完整代码import tkinter as tkfrom tkinter i

C++中函数模板与类模板的简单使用及区别介绍

《C++中函数模板与类模板的简单使用及区别介绍》这篇文章介绍了C++中的模板机制,包括函数模板和类模板的概念、语法和实际应用,函数模板通过类型参数实现泛型操作,而类模板允许创建可处理多种数据类型的类,... 目录一、函数模板定义语法真实示例二、类模板三、关键区别四、注意事项 ‌在C++中,模板是实现泛型编程

一文详解SQL Server如何跟踪自动统计信息更新

《一文详解SQLServer如何跟踪自动统计信息更新》SQLServer数据库中,我们都清楚统计信息对于优化器来说非常重要,所以本文就来和大家简单聊一聊SQLServer如何跟踪自动统计信息更新吧... SQL Server数据库中,我们都清楚统计信息对于优化器来说非常重要。一般情况下,我们会开启"自动更新

使用EasyExcel实现简单的Excel表格解析操作

《使用EasyExcel实现简单的Excel表格解析操作》:本文主要介绍如何使用EasyExcel完成简单的表格解析操作,同时实现了大量数据情况下数据的分次批量入库,并记录每条数据入库的状态,感兴... 目录前言固定模板及表数据格式的解析实现Excel模板内容对应的实体类实现AnalysisEventLis

Java中数组转换为列表的两种实现方式(超简单)

《Java中数组转换为列表的两种实现方式(超简单)》本文介绍了在Java中将数组转换为列表的两种常见方法使用Arrays.asList和Java8的StreamAPI,Arrays.asList方法简... 目录1. 使用Java Collections框架(Arrays.asList)1.1 示例代码1.

Java8需要知道的4个函数式接口简单教程

《Java8需要知道的4个函数式接口简单教程》:本文主要介绍Java8中引入的函数式接口,包括Consumer、Supplier、Predicate和Function,以及它们的用法和特点,文中... 目录什么是函数是接口?Consumer接口定义核心特点注意事项常见用法1.基本用法2.结合andThen链