Mercurial > hg > match-vamp
diff src/FeatureConditioner.cpp @ 116:eed5f9594268 refactors
Add OutputDerivative, for completeness, & make DistanceMetric cope with negative feature values
author | Chris Cannam |
---|---|
date | Fri, 05 Dec 2014 10:05:31 +0000 |
parents | 593054bf6476 |
children | 8e240bbea845 |
line wrap: on
line diff
--- a/src/FeatureConditioner.cpp Thu Dec 04 16:51:13 2014 +0000 +++ b/src/FeatureConditioner.cpp Fri Dec 05 10:05:31 2014 +0000 @@ -37,7 +37,10 @@ vector<double> out(size, 0.0); double totalEnergy = 0; - if (m_params.order == OutputRectifiedDerivative) { + + switch (m_params.order) { + + case OutputRectifiedDerivative: for (int i = 0; i < size; i++) { totalEnergy += feature[i]; if (feature[i] > m_prev[i]) { @@ -46,11 +49,21 @@ out[i] = 0; } } - } else { + break; + + case OutputDerivative: for (int i = 0; i < size; i++) { + totalEnergy += feature[i]; + out[i] = feature[i] - m_prev[i]; + } + break; + + case OutputFeatures: + for (int i = 0; i < size; i++) { + totalEnergy += feature[i]; out[i] = feature[i]; - totalEnergy += out[i]; } + break; } if (m_ltAverage == 0) {