diff options
author | Sanghoon Lee <sanghoon.lee@arm.com> | 2018-03-15 11:48:48 +0000 |
---|---|---|
committer | Anthony Barbier <anthony.barbier@arm.com> | 2018-11-02 16:49:37 +0000 |
commit | 1cd41495153c4e89d6195b42f870967339c1a13b (patch) | |
tree | af33572d72a3c1591148dbd6fc0fb9cf53a79ee3 /arm_compute | |
parent | c9c62c2fa1c80ba7f11b0d0732740460dfa00e74 (diff) | |
download | ComputeLibrary-1cd41495153c4e89d6195b42f870967339c1a13b.tar.gz |
COMPMID-577: Implement CL validation for GaussianPyramid
Change-Id: If879cbe15b14d97818c24d44b29fc69b6c8cb686
Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/127601
Reviewed-by: Gian Marco Iodice <gianmarco.iodice@arm.com>
Tested-by: Jenkins <bsgcomp@arm.com>
Reviewed-by: Anthony Barbier <anthony.barbier@arm.com>
Diffstat (limited to 'arm_compute')
-rw-r--r-- | arm_compute/core/CL/kernels/CLGaussianPyramidKernel.h | 19 | ||||
-rw-r--r-- | arm_compute/core/NEON/kernels/NEGaussianPyramidKernel.h | 4 | ||||
-rw-r--r-- | arm_compute/runtime/CL/functions/CLGaussianPyramid.h | 5 |
3 files changed, 13 insertions, 15 deletions
diff --git a/arm_compute/core/CL/kernels/CLGaussianPyramidKernel.h b/arm_compute/core/CL/kernels/CLGaussianPyramidKernel.h index 43d66c39c9..425f8478c6 100644 --- a/arm_compute/core/CL/kernels/CLGaussianPyramidKernel.h +++ b/arm_compute/core/CL/kernels/CLGaussianPyramidKernel.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 ARM Limited. + * Copyright (c) 2017-2018 ARM Limited. * * SPDX-License-Identifier: MIT * @@ -49,19 +49,17 @@ public: /** Initialise the kernel's source, destination and border mode. * - * @param[in] input Source tensor. Data types supported: U8. - * @param[out] output Destination tensor. Output should have half the input width. Data types supported: U16. - * @param[in] border_undefined True if the border mode is undefined. False if it's replicate or constant. + * @param[in] input Source tensor. Data types supported: U8. + * @param[out] output Destination tensor. Output should have half the input width. Data types supported: U16. */ - void configure(const ICLTensor *input, ICLTensor *output, bool border_undefined); + void configure(const ICLTensor *input, ICLTensor *output); // Inherited methods overridden: void run(const Window &window, cl::CommandQueue &queue) override; BorderSize border_size() const override; private: - BorderSize _border_size; - int _l2_load_offset; + int _l2_load_offset; }; /** OpenCL kernel to perform a Gaussian filter and half scaling across height (vertical pass) */ @@ -83,11 +81,10 @@ public: /** Initialise the kernel's source, destination and border mode. * - * @param[in] input Source tensor. Data types supported: U16. - * @param[out] output Destination tensor. Output should have half the input height. Data types supported: U8. - * @param[in] border_undefined True if the border mode is undefined. False if it's replicate or constant. + * @param[in] input Source tensor. Data types supported: U16. + * @param[out] output Destination tensor. Output should have half the input height. Data types supported: U8. */ - void configure(const ICLTensor *input, ICLTensor *output, bool border_undefined); + void configure(const ICLTensor *input, ICLTensor *output); // Inherited methods overridden: void run(const Window &window, cl::CommandQueue &queue) override; diff --git a/arm_compute/core/NEON/kernels/NEGaussianPyramidKernel.h b/arm_compute/core/NEON/kernels/NEGaussianPyramidKernel.h index ac22934786..1446ca8c52 100644 --- a/arm_compute/core/NEON/kernels/NEGaussianPyramidKernel.h +++ b/arm_compute/core/NEON/kernels/NEGaussianPyramidKernel.h @@ -54,7 +54,7 @@ public: /** Initialise the kernel's source, destination and border mode. * * @param[in] input Source tensor. Data type supported: U8. - * @param[out] output Destination tensor. Data type supported: S16. + * @param[out] output Destination tensor. Output should have half the input width. Data type supported: S16. */ void configure(const ITensor *input, ITensor *output); @@ -90,7 +90,7 @@ public: /** Initialise the kernel's source, destination and border mode. * * @param[in] input Source tensor. Data type supported: S16. - * @param[out] output Destination tensor. Data type supported: U8. + * @param[out] output Destination tensor. Output should have half the input height. Data type supported: U8. */ void configure(const ITensor *input, ITensor *output); diff --git a/arm_compute/runtime/CL/functions/CLGaussianPyramid.h b/arm_compute/runtime/CL/functions/CLGaussianPyramid.h index 97935193dc..0110adfa20 100644 --- a/arm_compute/runtime/CL/functions/CLGaussianPyramid.h +++ b/arm_compute/runtime/CL/functions/CLGaussianPyramid.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 ARM Limited. + * Copyright (c) 2017-2018 ARM Limited. * * SPDX-License-Identifier: MIT * @@ -90,7 +90,8 @@ public: void run() override; private: - std::unique_ptr<CLFillBorderKernel[]> _border_handler; + std::unique_ptr<CLFillBorderKernel[]> _horizontal_border_handler; + std::unique_ptr<CLFillBorderKernel[]> _vertical_border_handler; std::unique_ptr<CLGaussianPyramidHorKernel[]> _horizontal_reduction; std::unique_ptr<CLGaussianPyramidVertKernel[]> _vertical_reduction; }; |