OpenCV3.4.0+OpenCV-Contrib + win10编译
因为opencv3.x中去除了opencv2.x中不稳定的模块,所以要想在opencv3中用contrib模块就要自己编译了。这个在网上有很多教程,我也跟着实践了一些,但在我原先的opencv3.4.0已有的情况下,没有编译成功。遂决定从头来一把,从opencv3.4的源码下载开始。因此建议,如果在过程中遇到问题的童鞋,如果实在无法解决,就重新按照此教程,老老实实从头来一遍。
tips:如果,很巧,你也用opencv3.4.0+win10+VS2017,那我编译好的这份install 刚好适用于你,可以自行下载,请戳:。
Step 1. 下载源码
opencv https://github.com/opencv/opencv/releases (各个版本都有)
opencv_contrib https://github.com/opencv/opencv_contrib/releases (各个版本都有)
注意:二者版本要一致!
Step 2. 使用CMake开始编译
Cmake我是3.10版本的,之前下载安装的。CMake的安装网上还是有很多教程的,可百度一下。
编译时需要填两个文件路径,
(1)opencv3.4.0安装路径:F:\opencv\opencv3.4.0
(2)目标文件(即编译后的工程文件)路径:F:\opencv\opencvProj
注意1:我的opencv3.4.0安装在F:\opencv,目标文件安装在F:\opencv\opencvProj。此处要根据你的安装地址来填。
注意2:要根据你所用的VS版本和系统位数来选,比如我的 VS2017+x64(64位系统)。
第一次编译之后,将 Build-opencv-world选上,这个选项会帮助生成opencv_world340d.lib非常有用,可以省去在后边创建工程时包含多个动态链接,只包含这一个即可。
Step 3. 使用CMake再次编译
然后,选择opencv_contrib中的module文件目录,填在opencv_extra_module_path选项中,再一次configure。
我的opencv_contrib中的module文件目录为: F:/opencv_project/cmake_opencv3_4/opencv_contrib-3.4.0/module
如果,此次编译仍有红色的,就再次configure。直到都变为白色。最终结果如下: 没有红色 且 configure done。
然后,点击generate。
等到generate done即可。便完成了opencv和contribute的综合编译。
Step 4.开始进入VS2017编译
到目标文件夹里找到OpenCV.sln用VS2017打开。
首先,选择配置 debug\release模式,x64\x86。此处选择x64还是x86应与上述的第2步相匹配。例如,我之前在第2步选了win64,在第四步中就应选x64。
然后, 点击重新生成解决方案。
再,右键Install,选择生成,开始编译。
编译完成后,发现在目标文件夹下有了.\install文件夹。
点开install文件夹发现,其内容如下:
Step 5.进行环境设置和工程设置
配置环境变量: 【环境变量】->【系统变量】->【Path】
在变量值后加 F:\opencv\opencvProj\install\x64\vc15\bin
注意: 这要改成你的路径.
进行工程属性配置:
生成后把opencv和contrib综合了起来。所以配置的时候只需要用.\install了。
Step 6.妥善处理
生成后把opencv和contrib综合了起来。所以配置的时候只需要用.\install了。
这是生成的文件,只需保留install即可,其他的可以删除,节省空间。
https://blog.csdn.net/maoluluzuibang/article/details/78953382
https://blog.csdn.net/muyouhang/article/details/79198216