diff options
author | FinnWilliamsArm <Finn.Williams@Arm.com> | 2019-11-25 16:02:07 +0000 |
---|---|---|
committer | finn.williams <finn.williams@arm.com> | 2019-11-25 16:30:47 +0000 |
commit | 493e9b7dd093c998f955233638491bb3c18ddf5d (patch) | |
tree | a329f631a0ab059ee8b10017ba1cd4193e1dff91 | |
parent | aa5df2dd94ee8ab86441f126d160798d29507dcf (diff) | |
download | android-nn-driver-493e9b7dd093c998f955233638491bb3c18ddf5d.tar.gz |
MLCE-144 Fix 2d pooling convert function
Signed-off-by: FinnWilliamsArm <Finn.Williams@Arm.com>
Change-Id: I999d9091bc4046861433d4eb3109fe972611bd82
-rw-r--r-- | ConversionUtils.hpp | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/ConversionUtils.hpp b/ConversionUtils.hpp index a1405fbb..b24cbde4 100644 --- a/ConversionUtils.hpp +++ b/ConversionUtils.hpp @@ -1395,7 +1395,7 @@ bool ConvertPooling2d(const HalOperation& operation, LayerInputHandle input = ConvertToLayerInputHandle<HalPolicy>(operation, 0, model, data); if (!input.IsValid()) { - return Fail("%s: Could not read input 0", operationName); + return Fail("%s: Operation Could not read input 0", operationName); } const HalOperand* output = GetOutputOperand<HalPolicy>(operation, 0, model); @@ -1456,16 +1456,17 @@ bool ConvertPooling2d(const HalOperation& operation, return Fail("%s: Operation has invalid inputs", operationName); } - const unsigned int inputWidth = inputInfo.GetShape()[2]; - const unsigned int inputHeight = inputInfo.GetShape()[1]; - - CalcPadding(inputWidth, desc.m_PoolWidth, desc.m_StrideX, desc.m_PadLeft, desc.m_PadRight, scheme); - CalcPadding(inputHeight, desc.m_PoolHeight, desc.m_StrideY, desc.m_PadTop, desc.m_PadBottom, scheme); - if (Is12Operand(*output)) { desc.m_DataLayout = OptionalDataLayout<HalPolicy>(operation, 7, model, data); } + + const armnnUtils::DataLayoutIndexed dataLayout(desc.m_DataLayout); + const unsigned int inputWidth = inputInfo.GetShape()[dataLayout.GetWidthIndex()]; + const unsigned int inputHeight = inputInfo.GetShape()[dataLayout.GetHeightIndex()]; + + CalcPadding(inputWidth, desc.m_PoolWidth, desc.m_StrideX, desc.m_PadLeft, desc.m_PadRight, scheme); + CalcPadding(inputHeight, desc.m_PoolHeight, desc.m_StrideY, desc.m_PadTop, desc.m_PadBottom, scheme); } bool isSupported = false; |