SyntheticTest » History » Version 9

Chris Cannam, 2013-11-18 04:12 PM

1 1 Chris Cannam
h1. Synthetic test material
2 1 Chris Cannam
3 6 Chris Cannam
{{>toc}}
4 6 Chris Cannam
5 1 Chris Cannam
h2. Sinusoid at fs/4
6 1 Chris Cannam
7 1 Chris Cannam
In Yeti terms:
8 1 Chris Cannam
9 1 Chris Cannam
<pre>
10 1 Chris Cannam
testStream = manipulate.withDuration 64 (syn.sinusoid 8 2);
11 1 Chris Cannam
cq = cqt { maxFreq = testStream.sampleRate/2, minFreq = 1, binsPerOctave = 4 } testStream;
12 1 Chris Cannam
</pre>
13 2 Chris Cannam
14 2 Chris Cannam
Or to put it another way (in MATLAB this time):
15 2 Chris Cannam
16 2 Chris Cannam
<pre>
17 2 Chris Cannam
test = [0,1,0,-1,0,1,0,-1,0,1,0,-1,0,1,0,-1,0,1,0,-1,0,1,0,-1,0,1,0,-1,0,1,0,-1,0,1,0,-1,0,1,0,-1,0,1,0,-1,0,1,0,-1,0,1,0,-1,0,1,0,-1,0,1,0,-1,0,1,0,-1 ];
18 2 Chris Cannam
out = cqt(test,1,4,4,8)
19 2 Chris Cannam
</pre>
20 2 Chris Cannam
21 2 Chris Cannam
That is, a 64-sample input of 8Hz sample rate containing a sinusoid at fs/4, transformed using CQ parameters fmin = 1, fmax = 4 (or fs/2), and bpo = 4.
22 3 Chris Cannam
23 3 Chris Cannam
h3. Data from MATLAB implementation
24 3 Chris Cannam
25 9 Chris Cannam
!/attachments/download/868/Screenshot%20-%20181113%20-%2016_05_56.png!
26 9 Chris Cannam
27 3 Chris Cannam
<pre>
28 3 Chris Cannam
actual fmin = 1.1892
29 3 Chris Cannam
octaves = 2
30 3 Chris Cannam
weight = 16.3452
31 3 Chris Cannam
drop = 3
32 3 Chris Cannam
kernel size = 32x20
33 3 Chris Cannam
output size = 8x59
34 3 Chris Cannam
</pre>
35 4 Chris Cannam
36 5 Chris Cannam
and the output (magnitudes only):
37 4 Chris Cannam
38 4 Chris Cannam
<pre>
39 4 Chris Cannam
  Columns 1 through 8
40 4 Chris Cannam
41 4 Chris Cannam
    0.0001         0    0.0002         0    0.0001         0    0.0002         0
42 4 Chris Cannam
    0.0001         0    0.0001         0    0.0002         0    0.0004         0
43 4 Chris Cannam
    0.0001         0    0.0001         0    0.0003         0    0.0011         0
44 4 Chris Cannam
    0.0002         0    0.0000         0    0.0003         0    0.0013         0
45 4 Chris Cannam
         0         0         0         0         0         0         0         0
46 4 Chris Cannam
         0         0         0         0         0         0         0         0
47 4 Chris Cannam
         0         0         0         0         0         0         0         0
48 4 Chris Cannam
         0         0         0         0         0         0         0         0
49 4 Chris Cannam
50 4 Chris Cannam
  Columns 9 through 16
51 4 Chris Cannam
52 4 Chris Cannam
    0.0011         0    0.0044         0    0.0980         0    0.3084         0
53 4 Chris Cannam
    0.0018         0    0.0082         0    0.0468         0    0.3858         0
54 4 Chris Cannam
    0.0050         0    0.0243         0    0.1211         0    0.6447         0
55 4 Chris Cannam
    0.0065         0    0.0309         0    0.1543         0    0.8114         0
56 4 Chris Cannam
         0         0         0         0    0.0002    0.0086    0.2742    1.1185
57 4 Chris Cannam
         0         0         0         0    0.0011    0.0010    0.0711    0.7025
