Windows 10 x64,
Matlab版本为MATLAB2018a,百度网盘链接:链接:
https://pan.baidu.com/s/1dSoN9rUVjvRqIoueNqn6Fg
提取码:h8qo
VS版本为VS2015,,百度网盘链接:链接:
https://pan.baidu.com/s/11-1wrtwcNnXEeccGUvfdrA
提取码:46bn
VOT是针对跟踪算法的挑战赛,每年举办一次,而且组委会自己制定了一套评价指标和方法用于跟踪器的评分。基于Matlab的工具Vot-tookit官网http://votchallenge.net/
,其在github的下载https://github.com/votchallenge/vot-toolkit.git
Trax主要作用就是建立各种语言跟踪器与VOT-toolkit的传输协议,方便对于不同语言的trackers进行统一分析。
github下载为:https://github.com/votchallenge/trax.git
这个有github的下载网站,但是我给整忘了,只有26KB。先放个百度网盘链接,回头找到网站再放过来。链接:https://pan.baidu.com/s/1qJjbN7NXWd0Zxt56AEGvBQ
提取码:5d3t
matlab程序运行会自动检测数据集,没有会自动下载,但是下载很慢,所以建议自己事先下载好数据集,百度网盘会员到期了,懒的上传了,这里放个其他博主的链接(狗头保命):链接:https://pan.baidu.com/s/1oJdgY5PpfN8Ep85i8nVmdQ
提取码:dlw6
但是后面测试跟踪算法的时候,需要算法的一个list.txt文件,我测试的是VOT2018数据集(VOT2017和VOT2018序列是一样的),减少大家的麻烦,放个百度网盘链接(因为不大)。链接:https://pan.baidu.com/s/1PV0q9_H19tdr6dtFev9ZbQ
提取码:cyh6
1.1 将VOT-toolkit压缩包解压在一个位置,然后在其里面新建文件夹native,将Trax-master解压在native文件夹,并将名字修改为trax。
1.2 依次进入tracker>examples>,将下载的ncc中的matlab文件夹放在这里。
1.3 进入workspace,新建文件夹sequences,将数据集解压缩后放在这里,把list.txt文件也放在这里
运行toolkit_path.m,添加路径
进入workspace,运行/workspace/workspace_create.m,这一步会创建多个m文件。具体步骤如下:
2.1选择数据集(我选择的是VOT2018)
2.2选择算法(我选择的ncc)
2.3 选择语言(我选择的是Matlab)
2.4 创建成功
1、这是生成的tracker_ncc.m文件
error('Tracker not configured! Please edit the tracker_ncc.m file.'); % Remove this line after proper configuration
% The human readable label for the tracker, used to identify the tracker in reports
% If not set, it will be set to the same value as the identifier.
% It does not have to be unique, but it is best that it is.
tracker_label = [];
% For MATLAB implementations we have created a handy function that generates the appropritate
% command that will run the matlab executable and execute the given script that includes your
% tracker implementation.
%
% Please customize the line below by substituting the first argument with the name of the
% script (not the .m file but just the name of the script as you would use it in within Matlab)
% of your tracker and also provide the path (or multiple paths) where the tracker sources
% are found as the elements of the cell array (second argument).
tracker_command = generate_matlab_command('' , {'' });
tracker_interpreter = 'matlab';
% tracker_linkpath = {}; % A cell array of custom library directories used by the tracker executable (optional)
注释error行
tracker_commend写算法文件名字和路径
这是我修改后的tracker_ncc.m(路径的地方加了斜杠\)
% error('Tracker not configured! Please edit the tracker_ncc.m file.'); % Remove this line after proper configuration
% The human readable label for the tracker, used to identify the tracker in reports
% If not set, it will be set to the same value as the identifier.
% It does not have to be unique, but it is best that it is.
tracker_label = ['ncc'];
% For MATLAB implementations we have created a handy function that generates the appropritate
% command that will run the matlab executable and execute the given script that includes your
% tracker implementation.
%
% Please customize the line below by substituting the first argument with the name of the
% script (not the .m file but just the name of the script as you would use it in within Matlab)
% of your tracker and also provide the path (or multiple paths) where the tracker sources
% are found as the elements of the cell array (second argument).
tracker_command = generate_matlab_command('ncc', {'F:\VOT\c\vot1\tracker\examples\matlab\'});
tracker_interpreter = 'matlab';
% tracker_linkpath = {}; % A cell array of custom library directories used by the tracker executable (optional)
2、run_test.m(这只是为了测试,可以直接跳到下一步)
只需要在run_test.m文件中,路径后面加斜杠
修改完的run_test.m文件为:
% This script can be used to test the integration of a tracker to the
% framework.
addpath('F:\VOT\c\vot1\'); toolkit_path; % Make sure that VOT toolkit is in the path
[sequences, experiments] = workspace_load();
tracker = tracker_load('ncc');
workspace_test(tracker, sequences);
运行run_test.m
选择序列,出现一个十字黑线,鼠标点击一下一帧(只是测试的话,空格可以快速,嘿嘿,拼手速可以忽略)
3、run_experiment.m
为了看是否能跑通,我这里只测试了三个序列(主要是懒),当然跑多少序列就需要修改/workspace/sequences/list.txt文件,想跑几个就跑几个。
这是我的run_experiments.m(在自动生成的文件中路径加了斜杠)
% This script can be used to execute the experiments for a single tracker
% You can copy and modify it to create another experiment launcher
addpath('F:\VOT\c\vot1\'); toolkit_path; % Make sure that VOT toolkit is in the path
[sequences, experiments] = workspace_load();
tracker = tracker_load('ncc');
workspace_evaluate(tracker, sequences, experiments);
然后我就成功了
这是生成的/workspace/results/文件夹内容。
4、run_analysis.m
这是原始生成的run_analysis.m
% This script can be used to perform a comparative analyis of the experiments
% in the same manner as for the VOT challenge
% You can copy and modify it to create a different analyis
addpath('F:\VOT\c\vot1'); toolkit_path; % Make sure that VOT toolkit is in the path
[sequences, experiments] = workspace_load();
error('Analysis not configured! Please edit run_analysis.m file.'); % Remove this line after proper configuration
trackers = tracker_list('ncc','TODO'); % TODO: add more trackers here
workspace_analyze(trackers, sequences, experiments, 'report_ncc', 'Title', 'Report for vot2018');
在路径后面加斜杠
注释error行
因为我们只比较一个算法,去掉taackers中’TODO’
这是修改后的run_analysis.m
% This script can be used to perform a comparative analyis of the experiments
% in the same manner as for the VOT challenge
% You can copy and modify it to create a different analyis
addpath('F:\VOT\c\vot1\'); toolkit_path; % Make sure that VOT toolkit is in the path
[sequences, experiments] = workspace_load();
% error('Analysis not configured! Please edit run_analysis.m file.'); % Remove this line after proper configuration
trackers = tracker_list('ncc'); % TODO: add more trackers here
workspace_analyze(trackers, sequences, experiments, 'report_ncc', 'Title', 'Report for vot2018');
运行run_analysis.m
在/workspace/reports中生成所有结果的分析图和表,如下图
在images文件夹中存放了算法的整体数据集以及单个序列的AR图,expected_overlaps图和Rank图等。
1、
Tracker execution interrupted: Unable to establish connection.
TraX support not detected.
错误使用 tracker_load (line 127)
Tracker has not passed the TraX support test.
解决办法:将vot.m文件copy到测试跟踪算法目录下(因为我测试了别的算法,哈哈)
2、
Tracker execution interrupted: Did not receive response.
错误使用 traxclient
Did not receive response.
解决办法:代码错误,检查代码。我在测试KCF的时候,是读取的问题。
3、如果想重新加载其他数据集,并重新配置workspace.
删除/workspace/configuration.m
删除/cache下的mat文件
删除native文件夹下的除了trax文件夹的其他文件
下一步写一写配置自己算法的具体流程
随缘更新。。。