diff options
author | Narumol Prangnawarat <narumol.prangnawarat@arm.com> | 2021-09-15 17:30:37 +0100 |
---|---|---|
committer | Jim Flynn <jim.flynn@arm.com> | 2021-09-16 09:08:39 +0000 |
commit | f106ab745a12a5c773a9c315dcddef0c8bf11225 (patch) | |
tree | d0d3f2ca4e084c044e50fc1950f2fe933e309992 /src/armnnOnnxParser/OnnxParser.cpp | |
parent | 7ba84d6881685d6ebfedc597a9af98b16fa42d51 (diff) | |
download | armnn-f106ab745a12a5c773a9c315dcddef0c8bf11225.tar.gz |
Add support for Clip with attribute on ONNX parser
Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com>
Change-Id: I1bae42dade7eabf3da09252066e912e803a8ea32
Diffstat (limited to 'src/armnnOnnxParser/OnnxParser.cpp')
-rw-r--r-- | src/armnnOnnxParser/OnnxParser.cpp | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/src/armnnOnnxParser/OnnxParser.cpp b/src/armnnOnnxParser/OnnxParser.cpp index a7e6902fdd..49f0271aeb 100644 --- a/src/armnnOnnxParser/OnnxParser.cpp +++ b/src/armnnOnnxParser/OnnxParser.cpp @@ -1189,8 +1189,16 @@ void OnnxParserImpl::ParseActivation(const onnx::NodeProto& node, const armnn::A if (func == ActivationFunction::BoundedReLu) { - desc.m_A = node.input(2).empty() ? std::numeric_limits<float>::max() : std::stof(node.input(2)); - desc.m_B = node.input(1).empty() ? std::numeric_limits<float>::lowest() : std::stof(node.input(1)); + if (node.input_size() == 1 && node.attribute_size() > 0) + { + desc.m_A = ReadOptionalNodeFloatAttribute(node, "max", std::numeric_limits<float>::max()); + desc.m_B = ReadOptionalNodeFloatAttribute(node, "min", std::numeric_limits<float>::lowest()); + } + else + { + desc.m_A = node.input(2).empty() ? std::numeric_limits<float>::max() : std::stof(node.input(2)); + desc.m_B = node.input(1).empty() ? std::numeric_limits<float>::lowest() : std::stof(node.input(1)); + } } IConnectableLayer* const layer = m_Network->AddActivationLayer(desc, node.name().c_str()); |