]> rtime.felk.cvut.cz Git - hercules2020/kcf.git/blobdiff - graphGen.sh
Remove debug printf
[hercules2020/kcf.git] / graphGen.sh
index 55c4fd4fb9d6f06ab536cdfe9b0f2ed09bff9d2a..6652f417c49ac62329c836366afc445939fd039d 100755 (executable)
@@ -1,16 +1,16 @@
-#!/usr/bin/bash
+#!/usr/bin/env bash
 
 USE_FPS=0
+SORT=0
 
-mkdir -p plot-data
-cd plot-data
-
-while getopts ":f" opt
+while getopts "fs" opt
 do
     case $opt in
         f)
             USE_FPS=1
-            break
+            ;;
+        s)
+            SORT=1
             ;;
         \?)
             echo "Invalid option -$OPTARG" >&2
@@ -23,60 +23,30 @@ shift $((OPTIND-1))
 
 for log in "$@"
 do
-    tracker_version=${log#*-}
-    tracker_version=${tracker_version%/*}
-
-    dataset=${log#*/}
-    dataset=${dataset#*-}
-    dataset=${dataset%-*}
-
-    mkdir -p "$dataset"
 
-    cd "$dataset"
+    [[ "$log" =~ build-(.*)/kcf_vot-(.*)-(.*).log ]]
+    tracker_version=${BASH_REMATCH[1]}
+    arguments=${BASH_REMATCH[3]}
+    dataset=${BASH_REMATCH[2]}
 
-    arguments=${log%.*}
-    arguments=${arguments#*/*-*-}
+    data_file=${log%.log}.dat
 
-    mkdir -p "$arguments"
-
-    cd "$arguments"
-
-    data_file="$tracker_version".dat
-    touch "$data_file"
+    (echo ${tracker_version}-${arguments}-${dataset}; grep -e '->' $log | grep -o '[0-9.]*ms' ) > $data_file
+done
 
-    echo "${tracker_version^}" >> "$data_file"
+getavg() { grep Average $1 | grep -o '[0-9.]*ms'; }
+set -- $(for i in $@; do avg=$(getavg $i); test "$avg" && echo $i $avg; done \
+       | if (($SORT == 1)); then sort -n -k2; else cat; fi \
+       | cut -f1 -d' ')
 
-    while IFS= read -r line 
-    do
-        #Skip last line
-        if [[ $line != *"->"* ]]; then
-           continue
-        fi
-        time=${line%,*,*}
-        time=${time//[!.0-9]/}
-        if [ "$USE_FPS" -eq "1" ]; then
-            time=$(bc <<< "scale=3;(1/$time)*1000;")
-        fi
-        echo "$time" >> "$data_file"
-    done < "../../../${log}"
 
-    cd ../../
-done
+paste ${@//.log/.dat} > all
 
-for directory in *
-do
-    cd "$directory"
-    for subdirectory in *
-    do
-        cd "$subdirectory"
-        paste *.dat > all
-        gnuplot -persist << EOFMarker
+gnuplot -persist << EOFMarker
         file = 'all'
         header = system('head -1 '.file)
         N = words(header)
 
-        set title "${directory^}-${subdirectory}"
-
         if ($USE_FPS == 1) {
            set ylabel "FPS"
         } else {
@@ -88,13 +58,13 @@ do
 
         set style data boxplot
         set style boxplot nooutliers
+        set grid
         unset key
-        plot for [i=1:N] file using (i):i
+        if ($USE_FPS == 1) {
+           plot [][0:] for [i=1:N] file using (i):(1000/column(i))
+        } else {
+          plot [][0:] for [i=1:N] file using (i):i
+        }
 EOFMarker
-        cd ..
-    done
-    cd ..
-done
 
-cd ..
-rm -r plot-data
+rm all