Mercurial > hg > vamp-tempogram
comparison AutocorrelationProcessor.cpp @ 27:a3a37c8dcee7
* Fixed bug causing ACT not to work
author | Carl Bussey <c.bussey@se10.qmul.ac.uk> |
---|---|
date | Wed, 20 Aug 2014 16:48:54 +0100 |
parents | ff6110f1144b |
children | 723af5b3303a |
comparison
equal
deleted
inserted
replaced
26:ff6110f1144b | 27:a3a37c8dcee7 |
---|---|
46 | 46 |
47 vector<float> AutocorrelationProcessor::processBlock() const | 47 vector<float> AutocorrelationProcessor::processBlock() const |
48 { | 48 { |
49 vector<float> autocorrelation; | 49 vector<float> autocorrelation; |
50 | 50 |
51 int N = m_windowLength/m_lagIncrement; | 51 int N = m_windowLength; |
52 | 52 |
53 for (int lag = 0; lag < N; lag++){ | 53 for (int lag = 0; lag < N; lag++){ |
54 float sum = 0; | 54 float sum = 0; |
55 | 55 |
56 for (int n = 0; n < (int)m_windowLength-lag; n++){ | 56 for (int n = 0; n < N-lag; n++){ |
57 sum += m_blockInput[lag]*m_blockInput[n+lag]; | 57 sum += m_blockInput[n]*m_blockInput[n+lag]; |
58 } | 58 } |
59 autocorrelation.push_back(sum/(2*N + 1 - lag)); | 59 autocorrelation.push_back(sum/(2*N + 1 - lag)); |
60 } | 60 } |
61 | 61 |
62 return autocorrelation; | 62 return autocorrelation; |