58 4 Chris Cannam
         0         0         0         0    0.0001    0.0002    0.0099    0.5388
59 4 Chris Cannam
         0         0         0         0    0.0001    0.0019    0.0006    0.4688
60 4 Chris Cannam
61 4 Chris Cannam
  Columns 17 through 24
62 4 Chris Cannam
63 4 Chris Cannam
    0.3962         0    0.2374         0    0.0484         0    0.0032         0
64 4 Chris Cannam
    0.6804         0    0.3858         0    0.0468         0    0.0082         0
65 4 Chris Cannam
    1.1968         0    0.6447         0    0.1211         0    0.0243         0
66 4 Chris Cannam
    1.6297         0    0.8114         0    0.1544         0    0.0309         0
67 4 Chris Cannam
    2.1085    2.4893    2.4383    2.4312    2.4314    2.4307    2.4311    2.4311
68 4 Chris Cannam
    1.3506    0.9697    0.7693    0.7692    0.7688    0.7693    0.7691    0.7691
69 4 Chris Cannam
    0.8193    0.0813    0.0491    0.0649    0.0499    0.0643    0.0493    0.0646
70 4 Chris Cannam
    0.7188    0.0108    0.0492    0.0010    0.0493    0.0001    0.0488    0.0000
71 4 Chris Cannam
72 4 Chris Cannam
  Columns 25 through 32
73 4 Chris Cannam
74 4 Chris Cannam
    0.0007         0    0.0003         0    0.0006         0    0.0019         0
75 4 Chris Cannam
    0.0019         0    0.0005         0    0.0004         0    0.0032         0
76 4 Chris Cannam
    0.0051         0    0.0012         0    0.0019         0    0.0086         0
77 4 Chris Cannam
    0.0062         0    0.0008         0    0.0021         0    0.0111         0
78 4 Chris Cannam
    2.4311    2.4311    2.4311    2.4311    2.4311    2.4311    2.4311    2.4311
79 4 Chris Cannam
    0.7691    0.7691    0.7691    0.7691    0.7691    0.7691    0.7691    0.7691
80 4 Chris Cannam
    0.0493    0.0646    0.0493    0.0646    0.0493    0.0646    0.0493    0.0646
81 4 Chris Cannam
    0.0488    0.0000    0.0488    0.0000    0.0488    0.0000    0.0488    0.0000
82 4 Chris Cannam
83 4 Chris Cannam
  Columns 33 through 40
84 4 Chris Cannam
85 4 Chris Cannam
    0.0168         0    0.1633         0    0.3646         0    0.3646         0
86 4 Chris Cannam
    0.0143         0    0.1184         0    0.5325         0    0.6406         0
87 4 Chris Cannam
    0.0414         0    0.2181         0    0.9118         0    1.1190         0
88 4 Chris Cannam
    0.0532         0    0.2679         0    1.1926         0    1.5069         0
89 4 Chris Cannam
    2.4311    2.4309    2.4305    2.4835    2.3188    1.4767    0.4927    0.0454
90 4 Chris Cannam
    0.7692    0.7695    0.7692    0.7707    1.1679    1.2359    0.4175    0.0087
91 4 Chris Cannam
    0.0494    0.0639    0.0494    0.0651    0.3139    0.8970    0.2914    0.0008
92 4 Chris Cannam
    0.0490    0.0000    0.0490    0.0024    0.2044    0.8567    0.1557    0.0024
93 4 Chris Cannam
94 4 Chris Cannam
  Columns 41 through 48
95 4 Chris Cannam
96 4 Chris Cannam
    0.1633         0    0.0168         0    0.0019         0    0.0003         0
97 4 Chris Cannam
    0.2373         0    0.0229         0    0.0052         0    0.0012         0
98 4 Chris Cannam
    0.3956         0    0.0706         0    0.0144         0    0.0029         0
99 4 Chris Cannam
    0.4838         0    0.0905         0    0.0184         0    0.0037         0
100 4 Chris Cannam
    0.0000    0.0002         0         0         0         0         0         0
