|
| | Layer () |
| |
| | Layer (const LayerParams ¶ms) |
| | 仅初始化 name、type 和 blobs 字段。
|
| |
| virtual | ~Layer () |
| |
| virtual void | applyHalideScheduler (Ptr< BackendNode > &node, const std::vector< Mat * > &inputs, const std::vector< Mat > &outputs, int targetId) const |
| | 根据层的超参数自动进行 Halide 调度。
|
| |
| virtual void | finalize (const std::vector< Mat * > &input, std::vector< Mat > &output) |
| | 根据输入、输出和 blob 计算并设置内部参数。
|
| |
| std::vector< Mat > | finalize (const std::vector<Mat> &&inputs) |
| | 这是一个为方便而提供的重载成员函数。它与上述函数不同的地方在于接受什么参数。
|
| |
| void | finalize (const std::vector<Mat> &&inputs, std::vector<Mat> &&outputs) |
| | 这是一个为方便而提供的重载成员函数。它与上述函数不同的地方在于接受什么参数。
|
| |
| virtual void | finalize (InputArrayOfArrays inputs, OutputArrayOfArrays outputs) |
| | 根据输入、输出和 blob 计算并设置内部参数。
|
| |
| virtual void | forward (InputArrayOfArrays inputs, OutputArrayOfArrays outputs, OutputArrayOfArrays internals) |
| | 给定输入 blobs,计算输出 blobs。
|
| |
| virtual void | forward (std::vector<Mat *> &&input, std::vector<MatMat |
| | 给定输入 blobs,计算输出 blobs。
|
| |
| void | forward_fallback (InputArrayOfArrays inputs, OutputArrayOfArrays outputs, OutputArrayOfArrays internals) |
| | 给定输入 blobs,计算输出 blobs。
|
| |
| virtual int64 | getFLOPS (const std::vector<MatShape> &&inputs, const std::vector<MatShape> &&outputs) const |
| |
| virtual bool | getMemoryShapes (const std::vector<MatShape> &&inputs, const int requiredOutputs, std::vector<MatShape> &&outputs, std::vector<MatShape> &&internals) const |
| |
| virtual void | getScaleShift (Mat &&scale, Mat &&shift) const |
| | 返回通道乘法和加法层的参数。
|
| |
| virtual void | getScaleZeropoint (float &&scale, int &&zeropoint) const |
| | 返回层的缩放和零点。
|
| |
| virtual PtrBackendNode> | initCann (const std::vector<PtrBackendWrapper> &> &&inputs, const std::vector<PtrBackendWrapper> &> &&outputs, const std::vector<PtrBackendNode> &> &&nodes) |
| | 返回一个 CANN 后端节点。
|
| |
| virtual PtrBackendNode> | initCUDA (void *context, const std::vector<PtrBackendWrapper> &> &&inputs, const std::vector<PtrBackendWrapper> &> &&outputs) |
| | 返回一个 CUDA 后端节点。
|
| |
| virtual PtrBackendNode> | initHalide (const std::vector< Ptr< BackendWrapper > > &inputs) |
| | 返回 Halide 后端节点。
|
| |
| virtual PtrBackendNode> | initNgraph (const std::vector< Ptr< BackendWrapper > > &inputs, const std::vector< Ptr< BackendNode > > &nodes) |
| |
| virtual PtrBackendNode> | initTimVX (void *timVxInfo, const std::vector< Ptr< BackendWrapper > > &inputsWrapper, const std::vector< Ptr< BackendWrapper > > &outputsWrapper, bool isLast) |
| | 返回 TimVX 后端节点。
|
| |
| virtual PtrBackendNode> | initVkCom (const std::vector< Ptr< BackendWrapper > > &inputs, std::vector< Ptr< BackendWrapper > > &outputs) |
| |
| virtual PtrBackendNode> | initWebnn (const std::vector< Ptr< BackendWrapper > > &inputs, const std::vector< Ptr< BackendNode > > &nodes) |
| |
| 虚拟 int | inputNameToIndex (String inputName) |
| | 返回输入 blob 在输入数组中的索引。
|
| |
| 虚拟 int | outputNameToIndex (const String &outputName) |
| | 返回输出 blob 在输出数组中的索引。
|
| |
| void | run (const std::vector< Mat > &inputs, std::vector< Mat > &outputs, std::vector< Mat > &internals) |
| | 分配层并计算输出。
|
| |
| virtual bool | setActivation (const Ptr< ActivationLayer > &layer) |
| | 尝试将后续激活层附加到层上,即进行部分情况下的层融合。
|
| |
| void | setParamsFrom (const LayerParams ¶ms) |
| | 仅初始化 name、type 和 blobs 字段。
|
| |
| virtual bool | supportBackend (int backendId) |
| | 询问层是否支持特定后端进行计算。
|
| |
| virtual PtrBackendNode> | tryAttach (const Ptr< BackendNode > &node) |
| | 实现层的融合。
|
| |
| virtual bool | tryFuse (Ptr< Layer > &top) |
| | 尝试将当前层与下一层融合。
|
| |
| virtual bool | tryQuantize (const std::vector< std::vector< float > > &scales, const std::vector< std::vector< int > > &zeropoints, LayerParams ¶ms) |
| | 尝试量化给定层并计算固定点实现所需的量化参数。
|
| |
| virtual void | unsetAttached () |
| | "断开"与特定层附加的所有层。
|
| |
| virtual bool | updateMemoryShapes (const std::vector< MatShape > &inputs) |
| |
| | Algorithm () |
| |
| virtual | ~Algorithm () |
| |
| virtual void | clear () |
| | 清除算法状态。
|
| |
| virtual bool | empty () const |
| | 如果 Algorithm 为空(例如在最开始或读取失败后),则返回 true。
|
| |
| virtual String | getDefaultName () const |
| |
| virtual void | read (const FileNode &fn) |
| | 从文件存储读取算法参数。
|
| |
| virtual void | save (const String &filename) const |
| |
| void | write (const Ptr< FileStorage > &fs, const String &name=String()) const |
| |
| virtual void | write (FileStorage &fs) const |
| | 将算法参数存储在文件存储中。
|
| |
| void | write (FileStorage &fs, const String &name) const |
| |
| std::vector< Mat > | blobs |
| | 必须在其中存储学习参数列表,以便可以使用 Net::getParam() 读取它们。
|
| |
| String | name |
| | 层的实例名称,可用于记录或其他内部目的。
|
| |
| int | preferableTarget |
| | 首选层转发目标
|
| |
| String | type |
| | 用于通过层工厂创建层的类型名称。
|
| |
| void | writeFormat (FileStorage &fs) const |
| |