aboutsummaryrefslogtreecommitdiff
path: root/src/armnn/Layer.hpp
diff options
context:
space:
mode:
authorMike Kelly <mike.kelly@arm.com>2022-05-16 23:10:42 +0100
committerTeresaARM <teresa.charlinreyes@arm.com>2022-05-18 14:19:19 +0000
commit80512b0e1e98cb6782f5526fc8308ae6a571cd59 (patch)
treebad2f314defadd4b340343d99b6e157b46622039 /src/armnn/Layer.hpp
parentd0420cb62b71f9c015d2b0e889011899051e56c0 (diff)
downloadarmnn-80512b0e1e98cb6782f5526fc8308ae6a571cd59.tar.gz
IVGCVSW-6929 Support for models with implicit expanded
dimensions * Added allow-expanded-dims to TFLite parser and ArmNN delegate * If true ArmNN will disregard dimensions with a size of 1 when validating tensor shapes. Tensor sizes must still match. * This allows us to support models where tensors have expanded dimensions (i.e. extra dimensions with a size of 1). * Fixed bug in Network where it assumed that only the first option could be ShapeInferenceMethod. * Fixed bug where m_ShapeInferenceMethod was lost when copying or moving Graphs. * Changed Delegate to pass "infer-output-shape", "allow-expanded-dims" and other BackendOptions through to the Network during construction. Signed-off-by: Mike Kelly <mike.kelly@arm.com> Change-Id: Ibe7c5ae6597796fc9164cb07bd372bd7f8f8cacf
Diffstat (limited to 'src/armnn/Layer.hpp')
-rw-r--r--src/armnn/Layer.hpp8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/armnn/Layer.hpp b/src/armnn/Layer.hpp
index 114d69c652..767cf97eb3 100644
--- a/src/armnn/Layer.hpp
+++ b/src/armnn/Layer.hpp
@@ -238,6 +238,7 @@ public:
}
ShapeInferenceMethod GetShapeInferenceMethod() const { return m_ShapeInferenceMethod; };
+ bool GetAllowExpandedDims() const { return m_AllowExpandedDims; };
const std::vector<InputSlot>& GetInputSlots() const { return m_InputSlots; }
const std::vector<OutputSlot>& GetOutputSlots() const { return m_OutputSlots; }
@@ -343,6 +344,11 @@ public:
m_ShapeInferenceMethod = shapeInferenceMethod;
}
+ void SetAllowExpandedDims(bool allowExpandedDims)
+ {
+ m_AllowExpandedDims = allowExpandedDims;
+ }
+
template<typename T>
std::shared_ptr<T> GetAdditionalInformation() const
{
@@ -428,6 +434,8 @@ private:
mutable LayerPriority m_Priority = 0;
mutable bool m_Visiting = false;
+ bool m_AllowExpandedDims = false;
+
LayerGuid m_Guid;
std::list<std::string> m_RelatedLayerNames;