aboutsummaryrefslogtreecommitdiff
path: root/src/armnnSerializer/Serializer.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/armnnSerializer/Serializer.cpp')
-rw-r--r--src/armnnSerializer/Serializer.cpp29
1 files changed, 29 insertions, 0 deletions
diff --git a/src/armnnSerializer/Serializer.cpp b/src/armnnSerializer/Serializer.cpp
index 3774c250e1..0340f56d17 100644
--- a/src/armnnSerializer/Serializer.cpp
+++ b/src/armnnSerializer/Serializer.cpp
@@ -289,6 +289,35 @@ void SerializerVisitor::VisitDepthwiseConvolution2dLayer(const armnn::IConnectab
CreateAnyLayer(flatBufferLayer.o, serializer::Layer::Layer_DepthwiseConvolution2dLayer);
}
+void SerializerVisitor::VisitDetectionPostProcessLayer(const armnn::IConnectableLayer* layer,
+ const armnn::DetectionPostProcessDescriptor& descriptor,
+ const armnn::ConstTensor& anchors,
+ const char* name)
+{
+ auto fbBaseLayer = CreateLayerBase(layer, serializer::LayerType::LayerType_DetectionPostProcess);
+ auto fbDescriptor = CreateDetectionPostProcessDescriptor(m_flatBufferBuilder,
+ descriptor.m_MaxDetections,
+ descriptor.m_MaxClassesPerDetection,
+ descriptor.m_DetectionsPerClass,
+ descriptor.m_NmsScoreThreshold,
+ descriptor.m_NmsIouThreshold,
+ descriptor.m_NumClasses,
+ descriptor.m_UseRegularNms,
+ descriptor.m_ScaleX,
+ descriptor.m_ScaleY,
+ descriptor.m_ScaleW,
+ descriptor.m_ScaleH);
+
+ flatbuffers::Offset<serializer::ConstTensor> fbAnchorsConstTensorInfo = CreateConstTensorInfo(anchors);
+
+ auto flatBufferLayer = CreateDetectionPostProcessLayer(m_flatBufferBuilder,
+ fbBaseLayer,
+ fbDescriptor,
+ fbAnchorsConstTensorInfo);
+
+ CreateAnyLayer(flatBufferLayer.o, serializer::Layer::Layer_DetectionPostProcessLayer);
+}
+
void SerializerVisitor::VisitDivisionLayer(const armnn::IConnectableLayer* layer, const char* name)
{
auto fbDivisionBaseLayer = CreateLayerBase(layer, serializer::LayerType::LayerType_Division);