目标跟踪基础与智能前沿

关注上方公众号,回复下方安装过程中对应关键字,获得对应安装包。

本文持续更新中…

连载可关注知乎专栏“目标跟踪基础与前沿”

文章目录

[ 目标跟踪基础与智能前沿 ](http://dft2rci5611xwmix.mikecrm.com/NCyhs1B)

开端介绍

VOT

1、工具包配置

1.1 [OTB安装:绘制你的第一个效果图](https://blog.csdn.net/yinxian9019/article/details/107055601)

1.2 OTB python 版本安装

anno : 标注好的视频序列的位置数据

figs : 绘图生成保存的路径

results: 算法测试的结果文件

perfMat : 运行了perfPlot.m 画图的记录文件,重新生成需要删除

main_running.m : 主程序,运行之后可在rusult查看结果

utility : 包含了程序需要调用的函数

1.2 VOT安装

1.3 matlab 安装

2、评价指标

================ 2.1 ==== OTB benchmark ================

时间鲁棒性

空间鲁棒性

1、 参数

平均像素误差Average Pixel Error(APE)

平均重叠率Average Overlap Rate(AOR)

2、图表

VOT 和 OTB 的区别

================ 2.2 ==== VOT benchmark ================

精度 EAO · Expect Average Overlap Rate 预期平均重叠

鲁棒性

1、参数

中心误差 Center Error

区域重叠:Region Overlap

跟踪长度:Tracking Length

失败率:Failure Rate

混合测量:Hybrid Measures

Expect Average Overlaprate

2、图表

(AUC)曲线 · area-under-the-curve

(EAO) · Expect Average Overlap Rate 预期平均重叠

EOA · ??

EFO · Equivalent Filter Operations

============ 2.3 ==== Object Tracking Benchmark ============

精度 Precesion Plot: Euclidean distance between the center locations.

Success Plot:

鲁棒性

· OPE: one-pass evaluation;

· TRE: temporal robustness evaluation (different start frame);

· SRE:spatial robustness evaluation (four center shifts and four corner shifts).

============ 2.4 ==== Got-10k ============

3、数据集介绍

1) Lasot

2)Got10k

3)[TrackingNet:](https://drive.google.com/drive/u/0/folders/1gJOR-r-jPFFFCzKKlMOW80WFtuaMiaf6)

4)ImageNet-VID(ILSVRC 2015-VID)

参考资料:

开端介绍

VOT

VOT13、VOT14、VOT15、VOT16,每一次都有很大变化,VOT13只有16组序列,而当时OTB-50刚刚出来,所以VOT13没多大影响力,VOT14比VOT13增加样本集至25组,并且重新标注了样本,选取多边形区域进行标注,能反映出OTB反映不了的问题,这才收到大家的关注,不过大家当时还是看OTB多一些。VOT15扩充样本集至60组,并开设了tir热成像跟踪子系列,其评价方法也有改变,VOT15开始火起来了。到VOT16,没有对样本集做修改,只是使用了自动标注样本的方法对样本重新标注,VOT已经成了跟踪领域顶会必须拿出的指标了。

现在做跟踪必须要拿VOT中的评价标准说明问题,它与OTB比起来更加好用,更能反映问题。

1、工具包配置

1.1 OTB安装:绘制你的第一个效果图

这里解释一下几个在使用中可能需要进行更改的文件夹。

1.2 OTB python 版本安装

参考

anno : 标注好的视频序列的位置数据

第一个anno文件夹,就是标注好的视频序列的位置数据,默认下载下来的只有OTB2013中视频序列的标注数据,要想测试OTB2015就需要找到OTB2015的标注数据将anno文件夹进行替换。很显然,没有标注好的数据就不能测试得到算法的跟踪精度及成功率。

figs : 绘图生成保存的路径

第二个figs文件夹,你将自己算法在数据库上跑完之后,运行了perfPlot.m文件画完图之后,生成的图片就会存在这个文件夹里。

results: 算法测试的结果文件

第三个results文件夹,保存的是你算法测试的结果文件,文件命名为“视频序列名_算法名.mat”,当你算法在数据库里跑完后这个文件夹里会找到对应的文件,有一点值得注意的是,当你之后运行perfPlot.m文件画图报错时,很有可能是你的算法有瑕疵,导致一些测试结果文件是空文件,所以你要注意results里对应算法结果文件中大小为1kb的文件,也许就是空文件。

