Mercurial > hg > match-vamp
comparison src/FeatureConditioner.cpp @ 185:a17b22abd551 re-minimise
Code now builds, DistanceMetric tests fail
author | Chris Cannam |
---|---|
date | Thu, 26 Feb 2015 10:28:23 +0000 |
parents | d1bc89794cd4 |
children | 175c8f044e7c |
comparison
equal
deleted
inserted
replaced
184:6c12db195986 | 185:a17b22abd551 |
---|---|
32 << ", silenceThreshold = " << parameters.silenceThreshold | 32 << ", silenceThreshold = " << parameters.silenceThreshold |
33 << ", decay = " << parameters.decay << endl; | 33 << ", decay = " << parameters.decay << endl; |
34 #endif | 34 #endif |
35 } | 35 } |
36 | 36 |
37 vector<double> | 37 feature_t |
38 FeatureConditioner::process(const vector<double> &feature) | 38 FeatureConditioner::process(const feature_t &feature) |
39 { | 39 { |
40 if (m_prev.empty()) { | 40 if (m_prev.empty()) { |
41 m_prev.resize(feature.size(), 0.0); | 41 m_prev.resize(feature.size(), 0.0); |
42 } | 42 } |
43 if (m_prev.size() != feature.size()) { | 43 if (m_prev.size() != feature.size()) { |
47 return feature; | 47 return feature; |
48 } | 48 } |
49 | 49 |
50 int size = static_cast<int>(feature.size()); | 50 int size = static_cast<int>(feature.size()); |
51 | 51 |
52 vector<double> out(size, 0.0); | 52 feature_t out(size, 0.0); |
53 | 53 |
54 double totalEnergy = 0; | 54 double totalEnergy = 0; |
55 | 55 |
56 switch (m_params.order) { | 56 switch (m_params.order) { |
57 | 57 |
92 for (int i = 0; i < size; i++) { | 92 for (int i = 0; i < size; i++) { |
93 out[i] = 0; | 93 out[i] = 0; |
94 } | 94 } |
95 } else if (m_params.norm == NormaliseToSum1) { | 95 } else if (m_params.norm == NormaliseToSum1) { |
96 for (int i = 0; i < size; i++) { | 96 for (int i = 0; i < size; i++) { |
97 out[i] /= totalEnergy; | 97 out[i] = featurebin_t(out[i] / totalEnergy); |
98 } | 98 } |
99 } else if (m_params.norm == NormaliseToLTAverage) { | 99 } else if (m_params.norm == NormaliseToLTAverage) { |
100 for (int i = 0; i < size; i++) { | 100 for (int i = 0; i < size; i++) { |
101 out[i] /= m_ltAverage; | 101 out[i] = featurebin_t(out[i] / m_ltAverage); |
102 } | 102 } |
103 } | 103 } |
104 | 104 |
105 m_prev = feature; | 105 m_prev = feature; |
106 return out; | 106 return out; |