forked from votchallenge/toolkit-legacy
-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathvot_experiments.m
68 lines (39 loc) · 1.58 KB
/
vot_experiments.m
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
function vot_experiments(tracker, sequences, experiments)
summary = cell(length(experiments), 1);
for e = 1:length(experiments)
name = experiments{e}.name;
execution = experiments{e}.execution;
converter = experiments{e}.converter;
if exist(['execution_', execution]) ~= 2 %#ok<EXIST>
print_debug('Warning: execution function %s not found. Skipping.', execution);
continue;
end;
execution_function = str2func(['execution_', execution]);
print_text('Running Experiment "%s" ...', name);
print_indent(1);
experiment_directory = fullfile(tracker.directory, experiments{e}.name);
arguments = {};
if isfield(experiments{e}, 'parameters')
arguments = struct2opt(experiments{e}.parameters);
end;
summary{e} = execution_function(tracker, convert_sequences(sequences, converter), experiment_directory, arguments{:});
print_indent(-1);
end;
if get_global_variable('report', 0)
print_text('Generating report ...');
print_indent(1);
reportfile = write_report(sprintf('%s_%s', datestr(now, 30), ...
tracker.identifier), tracker, sequences, experiments, summary);
print_indent(-1);
print_text('Report document written to "%s"', reportfile);
end;
if get_global_variable('pack', 0)
print_text('Packing results ...');
print_indent(1);
resultfile = pack_results(tracker, sequences, experiments);
print_indent(-1);
print_text('Result pack stored to "%s"', resultfile);
else
print_debug('Omitting result packaging.');
end;
print_text('Done.');