Chris@72
|
1 #!/bin/sh
|
Chris@72
|
2
|
Chris@72
|
3 trios_path="/home/cannam/Music/TRIOS_dataset"
|
Chris@139
|
4 yc="/home/cannam/code/may/bin/yc"
|
Chris@72
|
5
|
Chris@72
|
6 if [ ! -d "$trios_path" ]; then
|
Chris@72
|
7 echo "TRIOS dataset directory $trios_path not found, giving up"
|
Chris@72
|
8 exit 1
|
Chris@72
|
9 fi
|
Chris@72
|
10
|
Chris@139
|
11 if ! "$yc" -v ; then
|
Chris@139
|
12 echo "Failed to run Yeti compiler yc at $yc_path, giving up";
|
Chris@139
|
13 fi
|
Chris@139
|
14
|
Chris@72
|
15 if ! sonic-annotator -v ; then
|
Chris@72
|
16 echo "Failed to run sonic-annotator (not in PATH?), giving up"
|
Chris@72
|
17 exit 1
|
Chris@72
|
18 fi
|
Chris@72
|
19
|
Chris@72
|
20 VAMP_PATH=../..
|
Chris@72
|
21 export VAMP_PATH
|
Chris@72
|
22
|
Chris@139
|
23 outfile="/tmp/$$"
|
Chris@139
|
24
|
Chris@142
|
25 trap 'rm -f "$outfile" "$outfile.lab"' 0
|
Chris@142
|
26
|
Chris@72
|
27 time sonic-annotator \
|
Chris@72
|
28 --writer csv \
|
Chris@139
|
29 --csv-one-file "$outfile" \
|
Chris@72
|
30 --csv-force \
|
Chris@72
|
31 --default vamp:silvet:silvet:notes \
|
Chris@72
|
32 "$trios_path/take_five/mix.wav"
|
Chris@72
|
33
|
Chris@139
|
34 cat "$outfile" | \
|
Chris@139
|
35 sed 's/^[^,]*,//' | \
|
Chris@139
|
36 while IFS=, read start duration frequency level label; do
|
Chris@139
|
37 end=`echo "$start $duration + p" | dc`
|
Chris@139
|
38 echo -e "$start\t$end\t$frequency"
|
Chris@139
|
39 done > "$outfile.lab"
|
Chris@139
|
40
|
Chris@139
|
41 for ms in 50 100 150; do
|
Chris@139
|
42 echo
|
Chris@139
|
43 echo "Validating against ground truth at $ms ms:"
|
Chris@139
|
44 "$yc" ../evaluation/evaluate_lab.yeti "$ms" "../TRIOS-groundtruth/take_five.lab" "$outfile.lab"
|
Chris@139
|
45 echo
|
Chris@139
|
46 echo "Validating against MIREX submission at $ms ms:"
|
Chris@139
|
47 "$yc" ../evaluation/evaluate_lab.yeti "$ms" "../TRIOS-mirex2012-matlab/take_five/mix.lab" "$outfile.lab"
|
Chris@141
|
48 echo
|
Chris@141
|
49 echo "Validating MIREX against ground truth at $ms ms":
|
Chris@141
|
50 "$yc" ../evaluation/evaluate_lab.yeti "$ms" "../TRIOS-groundtruth/take_five.lab" "../TRIOS-mirex2012-matlab/take_five/mix.lab"
|
Chris@139
|
51 done;
|
Chris@139
|
52
|
Chris@140
|
53 echo
|
Chris@140
|
54
|