Mercurial > hg > match-vamp
comparison src/DistanceMetric.cpp @ 186:af6120a32063 re-minimise
Fix tests
author | Chris Cannam |
---|---|
date | Thu, 26 Feb 2015 10:38:59 +0000 |
parents | a17b22abd551 |
children | 48f9c50587dc |
comparison
equal
deleted
inserted
replaced
185:a17b22abd551 | 186:af6120a32063 |
---|---|
25 //#define DEBUG_DISTANCE_METRIC 1 | 25 //#define DEBUG_DISTANCE_METRIC 1 |
26 | 26 |
27 template <> uint8_t | 27 template <> uint8_t |
28 DistanceMetric::scaleIntoRange(double distance) | 28 DistanceMetric::scaleIntoRange(double distance) |
29 { | 29 { |
30 return uint8_t(m_params.scale * distance); | 30 double scaled = m_params.scale * distance; |
31 if (scaled < 0) scaled = 0; | |
32 if (scaled > 255) scaled = 255; | |
33 return uint8_t(scaled); | |
31 } | 34 } |
32 | 35 |
33 template <> float | 36 template <> float |
34 DistanceMetric::scaleIntoRange(double distance) | 37 DistanceMetric::scaleIntoRange(double distance) |
35 { | 38 { |
49 cerr << "*** DistanceMetric: norm = " << m_params.norm | 52 cerr << "*** DistanceMetric: norm = " << m_params.norm |
50 << endl; | 53 << endl; |
51 #endif | 54 #endif |
52 } | 55 } |
53 | 56 |
57 distance_t | |
58 DistanceMetric::scaleValueIntoDistanceRange(double value) | |
59 { | |
60 return scaleIntoRange<distance_t>(value); | |
61 } | |
62 | |
54 distance_t | 63 distance_t |
55 DistanceMetric::calcDistance(const feature_t &f1, | 64 DistanceMetric::calcDistance(const feature_t &f1, |
56 const feature_t &f2) | 65 const feature_t &f2) |
57 { | 66 { |
58 double d = 0; | 67 double d = 0; |