diff options
author | Sang-Hoon Park <sang-hoon.park@arm.com> | 2020-05-26 11:11:32 +0100 |
---|---|---|
committer | Sang-Hoon Park <sang-hoon.park@arm.com> | 2020-06-08 13:58:40 +0000 |
commit | f025a77e99224798cf4a28d7e17aef86d2f5792f (patch) | |
tree | 443e77ca011b3c8aedf901d99669a76c2a06879a /tests/validation/fixtures | |
parent | 238580f09e3e2a1f7144fd7892ce400ce1dabd76 (diff) | |
download | ComputeLibrary-f025a77e99224798cf4a28d7e17aef86d2f5792f.tar.gz |
COMPMID-3363, COMPMID-3364: Add align_corners support to nearest neighbor
- Both NEON and CL's Scale Kernel now supports aligned corners
with nearest neighbor interpolation
- Unsupported combination (center sampling policy with aligned
corners) now fails on validation
- Test suites for CL and NEON are pruned by removing unsupported
combination
Change-Id: Ieea4f145a131593b89b471dcec2b09619136b17c
Signed-off-by: Sang-Hoon Park <sang-hoon.park@arm.com>
Reviewed-on: https://review.mlplatform.org/c/ml/ComputeLibrary/+/3297
Tested-by: Arm Jenkins <bsgcomp@arm.com>
Reviewed-by: Georgios Pinitas <georgios.pinitas@arm.com>
Comments-Addressed: Arm Jenkins <bsgcomp@arm.com>
Diffstat (limited to 'tests/validation/fixtures')
-rw-r--r-- | tests/validation/fixtures/ScaleFixture.h | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/tests/validation/fixtures/ScaleFixture.h b/tests/validation/fixtures/ScaleFixture.h index cf3c5c818f..f7ede917a6 100644 --- a/tests/validation/fixtures/ScaleFixture.h +++ b/tests/validation/fixtures/ScaleFixture.h @@ -54,7 +54,7 @@ public: _sampling_policy = sampling_policy; _data_type = data_type; _quantization_info = quantization_info; - _align_corners = align_corners && _policy == InterpolationPolicy::BILINEAR && _sampling_policy == SamplingPolicy::TOP_LEFT; + _align_corners = align_corners; generate_scale(shape); @@ -75,8 +75,10 @@ protected: constexpr float max_width{ 8192.0f }; constexpr float max_height{ 6384.0f }; - const float min_width = _align_corners ? 2.f : 1.f; - const float min_height = _align_corners ? 2.f : 1.f; + const bool is_align_corners_used = _align_corners && arm_compute::is_align_corners_allowed(_sampling_policy); + + const float min_width = is_align_corners_used ? 2.f : 1.f; + const float min_height = is_align_corners_used ? 2.f : 1.f; std::mt19937 generator(library->seed()); std::uniform_real_distribution<float> distribution_float(_min_scale, _max_scale); |