diff options
author | Moritz Pflanzer <moritz.pflanzer@arm.com> | 2017-08-30 09:29:47 +0100 |
---|---|---|
committer | Anthony Barbier <anthony.barbier@arm.com> | 2018-11-02 16:35:24 +0000 |
commit | 632925a47bb5a34a4795522c9b4a3f590cd88d7d (patch) | |
tree | 42351816561af58841d4274a9ab47abfce472810 /tests | |
parent | de12af4e62ca7c177464773620a0b82097529368 (diff) | |
download | ComputeLibrary-632925a47bb5a34a4795522c9b4a3f590cd88d7d.tar.gz |
COMPMID-417: Set tolerance of 1 for CL HarrisCorners
Change-Id: I7427c92faa0a94bdc35ed1dfbdef5961d63746ef
Reviewed-on: http://mpd-gerrit.cambridge.arm.com/85699
Reviewed-by: Anthony Barbier <anthony.barbier@arm.com>
Tested-by: Kaizen <jeremy.johnson+kaizengerrit@arm.com>
Diffstat (limited to 'tests')
-rw-r--r-- | tests/validation/CL/HarrisCorners.cpp | 2 | ||||
-rw-r--r-- | tests/validation/Validation.cpp | 26 | ||||
-rw-r--r-- | tests/validation/Validation.h | 2 |
3 files changed, 20 insertions, 10 deletions
diff --git a/tests/validation/CL/HarrisCorners.cpp b/tests/validation/CL/HarrisCorners.cpp index dca2c79baf..6370c4d972 100644 --- a/tests/validation/CL/HarrisCorners.cpp +++ b/tests/validation/CL/HarrisCorners.cpp @@ -178,7 +178,7 @@ BOOST_DATA_TEST_CASE(RunSmall, Small2DShapes() * BorderModes() * boost::unit_tes // Validate output dst.map(); - validate(dst, ref_dst); + validate(dst, ref_dst, 1); dst.unmap(); } diff --git a/tests/validation/Validation.cpp b/tests/validation/Validation.cpp index 887c7c45d8..d321e63d77 100644 --- a/tests/validation/Validation.cpp +++ b/tests/validation/Validation.cpp @@ -442,9 +442,11 @@ void validate(float target, float ref, float tolerance_abs_error, float toleranc BOOST_TEST(equal); } -void validate(IArray<KeyPoint> &target, IArray<KeyPoint> &ref) +void validate(IArray<KeyPoint> &target, IArray<KeyPoint> &ref, int64_t tolerance) { - BOOST_TEST(target.num_values() == ref.num_values()); + int64_t num_mismatches = 0; + + BOOST_TEST_WARN(target.num_values() == ref.num_values()); for(size_t i = 0; i < target.num_values(); ++i) { @@ -453,14 +455,22 @@ void validate(IArray<KeyPoint> &target, IArray<KeyPoint> &ref) return key.x == target.at(i).x && key.y == target.at(i).y; }); - BOOST_TEST(ref_val != ref.buffer() + ref.num_values()); - BOOST_TEST(target.at(i).tracking_status == ref_val->tracking_status); + const KeyPoint &key = target.at(i); - validate(target.at(i).strength, ref_val->strength); - validate(target.at(i).scale, ref_val->scale); - validate(target.at(i).orientation, ref_val->orientation); - validate(target.at(i).error, ref_val->error); + if((ref_val == ref.buffer() + ref.num_values()) || !(is_equal(key.strength, ref_val->strength) && is_equal(key.scale, ref_val->scale) && is_equal(key.orientation, ref_val->orientation) + && is_equal(key.tracking_status, ref_val->tracking_status) && is_equal(key.error, ref_val->error))) + { + ++num_mismatches; + + BOOST_TEST_WARN(is_equal(key.strength, ref_val->strength)); + BOOST_TEST_WARN(is_equal(key.scale, ref_val->scale)); + BOOST_TEST_WARN(is_equal(key.orientation, ref_val->orientation)); + BOOST_TEST_WARN(is_equal(key.tracking_status, ref_val->tracking_status)); + BOOST_TEST_WARN(is_equal(key.error, ref_val->error)); + } } + + BOOST_TEST(num_mismatches <= tolerance); } } // namespace validation } // namespace test diff --git a/tests/validation/Validation.h b/tests/validation/Validation.h index f95859d029..57013312e1 100644 --- a/tests/validation/Validation.h +++ b/tests/validation/Validation.h @@ -186,7 +186,7 @@ void validate_min_max_loc(T min, T ref_min, T max, T ref_max, * * - All values should match */ -void validate(IArray<KeyPoint> &target, IArray<KeyPoint> &ref); +void validate(IArray<KeyPoint> &target, IArray<KeyPoint> &ref, int64_t tolerance = 0); } // namespace validation } // namespace test } // namespace arm_compute |