diff options
author | Isabella Gottardi <isabella.gottardi@arm.com> | 2018-11-27 08:51:10 +0000 |
---|---|---|
committer | Isabella Gottardi <isabella.gottardi@arm.com> | 2018-12-13 11:21:59 +0000 |
commit | 7234ed8c3d07c76963eb3bce9530994421ad7e67 (patch) | |
tree | 6834d5fc3cc23eb47bcfad3a4191d91c87c8f9e0 /src/graph/backends/NEON | |
parent | 0e7210de821a7d1164017b8b9e11b53805185b25 (diff) | |
download | ComputeLibrary-7234ed8c3d07c76963eb3bce9530994421ad7e67.tar.gz |
COMPMID-1808: Add Detection Output Layer to the GraphAPI
COMPMID-1710: Integrate Detection ouput in MobilenetSSD graph example
Change-Id: I384d1eb492ef14ece58f2023ad7bbc16f834450b
Reviewed-on: https://review.mlplatform.org/356
Tested-by: Arm Jenkins <bsgcomp@arm.com>
Reviewed-by: Pablo Marquez <pablo.tello@arm.com>
Reviewed-by: Georgios Pinitas <georgios.pinitas@arm.com>
Diffstat (limited to 'src/graph/backends/NEON')
-rw-r--r-- | src/graph/backends/NEON/NEFunctionFactory.cpp | 5 | ||||
-rw-r--r-- | src/graph/backends/NEON/NENodeValidator.cpp | 3 |
2 files changed, 7 insertions, 1 deletions
diff --git a/src/graph/backends/NEON/NEFunctionFactory.cpp b/src/graph/backends/NEON/NEFunctionFactory.cpp index ca8d485f8b..dc987dd86e 100644 --- a/src/graph/backends/NEON/NEFunctionFactory.cpp +++ b/src/graph/backends/NEON/NEFunctionFactory.cpp @@ -31,6 +31,7 @@ #include "arm_compute/graph/backends/FunctionHelpers.h" #include "arm_compute/graph/backends/Utils.h" #include "arm_compute/graph/nodes/Nodes.h" +#include "arm_compute/runtime/CPP/CPPFunctions.h" #include "arm_compute/runtime/NEON/NEFunctions.h" #include "support/ToolchainSupport.h" @@ -77,7 +78,7 @@ struct NEEltwiseFunctions namespace detail { -// Specialize functions +// Specialized functions template <> std::unique_ptr<IFunction> create_convolution_layer<NEConvolutionLayerFunctions, NETargetInfo>(ConvolutionLayerNode &node, GraphContext &ctx) @@ -201,6 +202,8 @@ std::unique_ptr<IFunction> NEFunctionFactory::create(INode *node, GraphContext & return detail::create_concatenate_layer<NEConcatenateLayer, NETargetInfo>(*polymorphic_downcast<ConcatenateLayerNode *>(node)); case NodeType::DepthwiseConvolutionLayer: return detail::create_depthwise_convolution_layer<NEDepthwiseConvolutionLayerFunctions, NETargetInfo>(*polymorphic_downcast<DepthwiseConvolutionLayerNode *>(node)); + case NodeType::DetectionOutputLayer: + return detail::create_detection_output_layer<CPPDetectionOutputLayer, NETargetInfo>(*polymorphic_downcast<DetectionOutputLayerNode *>(node)); case NodeType::EltwiseLayer: return detail::create_eltwise_layer<NEEltwiseFunctions, NETargetInfo>(*polymorphic_downcast<EltwiseLayerNode *>(node)); case NodeType::FlattenLayer: diff --git a/src/graph/backends/NEON/NENodeValidator.cpp b/src/graph/backends/NEON/NENodeValidator.cpp index a2abc8330c..db6af5eab7 100644 --- a/src/graph/backends/NEON/NENodeValidator.cpp +++ b/src/graph/backends/NEON/NENodeValidator.cpp @@ -27,6 +27,7 @@ #include "arm_compute/graph/nodes/Nodes.h" #include "arm_compute/core/utils/misc/Cast.h" +#include "arm_compute/runtime/CPP/CPPFunctions.h" #include "arm_compute/runtime/NEON/NEFunctions.h" using namespace arm_compute::utils::cast; @@ -59,6 +60,8 @@ Status NENodeValidator::validate(INode *node) case NodeType::DepthwiseConvolutionLayer: return detail::validate_depthwise_convolution_layer<NEDepthwiseConvolutionLayer, NEDepthwiseConvolutionLayer3x3>(*polymorphic_downcast<DepthwiseConvolutionLayerNode *>(node)); + case NodeType::DetectionOutputLayer: + return detail::validate_detection_output_layer<CPPDetectionOutputLayer>(*polymorphic_downcast<DetectionOutputLayerNode *>(node)); case NodeType::GenerateProposalsLayer: return ARM_COMPUTE_CREATE_ERROR(arm_compute::ErrorCode::RUNTIME_ERROR, "Unsupported operation : GenerateProposalsLayer"); case NodeType::NormalizePlanarYUVLayer: |