MLCE-153 Padding calculation for TransposeConv ignores stride
* Changed ConvertTransposeConv2d to use the unsigned values for strideX and strideY
not the signed values from the descriptor.
!ComputeLibrary:2599
!armnn:2612
Signed-off-by: Mike Kelly <mike.kelly@arm.com>
Change-Id: Iee300041f3ed585820b7c7e2edd8ab541f339d59
diff --git a/1.2/HalPolicy.cpp b/1.2/HalPolicy.cpp
index c9b4dad..8e4ef8a 100644
--- a/1.2/HalPolicy.cpp
+++ b/1.2/HalPolicy.cpp
@@ -2697,11 +2697,11 @@
const uint32_t kernelX = weights.GetShape()[widthIndex];
const uint32_t kernelY = weights.GetShape()[heightIndex];
- const uint32_t outputX = outputInfo.GetShape()[widthIndex];
- const uint32_t outputY = outputInfo.GetShape()[heightIndex];
+ const uint32_t outputX = outputInfo.GetShape()[widthIndex];
+ const uint32_t outputY = outputInfo.GetShape()[heightIndex];
- CalcPaddingTransposeConv(outputX, kernelX, desc.m_StrideX, padLeft, padRight, paddingScheme);
- CalcPaddingTransposeConv(outputY, kernelY, desc.m_StrideY, padTop, padBottom, paddingScheme);
+ CalcPaddingTransposeConv(outputX, kernelX, strideX, padLeft, padRight, paddingScheme);
+ CalcPaddingTransposeConv(outputY, kernelY, strideY, padTop, padBottom, paddingScheme);
// NOTE: The Android NN API allows for negative padding values in TransposeConv2d,
// but Arm NN only supports values >= 0