From c1b76faf6be5c33dbf3269faea95e185ac37992f Mon Sep 17 00:00:00 2001 From: Manuel Bottini Date: Mon, 17 Jun 2019 12:04:40 +0100 Subject: COMPMID-2092: Refactoring interface for the deconvolution kernels (NEON/CL) 3RDPARTY_UPDATE Change-Id: Id7ddf97e2c9ceb2cb84084fab2c6f5697890c193 Signed-off-by: giuros01 Reviewed-on: https://review.mlplatform.org/c/1424 Comments-Addressed: Arm Jenkins Tested-by: Arm Jenkins Reviewed-by: Georgios Pinitas --- arm_compute/core/utils/misc/ShapeCalculator.h | 23 ++++++++++------------- 1 file changed, 10 insertions(+), 13 deletions(-) (limited to 'arm_compute/core/utils') diff --git a/arm_compute/core/utils/misc/ShapeCalculator.h b/arm_compute/core/utils/misc/ShapeCalculator.h index 010501454f..65a2a1edf4 100644 --- a/arm_compute/core/utils/misc/ShapeCalculator.h +++ b/arm_compute/core/utils/misc/ShapeCalculator.h @@ -438,20 +438,17 @@ inline TensorShape compute_depthwise_convolution_shape(const ITensorInfo &input, /** Calculate the upsampled output shape used for deconvolution * - * @param[in] input Input tensor info - * @param[in] weights Weights tensor shape - * @param[in] sx Stride on x axis - * @param[in] sy Stride on y axis - * @param[in] inner_border_right The number of zeros added to right edge of the input. - * @param[in] inner_border_top The number of zeros added to top edge of the input. - * @param[in] out_dims Output shape dimensions - * @param[in] padx Padding on x axis - * @param[in] pady Padding on y axis + * @param[in] input Input tensor info + * @param[in] weights Weights tensor shape + * @param[in] sx Stride on x axis + * @param[in] sy Stride on y axis + * @param[in] out_dims Output shape dimensions + * @param[in] padx Padding on x axis + * @param[in] pady Padding on y axis * * @return the calculated shape */ -inline TensorShape compute_deconvolution_upsampled_shape(const ITensorInfo &input, const ITensorInfo &weights, unsigned int sx, unsigned int sy, unsigned int inner_border_right, - unsigned int inner_border_top, +inline TensorShape compute_deconvolution_upsampled_shape(const ITensorInfo &input, const ITensorInfo &weights, unsigned int sx, unsigned int sy, std::pair &out_dims, unsigned int &padx, unsigned int &pady) { const DataLayout data_layout = input.data_layout(); @@ -459,8 +456,8 @@ inline TensorShape compute_deconvolution_upsampled_shape(const ITensorInfo &inpu const size_t idx_h = get_data_layout_dimension_index(data_layout, DataLayoutDimension::HEIGHT); // Find the upsampled dimensions - unsigned int out_x = (input.dimension(idx_w) - 1) * sx + inner_border_right + 1; - unsigned int out_y = (input.dimension(idx_h) - 1) * sy + inner_border_top + 1; + unsigned int out_x = (input.dimension(idx_w) - 1) * sx + 1; + unsigned int out_y = (input.dimension(idx_h) - 1) * sy + 1; // Find the padding needed for the convolution with stride 1 in order to match output shape padx = out_dims.first - (out_x - weights.dimension(idx_w) + 1); -- cgit v1.2.1