本文主要是介绍caffemodel转NCNN,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
在移动端和嵌入式平台上使用NCNN框架调用caffe模型。
NCNN编译安装
- 下载链接:https://github.com/Tencent/ncnn/archive/20181228.zip
- Build from source
mkdir build && cd build
# 在cmake之前检查一下CMakeLists.txt末尾是否打开了target-tools
cmake ..
make
make install
caffemodel转NCNN model
1. 旧版caffemodel 转新版caffemodel
caffe/build/tools/upgrade_net_proto_text model_deploy.prototxt model_deploy_2.prototxt
caffe/build/tools/upgrade_net_proto_binary model.caffemodel model_2.caffemodel
2. caffemodel 转 NCNN model
ncnn-20181228/build/tools/caffe/caffe2ncnn model_deploy_2.prototxt model_2.caffemodel model.param model.bin
- *.param文件中存的是模型结构,可以直接用vim查看,明文保存的
- *.bin文件中存的是权重数据
- 如果需要对模型结构进行加密,则执行以下指令。执行成功以后,会在ncnn-20181228/build/tools目录下生成一个model.param.bin文件,即为加密后的模型文件。
ncnn-20181228/build/tools/ncnn2mem model.param model.bin model.id.h model.mem.h
NCNN model 加载
//加载加密模型
ncnn::Net net;
net.load_param_bin("model.param.bin");
net.load_model("model.bin");//不加密
ncnn::Net net;
net.load_param("model.param");
net.load_model("model.bin");
这篇关于caffemodel转NCNN的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!