From 2e259276fba9fa5c6c2e146de3b26e3d6c6cccc6 Mon Sep 17 00:00:00 2001 From: Aron Virginas-Tar Date: Wed, 27 Nov 2019 13:29:51 +0000 Subject: Github #306 Treat data_format attribute as optional in TfParser::ParseFusedBatchNorm() Signed-off-by: Aron Virginas-Tar Change-Id: I1c6583e4abb43b864dc636f8cdcd9011c763a6fe --- src/armnnTfParser/TfParser.cpp | 16 ++++++++++++++-- src/armnnTfParser/test/FusedBatchNorm.cpp | 26 ++++++++++++++++---------- 2 files changed, 30 insertions(+), 12 deletions(-) diff --git a/src/armnnTfParser/TfParser.cpp b/src/armnnTfParser/TfParser.cpp index d085ed84e3..51423bf6a7 100755 --- a/src/armnnTfParser/TfParser.cpp +++ b/src/armnnTfParser/TfParser.cpp @@ -195,6 +195,19 @@ std::vector ReadOptionalNodeUint32ListAttribute(const tensorflow::Node return attriList; } +std::string ReadOptionalNodeStringAttribute(const tensorflow::NodeDef& nodeDef, + const std::string& name, + const std::string& defaultValue = "") +{ + std::string attribValue = defaultValue; + ReadOptionalNodeAttributeImpl(nodeDef, name, tensorflow::AttrValue::kS, + [&attribValue](const tensorflow::AttrValue& attrValue) + { + attribValue = attrValue.s(); + }); + return attribValue; +} + bool ReadOptionalNodeBoolAttribute(const tensorflow::NodeDef& nodeDef, const std::string& name, bool defaultValue = false) @@ -1594,8 +1607,7 @@ ParsedTfOperationPtr TfParser::ParseFusedBatchNorm(const tensorflow::NodeDef& no ParsedConstTfOperation* varianceNode = boost::polymorphic_downcast *>(inputs[4].m_IndexedValue); - const std::string dataFormat = ReadMandatoryNodeStringAttribute(nodeDef, "data_format"); - + const std::string dataFormat = ReadOptionalNodeStringAttribute(nodeDef, "data_format", "NHWC"); CHECK_DATA_FORMAT(nodeDef, dataFormat, "FusedBatchNorm"); // The descriptor only has the epsilon attribute. diff --git a/src/armnnTfParser/test/FusedBatchNorm.cpp b/src/armnnTfParser/test/FusedBatchNorm.cpp index 98bdb26183..b93a4728d0 100644 --- a/src/armnnTfParser/test/FusedBatchNorm.cpp +++ b/src/armnnTfParser/test/FusedBatchNorm.cpp @@ -141,16 +141,22 @@ struct FusedBatchNormFixture : public armnnUtils::ParserPrototxtFixture