diff options
Diffstat (limited to 'src/runtime/CL/functions/CLHarrisCorners.cpp')
-rw-r--r-- | src/runtime/CL/functions/CLHarrisCorners.cpp | 21 |
1 files changed, 14 insertions, 7 deletions
diff --git a/src/runtime/CL/functions/CLHarrisCorners.cpp b/src/runtime/CL/functions/CLHarrisCorners.cpp index 3cae95f551..aecec0d3c5 100644 --- a/src/runtime/CL/functions/CLHarrisCorners.cpp +++ b/src/runtime/CL/functions/CLHarrisCorners.cpp @@ -65,6 +65,13 @@ void CLHarrisCorners::configure(ICLImage *input, float threshold, float min_dist float sensitivity, int32_t gradient_size, int32_t block_size, ICLKeyPointArray *corners, BorderMode border_mode, uint8_t constant_border_value, bool use_fp16) { + configure(CLKernelLibrary::get().get_compile_context(), input, threshold, min_dist, sensitivity, gradient_size, block_size, corners, border_mode, constant_border_value, use_fp16); +} + +void CLHarrisCorners::configure(const CLCompileContext &compile_context, ICLImage *input, float threshold, float min_dist, + float sensitivity, int32_t gradient_size, int32_t block_size, ICLKeyPointArray *corners, + BorderMode border_mode, uint8_t constant_border_value, bool use_fp16) +{ ARM_COMPUTE_UNUSED(use_fp16); //TODO(COMPMID-772): Add half float support ARM_COMPUTE_ERROR_ON_TENSOR_NOT_2D(input); ARM_COMPUTE_ERROR_ON_DATA_TYPE_CHANNEL_NOT_IN(input, 1, DataType::U8); @@ -96,21 +103,21 @@ void CLHarrisCorners::configure(ICLImage *input, float threshold, float min_dist case 3: { auto k = arm_compute::support::cpp14::make_unique<CLSobel3x3>(); - k->configure(input, &_gx, &_gy, border_mode, constant_border_value); + k->configure(compile_context, input, &_gx, &_gy, border_mode, constant_border_value); _sobel = std::move(k); break; } case 5: { auto k = arm_compute::support::cpp14::make_unique<CLSobel5x5>(); - k->configure(input, &_gx, &_gy, border_mode, constant_border_value); + k->configure(compile_context, input, &_gx, &_gy, border_mode, constant_border_value); _sobel = std::move(k); break; } case 7: { auto k = arm_compute::support::cpp14::make_unique<CLSobel7x7>(); - k->configure(input, &_gx, &_gy, border_mode, constant_border_value); + k->configure(compile_context, input, &_gx, &_gy, border_mode, constant_border_value); _sobel = std::move(k); break; } @@ -126,11 +133,11 @@ void CLHarrisCorners::configure(ICLImage *input, float threshold, float min_dist _memory_group.manage(&_score); // Set/init Harris Score kernel accordingly with block_size - _harris_score.configure(&_gx, &_gy, &_score, block_size, pow4_normalization_factor, threshold, sensitivity, border_mode == BorderMode::UNDEFINED); + _harris_score.configure(compile_context, &_gx, &_gy, &_score, block_size, pow4_normalization_factor, threshold, sensitivity, border_mode == BorderMode::UNDEFINED); // Configure border filling using harris score kernel's block size - _border_gx.configure(&_gx, _harris_score.border_size(), border_mode, PixelValue(constant_border_value)); - _border_gy.configure(&_gy, _harris_score.border_size(), border_mode, PixelValue(constant_border_value)); + _border_gx.configure(compile_context, &_gx, _harris_score.border_size(), border_mode, PixelValue(constant_border_value)); + _border_gy.configure(compile_context, &_gy, _harris_score.border_size(), border_mode, PixelValue(constant_border_value)); // Allocate intermediate buffers _gx.allocator()->allocate(); @@ -140,7 +147,7 @@ void CLHarrisCorners::configure(ICLImage *input, float threshold, float min_dist _memory_group.manage(&_nonmax); // Init non-maxima suppression function - _non_max_suppr.configure(&_score, &_nonmax, border_mode); + _non_max_suppr.configure(compile_context, &_score, &_nonmax, border_mode); // Allocate intermediate buffers _score.allocator()->allocate(); |