perfMat : 运行了perfPlot.m 画图的记录文件,重新生成需要删除

第四个perfmat文件夹,是你运行了perfPlot.m画图文件之后生成的记录文件,所以当你新增或者更改了需要画图的算法时,最好把这个文件夹里overall里的所有文件删除,否则可能会画出之前保存的图片而不进行新图的绘制。

main_running.m : 主程序,运行之后可在rusult查看结果

main_running.mat文件就是主程序,设置完成需要测试的算法,在哪些视频序列上进行测试后,运行这个文件,等他跑完就可以在results文件夹里看到跟踪结果文件了。

utility : 包含了程序需要调用的函数

utility文件夹,里面包含了程序需要调用的函数,其中需要我们更改的函数有两个,configSeqs.m文件,这个文件是设置你需要在哪些视频序列上进行测试。configTrackers.m文件,这个文件是设置你需要测试哪些跟踪算法。

configSeqs.m文件,这个文件是设置你需要在哪些视频序列上进行测试。

configTrackers.m文件,这个文件是设置你需要测试哪些跟踪算法。

drawResultBB.m文件是将你选择的所有算法的跟踪结果框(bounding_box)显示在同一张图片上的文件,运行这个文件首先需要把自己的算法在数据库上跑一遍,也就是要有results文件夹里要有算法跟踪结果文件。

perfPlot.m文件是将跟踪结果绘制成精度图或者成功率图的文件,这个的前提也是你要把算法在数据库里跑一遍,results文件夹里要有对应的跟踪结果文件。

trackers文件夹,你必须把你需要测试的算法的代码放在这个文件夹里,并写好接口文件(run_算法名.m)。

1.2 VOT安装

1.3 matlab 安装

目标跟踪配置二: ubuntu Matlab安装

2、评价指标

================ 2.1 ==== OTB benchmark ================

OTB评估指标

OTBbenchmark 官网

时间鲁棒性

OTB对时间鲁棒性的测试是通过将视频序列在时间轴上平均找出20个点作为起点,终点还是原来的最后一帧,这样通过对20段视频序列运行算法,绘制平均的重叠率图或者像素误差图,这样就完成了空间鲁棒性的测试

空间鲁棒性

空间鲁棒性和时间鲁棒性一样,取一段视频的第一帧,以真实位置稍作偏移,就是说测试初始化位置有偏差的目标序列,这样测试12段(8个方向,四个尺度),这样就可以得到12和视频序列的评价成功率曲线,也就是空间鲁棒性曲线。

1、 参数

平均像素误差Average Pixel Error(APE)

平均像素误差是根据预测目标中心位置和真实位置的像素距离作为误差值,该值越大说明误差越大。最后结果是对视频序列所有帧取平均值。

平均重叠率Average Overlap Rate(AOR)

平均重叠率O是以面积来衡量的

2、图表

VOT 和 OTB 的区别

VOT2013-2016官方链接:www.votchallenge.net/howto/

OTB和VOT区别:OTB包括25%的灰度序列,但VOT都是彩色序列,这也是造成很多颜色特征算法性能差异的原因;两个库的评价指标不一样,具体请参考论文;VOT库的序列分辨率普遍较高,这一点后面分析会提到。对于一个tracker,如果论文在两个库(最好是OTB100和VOT2016)上都结果上佳,那肯定是非常优秀的(两个库调参你能调好,我服,认了~~),如果只跑了一个,个人更偏向于VOT2016,因为序列都是精细标注,且评价指标更好(人家毕竟是竞赛,评价指标发过TPAMI的),差别最大的地方,OTB有随机帧开始,或矩形框加随机干扰初始化去跑,作者说这样更加符合检测算法给的框框;而VOT是第一帧初始化去跑,每次跟踪失败(预测框和标注框不重叠)时,5帧之后重新初始化,VOT以short-term为主,且认为跟踪检测应该在一起不分离,detecter会多次初始化tracker。

================ 2.2 ==== VOT benchmark ================

精度 EAO · Expect Average Overlap Rate 预期平均重叠

VOT 中使用EAO

鲁棒性

鲁棒性使用跟踪算法跟丢目标的次数来衡量

精度和鲁棒性的相关性最弱。

1、参数

中心误差 Center Error

