跟踪篇(1)--Visual_Tracker_Benchmark_v1.0完整配置+踩坑实录

又要接受新的挑战了,因为实习公司有要求,需要进行视频跟踪,所以LZ又成了小白,但是导师说要先用传统方法,刚好LZ最近也很想把传统的图像处理再恶补一下,所以,就加油干吧!

第一步:Visual_Tracker_Benchmark_v1.0下载

官网是在:http://cvlab.hanyang.ac.kr/tracker_benchmark/benchmark_v10.html
但是,网速渣渣,下了两次都是文件已损坏,所以,建议还是科学上网,或者到GitHub上去下载,具体的网址为:https://github.com/liulj13/tracker_benchmark_v1.0

第二步:踩坑实录

首先,LZ先搜了一下,知道Visual_Tracker_Benchmark这个还是有不少坑的,所以早已做好心理准备,下面是大型踩坑现场,请注意验收!!

首先运行了下main_running.m文件,这样简单粗暴,必然出现ERROR了!

在这里插入图片描述
因为Matlab是不带vl_feat这个包的,所以需要自行下载,下载的网址为:http://www.vlfeat.org/download.html, 对下载的包进行解压缩,然后在main_running.m文件中修改成对应的安装路径,即可,具体如图所示:

在这里插入图片描述
问题解决,然后第二个ERROR
在这里插入图片描述这个问题就很明显了,因为LZ没有下对应的OTB数据集,所以就会产生报错,对应OTB数据集的下载地址如下:http://cvlab.hanyang.ac.kr/tracker_benchmark/datasets.html 看自己的需求下吧,这个可能要好一会儿,小伙伴们可以看会儿paper啦!

下载好了后要将数据进行解压,修改对应代码的路径,如下图所示:
在这里插入图片描述
LZ是放在G盘下,则修改configSeqs.m中的basepath就可以了。

下面是第三个ERROR:
在这里插入图片描述
出现这个原因在网上有很多稀奇古怪的方法,也许有些帖子是亲身测试的,但是有些LZ觉得简直是胡说!误人子弟!

解决方案如下,一般出现这种问题是因为trackers文件夹下并没有添加tracker,换句话说和LZ一样下载完数据直接就运行main_running.m文件。解决方案如下,需要小伙伴自行下载一个tracker,最好是适用于OTB测试集,在小伙伴的介绍下,LZ下载了staple,下载网址如下:https://github.com/bertinetto/staple,

然后对configTrackers.m进行修改,把其余的跟踪器都注释掉,添加对应于S tapled 结构,修改方式如下:

trackersTEST={
    struct('name', 'Staple', 'namePaper', 'Staple')
    };
trackers = [trackersTEST];

具体的文件结构如下:注意Staple的大小写问题
在这里插入图片描述
然后又遇到下一个错误:
在这里插入图片描述
其实这个bug还是很好找的,原因很简单,即使下载的数据集中并没有这个文件名,其实LZ也很有疑惑,因为官网如图所示:
在这里插入图片描述
相信小伙伴其实很容易计算出7*7=49,那为什么叫OTB50呢,实际上它是有50个序列的,其中skating2[1,2]有两个跟踪目标,所以可以看作是两个视频序列,所以一共有50组序列,还是很容易理解的。同理,OTB100除了包含OTB50还有另外49组序列,其中Jogging也有两个跟踪目标,所以按照
在这里插入图片描述
所以把原始的Jogging分成两个文件夹,然后按照如下命名就行了,分别包含一个groundtruth文件就可以了。

后面运行run_Staple的时候发现又存在一个问题,细心的小伙伴可能已经发现了,LZ只保留了三组数据,这样方便调试,但是会出现如下的情况:

在这里插入图片描述
或者出现下面的情形:
在这里插入图片描述
通常会出现上述的两种情况,一种是运行起来全部都是error,还有一种是Empty all, error是首次运行结果出错,Empty all是已经运行过,且结果出错,就会显示Empty all。具体出错的原因有很多,需要小伙伴们单点调试程序来完成,以Staple官网下载的程序为例,做一个分析,首先找到报错位置,发现是Staple本身运行出错,然后单独运行Staple,会出现如下错误:
在这里插入图片描述
在最后调试发现是Staple中间程序出错,然后对程序进行debug,加上如下语句:

    if params.visualization
        params.videoPlayer = vision.VideoPlayer('Position', [100 100 [size(im,2), size(im,1)]+30]);
    end

保存后再进行运行,在运行前一定要把results里面的之前跑的错误结果(都是.mat文件)删除。

最后运行结果如下:
在这里插入图片描述
在这里插入图片描述
最后吐槽下,数据集下的是真的慢,下载会有文件损坏,然后又会各种报错,不过这个都是小问题啦!

每天都是以踩坑开始的O(∩_∩)O!

评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值