我正在尝试加载一个网络配置,其中首先有一个内存数据层,然后是一个卷积层,在测试阶段进行。MemoryData层的创建成功了,但是卷积层在以下位置的创建失败了:
LOG(INFO) << "Creating layer " << param.name();
const string& type = param.type();
CreatorRegistry& registry = Registry();
CHECK_EQ(registry.count(type), 1) << "Unknown layer type: " << type
<< " (known types: " << LayerTypeList() << ")";
打印出的错误是:
F0519 14:54:12.494139 14504 layer_factory.hpp:77] 检查失败: registry.count(type) == 1 (0 vs. 1) 未知层类型:Convolution (已知类型:MemoryData)
注册表只有一项,确实是MemoryData。 当进入注册表创建函数时,看起来它首先调用了一个(也是最后一个,因为这是单例)由...调用。
REGISTER_LAYER_CLASS(MemoryData);
在memory_data_layer.cpp文件中。
我看到其他支持的层有类似的REGISTER_LAYER_CLASS
调用,但似乎它们从未被调用。
我该如何解决这个问题?
谢谢!
-all_load
添加到OTHER_LDFLAGS
。 - jimj