中心误差标准值 考虑目标中心位置的误差,该方法具有明显的缺点,就是无法衡量目标尺度变化的影响。

另外,目标中心的意义有时候不是很明确(如下图)。

误差来自, 谁和谁之间?

区域重叠:Region Overlap

区域的重叠率是使用重叠面积的比例进行衡量的。

在区域重叠指标上,我们一般使用有效帧的重叠率做平均。除此之外,我们还可以使用重叠率阈值以上帧的比例作为标准:

跟踪长度:Tracking Length

基于中心位置误差的,从跟踪开始到中心像素误差下降到阈值以下的(帧数)长度定义为跟踪长度。

失败率:Failure Rate

在视频跟踪处理的一段序列中,当重叠率低于阈值可以被表示为

混合测量:Hybrid Measures

定义了几种混合各种参数的指标,Combined Tracking Performance Score (CoTPS)

Expect Average Overlaprate

2、图表

(AUC)曲线 · area-under-the-curve

(EAO) · Expect Average Overlap Rate 预期平均重叠

是用来评价性能的,精度的衡量方式是平均重叠率。

EOA · ??

EFO · Equivalent Filter Operations

EFO是用来衡量速度的指标,以往我们谈速度,都需要谈硬件,再说fps,但是通过EFO指标可以减少硬件差异带来的影响。

首先测试该机器在600×600图像上,对每个像素进行30×30滤波的时间。

然后将跟踪算法耗时除以该机器上进行以上滤波操作的时间,这样得到的值就是EFO值,最大程度的减少了硬件的影响。

是VOT2014提出来的一个衡量tracking速度的新单位,在利用vot-toolkit评价tracker之前,先会测量在一个600600的灰度图像上用3030最大值滤波器进行滤波的时间,以此得出一个基准单位,再以这个基础单位衡量tracker的速度,以此减少硬件平台和编程语言等外在因素对tracker速度的影响。

============ 2.3 ==== Object Tracking Benchmark ============

精度 Precesion Plot: Euclidean distance between the center locations.

Precesion Plot: Euclidean distance between the center locations.

precesion plot(精度测算)主要指的是预测位置中心点与benchmark中标注的中心位置间的欧式距离,是以像素为单位进行的计算。计算方式比较简单,在进行目标跟踪时我们主要会得到两个参数:跟踪目标左上角的坐标和scale的大小。

Success Plot:

success plot(成功率测算)主要指的是预测目标所在benchmark的重合程度。通过success plot,我个人觉得对scale和precision都有了数值上的描述。

鲁棒性

· OPE: one-pass evaluation;

· TRE: temporal robustness evaluation (different start frame);

· SRE:spatial robustness evaluation (four center shifts and four corner shifts).

其中OPE即为普通方法,TRE、SRE为测试鲁棒性方法。

============ 2.4 ==== Got-10k ============

3、数据集介绍

目标跟踪领域的数据集(Lasot,Got10k,TrackingNet, ImageNet-VID(ILSVRC 2015-VID))有多大

1) Lasot

2)Got10k

3)TrackingNet:

Train每个基本上都80GB以上,一个Test也有33G,一共是1061GB

4)ImageNet-VID(ILSVRC 2015-VID)

参考资料:

OTB介绍

OTB 怎么用OTB

OTB怎么用

OTB使用教程

