12 class ScopedCpuTensorHandle;
19 std::unique_ptr<ScopedCpuTensorHandle>
m_Weight;
21 std::unique_ptr<ScopedCpuTensorHandle>
m_Bias;
41 std::vector<TensorShape>
InferOutputShapes(
const std::vector<TensorShape>& inputShapes)
const override;
std::vector< TensorShape > InferOutputShapes(const std::vector< TensorShape > &inputShapes) const override
By default returns inputShapes if the number of inputs are equal to number of outputs, otherwise infers the output shapes from given input shapes and layer properties.
virtual std::unique_ptr< IWorkload > CreateWorkload(const IWorkloadFactory &factory) const override
Makes a workload for the DepthwiseConvolution2d type.
DepthwiseConvolution2dLayer * Clone(Graph &graph) const override
Creates a dynamically-allocated copy of this layer.
This layer represents a depthwise convolution 2d operation.
std::unique_ptr< ScopedCpuTensorHandle > m_Bias
A unique pointer to store Bias values.
ConstantTensors GetConstantTensorsByRef() override
Retrieve the handles to the constant values stored by the layer.
Copyright (c) 2020 ARM Limited.
void ValidateTensorShapesFromInputs() override
Check if the input tensor shape(s) will lead to a valid configuration of DepthwiseConvolution2dLayer...
void SerializeLayerParameters(ParameterStringifyFunction &fn) const override
Helper to serialize the layer parameters to string.
DepthwiseConvolution2dLayer(const DepthwiseConvolution2dDescriptor ¶m, const char *name)
Constructor to create a DepthwiseConvolution2dLayer.
~DepthwiseConvolution2dLayer()=default
Default destructor.
void Accept(ILayerVisitor &visitor) const override
Apply a visitor to this layer.
std::unique_ptr< ScopedCpuTensorHandle > m_Weight
A unique pointer to store Weight values.
std::function< void(const std::string &name, const std::string &value)> ParameterStringifyFunction
std::vector< std::reference_wrapper< std::unique_ptr< ScopedCpuTensorHandle > >> ConstantTensors
A DepthwiseConvolution2dDescriptor for the DepthwiseConvolution2dLayer.