101 4 Chris Cannam
    0.0012    0.0004         0         0         0         0         0         0
102 4 Chris Cannam
    0.0002    0.0007         0         0         0         0         0         0
103 4 Chris Cannam
    0.0002    0.0000         0         0         0         0         0         0
104 4 Chris Cannam
105 4 Chris Cannam
  Columns 49 through 56
106 4 Chris Cannam
107 4 Chris Cannam
    0.0003         0    0.0000         0    0.0000         0    0.0000         0
108 4 Chris Cannam
    0.0003         0    0.0000         0    0.0000         0    0.0000         0
109 4 Chris Cannam
    0.0006         0    0.0001         0    0.0000         0    0.0000         0
110 4 Chris Cannam
    0.0009         0    0.0002         0    0.0000         0    0.0000         0
111 4 Chris Cannam
         0         0         0         0         0         0         0         0
112 4 Chris Cannam
         0         0         0         0         0         0         0         0
113 4 Chris Cannam
         0         0         0         0         0         0         0         0
114 4 Chris Cannam
         0         0         0         0         0         0         0         0
115 4 Chris Cannam
116 4 Chris Cannam
  Columns 57 through 59
117 4 Chris Cannam
118 4 Chris Cannam
    0.0000         0    0.0000
119 4 Chris Cannam
    0.0000         0    0.0000
120 4 Chris Cannam
    0.0000         0    0.0000
121 4 Chris Cannam
    0.0000         0    0.0000
122 4 Chris Cannam
         0         0         0
123 4 Chris Cannam
         0         0         0
124 4 Chris Cannam
         0         0         0
125 4 Chris Cannam
         0         0         0
126 6 Chris Cannam
</pre>
127 6 Chris Cannam
128 8 Chris Cannam
h3. Data from Yeti implementation
129 1 Chris Cannam
130 8 Chris Cannam
h4. Process data
131 8 Chris Cannam
132 8 Chris Cannam
<pre>
133 8 Chris Cannam
sampleRate = 8
134 8 Chris Cannam
maxFreq = 4
135 8 Chris Cannam
minFreq = 1
136 8 Chris Cannam
actualMinFreq = 1.189207115002721
137 8 Chris Cannam
octaves = 2
138 8 Chris Cannam
binsPerOctave = 4
139 8 Chris Cannam
</pre>
140 8 Chris Cannam
141 8 Chris Cannam
h4. Kernel data
142 8 Chris Cannam
143 6 Chris Cannam
That is,
144 6 Chris Cannam
145 6 Chris Cannam
<pre>
146 7 Chris Cannam
> (load cqtkernel).makeKernel { binsPerOctave = 4, maxFreq = 4, sampleRate = 8 }
147 7 Chris Cannam
</pre>
148 7 Chris Cannam
149 7 Chris Cannam
gives
150 7 Chris Cannam
151 6 Chris Cannam
<pre>
152 6 Chris Cannam
minFreq = 2.378414230005442, bigQ = 5.285213507883246, maxNK = 18, minNK = 11, atomHop = 3, firstCentre = 9, fftSize = 32
153 6 Chris Cannam
winNr = 5, lastCentre = 21, fftHop = 15
154 6 Chris Cannam
density = 0.6953125 (445 of 640)
155 6 Chris Cannam
weight = 16.34515230237943
156 6 Chris Cannam
{
157 6 Chris Cannam
   atomSpacing = 3,
158 6 Chris Cannam
   atomsPerFrame = 5,
159 6 Chris Cannam
   bigQ = 5.285213507883246,
160 6 Chris Cannam
   binsPerOctave = 4,
161 6 Chris Cannam
   fftHop = 15,
162 1 Chris Cannam
   fftSize = 32,
163 6 Chris Cannam
   firstCentre = 9,
164 8 Chris Cannam
   kernel = { ... , size = { columns = 32, rows = 20 } },
165 6 Chris Cannam
   maxFreq = 4,
166 6 Chris Cannam
   minFreq = 2.378414230005442
167 6 Chris Cannam
}
168 4 Chris Cannam
</pre>