VS2017+ncnn+OpenCV3+MTCNN配置记录
今天终于在VS2017上跑ncnn+OpenCV3了,特此记录一下。
ncnn安装
首先是ncnn的编译安装,我按照ncnn官网上的编译总是出错,后面参考这位仁兄的,安装成功了
传送门:https://blog.****.net/cuixing001/article/details/79279971
不过又有一点不一样,现在放上我的过程:
1.下载压缩包:https://github.com/Tencent/ncnn/releases,我的版本是ncnn-20180704.zip。
2.解压缩,然后进入src文件夹用CMake编译(为什么要编译后面会说到)
3.复制整个src文件夹到你的工程目录下,同时复制刚才编译的文件夹里面的layer_declaration.h、layer_registry.h、layer_type_enum.h、platform.h这四个头文件到src根目录下(缺少的头文件就是编译来的)
4.把整个src文件添加到工程里,然后新建属性表,把头文件目录添加进去
OpenCV 3安装
首先去官网下载安装包:https://opencv.org/releases.html
我的版本是3.4.2,然后右键exe文件解压缩,然后复制\include、x64\vs15\bin和x64\vs15\lib目录到工程目录下,之后配置属性表,分别添加包含目录include、库目录lib和库文件opencv_world342.lib、opencv_world342d.lib,最后在调试里面加上PATH=bin目录;
关键的来了!这时候直接编译运行很大可能会出现下列错误(我是mtcnn):
一看问题全都在OpenCV的fast math.h文件里,应该是冲突导致的,这时候,只要让OpenCV先加载,既把OpenCV的头文件放在最上面,深度网络的头文件放到下面,就搞定了。
最后贴一张效果图,效果还是很好滴!MTCNN算是开源算法里面比较好的一个了!而ncnn又是速度很快的轻量级框架,相得益彰!