VS2017下OpenCV3.4.6的编译
1、准备工作
1)下载CMake,我用的是cmake-3.12.0-win64-x64
https://cmake.org/files/v3.12/cmake-3.12.0-win64-x64.msi
下面是CMake所有版本的地址
2)下载VS2017,这没什么好说的,直接贴地址
https://docs.microsoft.com/en-us/visualstudio/releasenotes/vs2017-relnotes
3)下载opencv源代码
https://github.com/opencv/opencv
github下载慢的可以去码云下载
https://gitee.com/opencv-lhd/opencv
2、环境配置
1)vs2017和cmake的安装没什么好说的,都是傻瓜式安装
2)打开cmake-gui,填入opencv源代码路径和构建路径。我cmake安装的是64位的,所以32位和64位构建程序都能支持,点击configure的时候注意选择编译器版本
我这里选的是32位,64位选择带Win64标签的
3)由于sift、surf等类似的特征提取算法已经被申请了专利,opencv默认不会把这些东西编译进去,需要使用特征相关的内容需要手动下载opencv_contrib,直接去github下载
https://github.com/opencv/opencv_contrib/releases
github下载慢的可以去码云下载
https://gitee.com/opencv-lhd/opencv_contrib
注意opencv_contrib版本要选择和opencv版本一致的,选错了编译会有问题
下载完成后直接解压,然后在cmake列表里找到OPENCV_EXTRA_MODULES_PATH项,把刚才的解压目录下的modules目录填进去
然后重新configure
4)关于ffmpeg和ippicv下载错误的问题这里不再讲了
5)configure没有报错之后点击Generate,出现Generating done就表示可以了
3、编译
1)直接在cmake-gui继续点击Open Project就可以打开VS编译器,打开之后是这样
2)点击“生成”--》“批生成”,然后勾选两个INSTALL,点击生成之后就是等待了,大概半个小时左右就构建完成