comparison test/TestDistanceMetric.cpp @ 146:214b72d55796 noise

Update unit tests
author Chris Cannam
date Fri, 16 Jan 2015 16:48:55 +0000
parents 6914a6a01ffc
children a17b22abd551
comparison
equal deleted inserted replaced
145:ecfb4ada171b 146:214b72d55796
32 vector<double> 32 vector<double>
33 e1 = getTestFeature(1), 33 e1 = getTestFeature(1),
34 e2 = getTestFeature(2), 34 e2 = getTestFeature(2),
35 e0 = getTestFeature(0); 35 e0 = getTestFeature(0);
36 36
37 BOOST_CHECK_EQUAL(dm.calcDistance(e0, e0), 0.0); 37 double noise = 1e-3 * 4;
38 BOOST_CHECK_EQUAL(dm.calcDistance(e1, e0), 6.0); 38
39 BOOST_CHECK_EQUAL(dm.calcDistance(e0, e1), 6.0); 39 BOOST_CHECK_EQUAL(dm.calcDistance(e0, e0), 0.0 + noise);
40 BOOST_CHECK_EQUAL(dm.calcDistance(e1, e1), 0.0); 40 BOOST_CHECK_EQUAL(dm.calcDistance(e1, e0), 6.0 + noise);
41 BOOST_CHECK_EQUAL(dm.calcDistance(e1, e2), 6.0); 41 BOOST_CHECK_EQUAL(dm.calcDistance(e0, e1), 6.0 + noise);
42 BOOST_CHECK_EQUAL(dm.calcDistance(e0, e2), 12.0); 42 BOOST_CHECK_EQUAL(dm.calcDistance(e1, e1), 0.0 + noise);
43 BOOST_CHECK_EQUAL(dm.calcDistance(e1, e2), 6.0 + noise);
44 BOOST_CHECK_EQUAL(dm.calcDistance(e0, e2), 12.0 + noise);
43 } 45 }
44 46
45 BOOST_AUTO_TEST_CASE(sum) 47 BOOST_AUTO_TEST_CASE(sum)
46 { 48 {
47 DistanceMetric::Parameters params; 49 DistanceMetric::Parameters params;
50 vector<double> 52 vector<double>
51 e1 = getTestFeature(1), 53 e1 = getTestFeature(1),
52 e2 = getTestFeature(2), 54 e2 = getTestFeature(2),
53 e0 = getTestFeature(0); 55 e0 = getTestFeature(0);
54 56
55 BOOST_CHECK_EQUAL(dm.calcDistance(e0, e0), 0.0); 57 double noise = 1e-3 * 4;
58
59 BOOST_CHECK_EQUAL(dm.calcDistance(e0, e0), 1.0);
56 BOOST_CHECK_EQUAL(dm.calcDistance(e1, e0), 1.0); 60 BOOST_CHECK_EQUAL(dm.calcDistance(e1, e0), 1.0);
57 BOOST_CHECK_EQUAL(dm.calcDistance(e0, e1), 1.0); 61 BOOST_CHECK_EQUAL(dm.calcDistance(e0, e1), 1.0);
58 BOOST_CHECK_EQUAL(dm.calcDistance(e1, e1), 0.0); 62 BOOST_CHECK_EQUAL(dm.calcDistance(e1, e1), noise / (12.0 + noise));
59 BOOST_CHECK_EQUAL(dm.calcDistance(e1, e2), 1.0/3.0); 63 BOOST_CHECK_EQUAL(dm.calcDistance(e1, e2), (6.0 + noise) / (18.0 + noise));
60 BOOST_CHECK_EQUAL(dm.calcDistance(e0, e2), 1.0); 64 BOOST_CHECK_EQUAL(dm.calcDistance(e0, e2), 1.0);
61 } 65 }
62 66
63 BOOST_AUTO_TEST_SUITE_END() 67 BOOST_AUTO_TEST_SUITE_END()
64 68