diff options
author | Ryan OShea <Ryan.OShea2@arm.com> | 2020-04-22 16:37:29 +0100 |
---|---|---|
committer | Ryan OShea <Ryan.OShea2@arm.com> | 2020-04-23 14:28:20 +0100 |
commit | ed27ee7e1629b8af6f32ad0aed0901d749b53c32 (patch) | |
tree | 0fd7bee16c8e47ec0a4373476695aa0fe66157c9 /src/armnnOnnxParser/OnnxParser.hpp | |
parent | f7b9d29c69e707195df8e37f429f9bff521fd490 (diff) | |
download | armnn-ed27ee7e1629b8af6f32ad0aed0901d749b53c32.tar.gz |
IVGCVSW-4496 Add Flatten support to ONNX parser
* Added ParseFlatten method
* Added Read int64 attribute method
- Modified ComputeReshapeInfo method
- Modified ParseReshape
* Added unit tests
- Reorganised OnnxParser.cpp/.hpp
Signed-off-by: Ryan OShea <Ryan.OShea2@arm.com>
Change-Id: I8a9553438dd1e8c702d821b093587e0074c027d5
Diffstat (limited to 'src/armnnOnnxParser/OnnxParser.hpp')
-rw-r--r-- | src/armnnOnnxParser/OnnxParser.hpp | 28 |
1 files changed, 13 insertions, 15 deletions
diff --git a/src/armnnOnnxParser/OnnxParser.hpp b/src/armnnOnnxParser/OnnxParser.hpp index cc012ff34c..a87863e95c 100644 --- a/src/armnnOnnxParser/OnnxParser.hpp +++ b/src/armnnOnnxParser/OnnxParser.hpp @@ -89,22 +89,15 @@ private: std::pair<std::string, std::string> AddPrepareBroadcast(const std::string& input0, const std::string& input1); void PrependForBroadcast(const std::string& outputName, const std::string& input0, const std::string& input1); + void AddConvLayerWithDepthwiseConv(const onnx::NodeProto& node, const armnn::Convolution2dDescriptor& convDesc); + void AddFullyConnected(const onnx::NodeProto& matmulNode, const onnx::NodeProto* addNode = nullptr); + void AddPoolingLayer(const onnx::NodeProto& nodeProto, armnn::Pooling2dDescriptor& desc); + void CreateConstantLayer(const std::string& tensorName, const std::string& layerName); void CreateReshapeLayer(const std::string& inputName, const std::string& outputName, const std::string& layerName); - void ParseBatchNormalization(const onnx::NodeProto& node); - void ParseConstant(const onnx::NodeProto& nodeProto); - - void ParseMaxPool(const onnx::NodeProto& nodeProto); - void ParseAveragePool(const onnx::NodeProto& nodeProto); - void ParseGlobalAveragePool(const onnx::NodeProto& node); - - void AddPoolingLayer(const onnx::NodeProto& nodeProto, armnn::Pooling2dDescriptor& desc); - - void ParseReshape(const onnx::NodeProto& nodeProto); - void ParseActivation(const onnx::NodeProto& nodeProto, const armnn::ActivationFunction func); void ParseClip(const onnx::NodeProto& nodeProto); void ParseSigmoid(const onnx::NodeProto& nodeProto); @@ -112,11 +105,15 @@ private: void ParseRelu(const onnx::NodeProto& nodeProto); void ParseLeakyRelu(const onnx::NodeProto& nodeProto); - void AddConvLayerWithDepthwiseConv(const onnx::NodeProto& node, const armnn::Convolution2dDescriptor& convDesc); - void ParseConv(const onnx::NodeProto& nodeProto); - void ParseAdd(const onnx::NodeProto& nodeProto); - void AddFullyConnected(const onnx::NodeProto& matmulNode, const onnx::NodeProto* addNode = nullptr); + void ParseAveragePool(const onnx::NodeProto& nodeProto); + void ParseBatchNormalization(const onnx::NodeProto& node); + void ParseConstant(const onnx::NodeProto& nodeProto); + void ParseConv(const onnx::NodeProto& nodeProto); + void ParseFlatten(const onnx::NodeProto& node); + void ParseGlobalAveragePool(const onnx::NodeProto& node); + void ParseMaxPool(const onnx::NodeProto& nodeProto); + void ParseReshape(const onnx::NodeProto& nodeProto); void RegisterInputSlots(armnn::IConnectableLayer* layer, const std::vector<std::string>& tensorIndexes); void RegisterOutputSlots(armnn::IConnectableLayer* layer, const std::vector<std::string>& tensorIndexes); @@ -184,5 +181,6 @@ private: }; std::vector<UsageSummary> m_OutputsFusedAndUsed; + }; } |