Visual Tracker Benchmark配置使用自己算法教程

版权声明:欢迎大家转载分享,转载请注明出处,有需要请留言联系我~~~ https://blog.csdn.net/crazyice521/article/details/51337783

计算机视觉中,Visual tracker benchmark是一个相当于比较标准一般的存在,可以对比每个算法在相同的基准之下的性能。这个在CVPR 2013的时候发表的,下面是原文链接:
Online Object Tracking: A Benchmark (CVPR 2013)
http://faculty.ucmerced.edu/mhyang/papers/cvpr13_benchmark.pdf
官方链接:
http://cvlab.hanyang.ac.kr/tracker_benchmark/index.html
在2015年的时候数据集由原来的50个序列扩充到现在的100个。
现在多数使用的是Benchmark V1.0来运行测试所有tracking的结果,在官网下载完代码之后,里面已经存在了关于各种tracker在不同数据集上的结果了。

想要验证自己的tracker在这个基准上的结果,说来非常的简单。
直接的方法:
首先将代码先拷到benchmark_v1.0/tackers/这个文件夹下,你会发现里面已有好几个算法的代码文件夹了。
这边注意了,我就是这样的,没有注意把代码拷贝进去之后要自己写一个调用函数,benchmark在运行的时候调用我们的算法的函数,就是每个tracker文件夹当中的run_trackers名字,这个一定要有,格式也很简单,参照其他的算法应该很容易就能写出来了。

第二步是:到benchmark_v1.0/util/configTrackers.m这个函数中,在trackers1这个结构体中添加上你的代码的名字,比如:struct(‘name’,’KCF’,’namePaper’,’KCF’),…。
如果只想运行自己的算法结果,就把整个文件代码注释掉,重写:

function trackers=configTrackers
 trackers=[{struct('name','算法名字','namePaper','算法名字')}];

第三步是:运行main_running.m函数。这个时候就是等待了,等待过程还是很漫长的,这个根据自己的算法的运行速度。等所有结果跑完了之后,结果就保存在results文件夹里面,可以打开看一下,会有各个序列集对应自己算法名字的结果文件存在。
PS:这边如果提示error,所有序列集都是error的话,就是你以前配置错误了,跑出来结果是空的,这个时候去results文件夹里面把以前错误的结果删除掉,重新运行就没问题了。

第四步是:运行perfPlot.m函数,根据你运行出来的结果画出可视化的曲线。如果这边报错问价找不到什么的,点到错误的地方把路径修改一下就应该没有什么问题的。

这个过程当中你可能会遇到一些问题:第一个会是路径的问题,这个需要你更改的路径有configTrackers.m和configSeqs.m里面的路径,对应修改就可以了。还有一点就是在修改configTrackers.m的时候,你可能添加一个自己的tracker到已知的结构体当中会遇到运行main_running函数时出现错误,这个时候尝试单独把自己的tracker作为一个结构体,把其他的算法都注释掉,只剩下自己的tracker然后试试,因为这个时候其他的tracker结果都已经保存下来了,只需要自己的tracker的结果出来就好了。

其他的应该就没什么问题了!

————————————————————————————————————————————


出现的问题总结:
1、自己选的run_tracker.m当中有错误,没能正确调用自己的跟踪算法, 仔细检查是否调用正确,可以在mainrunning.m当中144行左右找到 eval(funcName);,单步调试,看看是否能进入到自己的函数当中。


2、”未定义函数或变量v1_setup“
这个错误是因为需要安装一个包,在这里下载,配置好之后把路径添加进去,直接点错误进去就在上面添加就好了。
暂时收集到大家问的比较多的就是这两个。有什么问题欢迎随时说来问。

阅读更多
想对作者说点什么?

博主推荐

换一批

没有更多推荐了,返回首页