ncnn源码分析-002-layer

1.类结构
class Layer
{
public:
    int typeindex;
    std::string type;
    std::string name;
    std::vector<int> bottoms;//输入blob索引
    std::vector<int> tops;//输出blob索引

    int load_param(const ParamDict &pd);
    int load_model(const ModelBin &mb);
    int forward(const std::vector<Mat> &bottom_blobs, std::vector<Mat> &top_blobs, const Option &opt = get_default_option());
}

load_param和load_model两个函数除在layer中出现意外,还是net类结构里的成员函数,只是输入的参数类型不同,net类中通过FILE*加载,将参数转换为ParamDict结构,然后调用当前layer的成员函数int load_param(const ParamDict &pd)来解析param文件中的参数到具体的层结构成员变量中,实现参数的解析。

猜你喜欢

转载自www.cnblogs.com/ganchunsheng/p/11673952.html