python目标跟踪精度曲线图_目标跟踪配置(三)-评价指标-benchmark(更新中,关注请收藏。。。)...相关推荐

  1. python网络爬虫系列教程_Python网络爬虫系列教程连载 ----长期更新中,敬请关注!...

    感谢大家长期对Python爱好者社区的支持,后期Python爱好者社区推出Python网络爬虫系列教程.欢迎大家关注.以下系列教程大纲,欢迎大家补充.视频长期连载更新中 --------------- ...

  2. Python爬虫及其它函数知识读记及简单用法,持续更新中...

    Python爬虫相关函数知识读记及简单用法,持续更新中- requests [riˈkwests] n. 请求,要求( request的名词复数 ): 需要: 所请求的事物: 申请书 函数或单词- 音 ...

  3. python目标跟踪精度曲线图_Python+opencv3.4+Kalman滤波在视频中跟踪绘制运动目标,Pythonopencv34kalman,卡尔曼滤波,实现,物体,追踪,和,轨迹...

    实验环境: Python3.6+OpenCV3.4+pycharm2019 代码实现: 首先是一个 简单的不用kalman滤波的运动目标追踪代码 这里可以根据需要进行摄像头运动目标识别,只要把 cam ...

  4. java 4种跟踪会话技术_会话跟踪技术

    一.会话跟踪技术 在JavaWeb中,客户向某一服务器发出第一个请求开始,会话就开始了,直到客户关闭了浏览器会话结束. 在一个会话的多个请求中共享数据,这就是会话跟踪技术 会话路径技术使用Cookie ...

  5. python做实时温度曲线图_基于echarts实时温度折线图表

    这里动态数据使用了js模拟生成,使用时修改一下即可. 效果图 a.html代码: var dom = document.getElementById("container"); v ...

  6. python命令窗口在哪里_详解如何在cmd命令窗口中搭建简单的python开发环境

    详解如何在cmd命令窗口中搭建简单的python开发环境 1.快捷键win+r输入cmd回车调出cmd界面,在命令行输入python回车,显示python命令无法识别 2.登陆python官网http ...

  7. 编写python程序、计算账户余额_小明有20w存款存在余额宝中,按余额宝年收益为3.35%计算,用Python编写程序计算,多少年后小明的存款达到30w?...

    [判断题]卤素灯泡是在灯泡内充入氟.氯等卤素气体. [单选题]我国刑法第12条关于溯及力的规定采取的是( ). [填空题]本地局域网 LAN 内, () 和无绳电话速率较低,主流带宽是 100kbps ...

  8. python什么工作好找女朋友_程序员,三分钟教你用 Python 帮你找一个女朋友

    原标题:程序员,三分钟教你用 Python 帮你找一个女朋友 什么是单身税? 单身税的历史可以追溯到2015年韩国的新政, 低生育率逼得韩国产生了这一政策. 现在我国也要实行这一政策, 很多单身狗就接 ...

  9. python列表删除重复项_五分钟学会三种Excel重复项删除方法,工作效率大杀器!...

    点击蓝字 关注我们 在统计数据过程中, 同一份数据可能由于渠道的不同而进行了多次统计, 在输入数据时, 可能因为操作失误重复输入数据.种种原因造成数据表中的数据存在重复现象, 删除重复数据是数据清洗的 ...

最新文章

  1. 六月第一枪:股市震荡,下一步该做什么?
  2. 在文件log 加入commit id_从物理文件理解InnoDB Redo Log
  3. 每个c语言程序写完后 都要按照,c语言基础学习小结(习题总结)(5页)-原创力文档...
  4. 【mongo】centos6.9安装mongo2.6.3
  5. 阳光与阴谋:从投资者角度看理财周报-赛迪事件
  6. reactor p java_Java反应式框架Reactor中的Mono和Flux
  7. linux uefi无法启动文件,解决UEFI安装无法启动的问题
  8. win10 dns异常上不了网如何解决
  9. Oracle发布Java移动开发路线图 影响近千万开发者
  10. 关闭惠普计算机通电启动注册表,惠普10代cpu电脑装win7卡logo(安装程序正在更新注册表设置)解决方法...
  11. MySQL错误:The user specified as a definer (XXX@XXX) does not exist (1449错误)最简解决方案...
  12. javascript代码_15个最好用的JavaScript代码压缩工具
  13. Python第二天(字典)
  14. js经典试题之数组与函数
  15. php对字符串简单加密解密,PHP字符串加密解密
  16. RapidMiner 数值调整
  17. Android应用签名证书(.keystore)生成
  18. HC74h595 串行输出再进行串口输出(串行通信嵌套)已测试成功。
  19. Ubuntu18.04 域名解析失败
  20. springBoot的过滤器,监听器,拦截器

热门文章

  1. Java十进制转三进制
  2. 【网络安全】利用MSF工具内网复现MS08-067
  3. 测试普通话水平的软件,求测试普通话标准的软件?6款普通话软件推荐
  4. 【Python】常用模块安装命令
  5. EC200 EC600 EC20接入工业互联网云平台
  6. file_get_contents 访问 ssl 错误的两种解决方法
  7. 逆波兰式(后缀式)详解
  8. html 导出excel 列被合并,前端实现导出excel单元格合并和调整样式
  9. Http调用第三方接口的两种方式实例《超详细!!!》***
  10. js深拷贝可以这样做