OpenCV3.4+OpenCV-Contrib +win10编译

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

猜你喜欢

转载自blog.csdn.net/u012679707/article/details/80410952