第一步安装相关运行环境
安装相关环境就不给详细步骤了直接参考给的链接:
1、https://github.com/Tencent/ncnn/wiki/how-to-build#build-for-windows-x64-using-visual-studio-community-2017)
这是官方给的安装,但是没给opencv怎么装
2、https://blog.csdn.net/qq_36890370/article/details/104966786)
该链接里讲很清楚,但是有一地方需要注意,vs2019自带cmake了,不需要按照该链接中那种去安装cmake工具,不然后面构建反而要出错,直接跳过它的cmake工具 安装步骤;
第二点需要注意,安装的路径一定不要用Program File是 类似这种带空格的路径!不能带空格!不能带空格!
第二步创建cmake项目,怎么配置cmakelists
#创建cmake项目
这些都是在vs2019里进行创建项目一样,开始选择cmake就行,这个不多阐述
#配置cmakelists.txt
cmake_minimum_required (VERSION 3.8)
project ("CMakeProject1")
#头文件
include_directories("D:/ncnn/ncnn-master/build-2019/install/include/ncnn")
include_directories("D:/ncnn/opencv/build/include")
#库文件
link_libraries(D:/ncnn/opencv/build/x64/vc15/lib/opencv_world342.lib)
link_libraries(D:/ncnn/ncnn-master/build-2019/install/lib/ncnn.lib)
# 将源代码添加到此项目的可执行文件
add_executable (CMakeProject2 CMakeProject2.h "CMakeProject2.cpp")
此处需要重点注意:
openc库路径 D:/ncnn/opencv/build/x64/vc15/lib/ (找你的安装路径)
下面有两个文件相似文件 opencv_world342.lib 和opencv_world342d.lib
这里一定要配置成opencv_world342.lib 文件,
后面那个是debug模式的文件,我们暂时不用(为什么后面解释);
运行模型
在D:\ncnn\ncnn-master\examples 路径中有相关模型代码。模型参数等,我这里选择的是squeezenet.cpp ,为了避免cmakelists配置再出问题 ,将squeezenet.cpp源码复制覆盖原来的CMakeProject2.cpp 源代码;
修改代码几个地方:
1、squeezenet.opt.use_vulkan_compute = ture 将true该为了false;
修改模式从x64-debug 切换为x64-release(没有release模式就创建一个);
为什么要强调用release 模式,因为我们在配置cmakelists中ncnn库 的时候配置
link_libraries(D:/ncnn/ncnn-master/build-2019/install/lib/ncnn.lib)
这个ncnn.lib 只支持在release模式下才能正常运行,这就是上面为什么我让配置opencv 的lib 库也只能配置release模式,不能用它debug模式的lib。
基本上有坑的地方都讲了,其他就是代码梳理的,这个不累述了。。