【OTB使用介绍二】对Visual Tracker Benchmark v1.0源码进行介绍

在【OTB使用介绍一】中,简单的讲解了如何运行OTB,这次主要详细介绍OTB的一些设置以及得到的结果图。

在OTB的量化评价指标中,有OPE、TRE、SRE三种,可由perfPlot.m得到。
视频图像的可视化bounding boxes是由drawResultBB.m得到

而main主要作用是跑跟踪算法的代码,并将运行跟踪算法返回的结果存放在result文件夹下。具体在哪个文件夹下,通过下面这行代码决定。(结果的存放形式是mat)

%运行main后得到的结果将存在此路径下(不修改就是在results文件夹的CVPR13下,可以自由修改),
finalPath = ['./results/results_' evalType '_CVPR13/'];

evalType就是选择跑OPE、TRE、SRE三种中的一种。如下所示

%'OPE','SRE','TRE' 选择不同的评价标准, 初始为TRE 
%这里你想得到什么结果就修改为什么评价标准
evalType='TRE'; 

这里做一下说明,OPE是一次成功率,TRE(20次)和SRE(12次)都是多次的。其中TRE的第一次结果其实就是OPE的结果,所以你可以跑一次TRE和一次SRE就够了。main中的修改差不多就是这些。

修改完main后运行就得到了结果。结果展示如下
这个是result文件夹的results_TRE_CVPR13里面的CSK的basketball.mat文件
result
点开第一个可以看到这些
【OTB使用介绍二】对Visual Tracker Benchmark v1.0源码进行介绍_第1张图片
其中res中的数据就是跟踪算法运行的结果,725是basketball序列的帧数,第一行就是第一帧,4列表示的是(x, y ,w, h),这里x和y表示的是目标位置的中心,w和h就是目标框的宽和高。在后面将自己的代码加入到OTB中时候,要特别注意不要把w和h写反了。anno是人工标注的信息,也就是后面评价指标的参照数据。

接下来是perfPlot.m ,作用是画出各种曲线图,也就是原论文中的各种成功率图和各种精度图。图片保存在figs文件夹下。

evalTypeSet = {'SRE', 'TRE', 'OPE'};

这行代码控制的是出几种图,可以只 保留你想出的图,其他的删除。

rankingType = 'threshold';%AUC, threshold

这里原来是AUC,只能出成功率(success)图,要想出精度(precision)图的话,需要修改为threshold。这样就可以两种图都出。

注意,源码注释中的threshold拼写有误。改正即可。

修改完这些就可以运行perfPlot.m了。

最后就是drawResultBB.m,这个得到的视频中跟踪算法的结果保存在tmp文件夹的img中。如图所示
【OTB使用介绍二】对Visual Tracker Benchmark v1.0源码进行介绍_第2张图片
这个m文件的运行需要有SRE的结果,因此运行前,需要先选择SRE并运行一下main文件。
之后就可以得到这样的结果图。

pathRes = '.\results\results_SRE_CVPR17\';% The folder containing the tracking results

即在该文件夹中,有相应的mat文件。

【OTB使用介绍二】在这里就结束了,【OTB使用介绍三】中介绍如何将你的算法加入到OTB中并和其他算法进行比较。


你可能感兴趣的:(OTB使用教程系列)