class InferenceEngine::PoolingLayer¶
Overview¶
This class represents a standard pooling layer. More…
#include <ie_layers.h>
class PoolingLayer: public InferenceEngine::CNNLayer
{
public:
// enums
enum PoolType;
// fields
PropertyVector<unsigned int> _kernel;
unsigned int& _kernel_x = _kernel .at(X_AXIS);
unsigned int& _kernel_y = _kernel .at(Y_AXIS);
PropertyVector<unsigned int> _padding;
unsigned int& _padding_x = _padding .at(X_AXIS);
unsigned int& _padding_y = _padding .at(Y_AXIS);
PropertyVector<unsigned int> _pads_end;
PropertyVector<unsigned int> _stride;
unsigned int& _stride_x = _stride .at(X_AXIS);
unsigned int& _stride_y = _stride .at(Y_AXIS);
PoolType _type = MAX;
bool _exclude_pad = false;
std::string _auto_pad;
// construction
PoolingLayer(const LayerParams& p);
PoolingLayer(const PoolingLayer& that);
PoolingLayer(PoolingLayer&&);
// methods
PoolingLayer& operator = (const PoolingLayer& that);
};
Inherited Members¶
public:
// typedefs
typedef std::shared_ptr<CNNLayer> Ptr;
// fields
std::string name;
std::string type;
Precision precision;
std::vector<DataPtr> outData;
std::vector<DataWeakPtr> insData;
Ptr _fusedWith;
UserValue userValue;
std::string affinity;
std::map<std::string, std::string> params;
std::map<std::string, Blob::Ptr> blobs;
// methods
std::shared_ptr<ngraph::Node> getNode() const;
void fuse(Ptr& layer);
virtual const DataPtr input() const;
void parseParams();
float GetParamAsFloat(const char \* param, float def) const;
float GetParamAsFloat(const char \* param) const;
std::vector<float> GetParamAsFloats(const char \* param, std::vector<float> def) const;
std::vector<float> GetParamAsFloats(const char \* param) const;
int GetParamAsInt(const char \* param, int def) const;
int GetParamAsInt(const char \* param) const;
std::vector<int> GetParamAsInts(const char \* param, std::vector<int> def) const;
std::vector<int> GetParamAsInts(const char \* param) const;
unsigned int GetParamAsUInt(const char \* param, unsigned int def) const;
unsigned int GetParamAsUInt(const char \* param) const;
size_t GetParamAsSizeT(const char \* param, size_t def) const;
size_t GetParamAsSizeT(const char \* param) const;
std::vector<unsigned int> GetParamAsUInts(
const char \* param,
std::vector<unsigned int> def
) const;
std::vector<unsigned int> GetParamAsUInts(const char \* param) const;
bool GetParamAsBool(const char \* param, bool def) const;
bool GetParamAsBool(const char \* param) const;
std::string GetParamAsString(const char \* param, const char \* def) const;
bool CheckParamPresence(const char \* param) const;
std::string GetParamAsString(const char \* param) const;
std::string getBoolStrParamAsIntStr(const char \* param) const;
std::vector<std::string> GetParamAsStrings(
const char \* param,
std::vector<std::string> def
) const;
static float ie_parse_float(const std::string& str);
static std::string ie_serialize_float(float value);
Detailed Documentation¶
This class represents a standard pooling layer.
Deprecated Migrate to IR v10 and work with ngraph::Function directly. The method will be removed in 2021.1
Fields¶
PropertyVector<unsigned int> _kernel
Pooling kernel array [X, Y, Z, …].
PropertyVector<unsigned int> _padding
Pooling paddings begin array [X, Y, Z, …].
PropertyVector<unsigned int> _pads_end
Pooling paddings end array [X, Y, Z, …].
PropertyVector<unsigned int> _stride
Pooling strides array [X, Y, Z, …].
A pooling type.
bool _exclude_pad = false
A flag that indicates if padding is excluded or not.
std::string _auto_pad
Auto padding type.
Construction¶
PoolingLayer(const LayerParams& p)
Creates a new PoolingLayer instance.
PoolingLayer(const PoolingLayer& that)
copy constructor
PoolingLayer(PoolingLayer&&)
move constructor