Github #306 Treat data_format attribute as optional in TfParser::ParseFusedBatchNorm()
Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com>
Change-Id: I1c6583e4abb43b864dc636f8cdcd9011c763a6fe
diff --git a/src/armnnTfParser/TfParser.cpp b/src/armnnTfParser/TfParser.cpp
index d085ed8..51423bf 100755
--- a/src/armnnTfParser/TfParser.cpp
+++ b/src/armnnTfParser/TfParser.cpp
@@ -195,6 +195,19 @@
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 @@
ParsedConstTfOperation<float>* varianceNode =
boost::polymorphic_downcast<ParsedConstTfOperation<float> *>(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.