]> rtime.felk.cvut.cz Git - hercules2020/kcf.git/blob - graphGen.sh
Remove debug printf
[hercules2020/kcf.git] / graphGen.sh
1 #!/usr/bin/env bash
2
3 USE_FPS=0
4 SORT=0
5
6 while getopts "fs" opt
7 do
8     case $opt in
9         f)
10             USE_FPS=1
11             ;;
12         s)
13             SORT=1
14             ;;
15         \?)
16             echo "Invalid option -$OPTARG" >&2
17             exit 1
18             ;;
19     esac
20 done
21
22 shift $((OPTIND-1))
23
24 for log in "$@"
25 do
26
27     [[ "$log" =~ build-(.*)/kcf_vot-(.*)-(.*).log ]]
28     tracker_version=${BASH_REMATCH[1]}
29     arguments=${BASH_REMATCH[3]}
30     dataset=${BASH_REMATCH[2]}
31
32     data_file=${log%.log}.dat
33
34     (echo ${tracker_version}-${arguments}-${dataset}; grep -e '->' $log | grep -o '[0-9.]*ms' ) > $data_file
35 done
36
37 getavg() { grep Average $1 | grep -o '[0-9.]*ms'; }
38 set -- $(for i in $@; do avg=$(getavg $i); test "$avg" && echo $i $avg; done \
39         | if (($SORT == 1)); then sort -n -k2; else cat; fi \
40         | cut -f1 -d' ')
41
42
43 paste ${@//.log/.dat} > all
44
45 gnuplot -persist << EOFMarker
46         file = 'all'
47         header = system('head -1 '.file)
48         N = words(header)
49
50         if ($USE_FPS == 1) {
51            set ylabel "FPS"
52         } else {
53           set ylabel "Time [ms]"
54         }
55         set xtics rotate
56         set xtics ('' 1)
57         set for [i=1:N] xtics add (word(header, i) i)
58
59         set style data boxplot
60         set style boxplot nooutliers
61         set grid
62         unset key
63         if ($USE_FPS == 1) {
64            plot [][0:] for [i=1:N] file using (i):(1000/column(i))
65         } else {
66           plot [][0:] for [i=1:N] file using (i):i
67         }
68 EOFMarker
69
70 rm all