Windows下编译OpenCV+OpenCV_Contrib
0 OpenCV及OpenCV_Contrib
OpenCV_Contrib是OpenCV的扩展模块,其中包含着一些新的算法(可能不稳定)和涉及知识产权保护的算法,OpenCV提供的windows下编译好的动态库并不包括OpenCV_Contrib中的算法,要想使用这些算法需要对OpenCV源码和OpenCV_Contrib源码进行编译,生成完整的动态库,而不是使用官方提供的已经编译好的动态库。
OpenCV对应版本下载链接
OpenCV_Contrib对应版本下载链接
1 准备工作
Windows10(可以上网)
VS2017
CMake3.12.4
OpenCV4.0.1
OpenCV_Contrib4.0.1
2 CMake生成VS2017工程
2.1 OpenCV4.0.1 编译配置
- 1 打开CMake,设置“where is the source”目录为OpenCV文件夹中的source目录;
- 2 设置“where to build binaries”目录为自己新建的编译目录,英文路径;
- 3 点击Configure,弹出对话框选择VS版本。
- 4 选择对应的VS版本,并选择win64,点击Finish。
- 5 等待第1次配置完成,发现有些项是红色的,需要再点击一次configure,发现红色的项变为白色,即完成OpenCV的编译配置。
2.2 OpenCV_Contrib4.0.1编译配置
-
1 设置“OPENCV_EXTRA_MODULES_PATH”的值为opencv_contrib文件夹中的modules
注意目录不能用左斜线,需要用右斜线,否则后续会出现错误!!!
-
2 使“WITH_CUDA”选项未被选中
-
3 使“OPENCV_ENABLE_NONFREE”选项为勾选状态
-
4 使“BUILD_opencv_world”选项为勾选状态,则最终只生成一个动态库。
-
5 点击Configure,第1次配置完成后有选项为红色,再次点击Configure,则红色变为白色,OpenCV_Contrib编译配置完成。
2.3 生成工程
- 1 点击Generate,生成VS工程。
3 VS2017生成解决方案及安装文件
- 1 打开第二步生成的OpenCV.sln,并选择Debug x64调试环境,依次点击生成—>生成解决方案。
- 2 等待一段时间得到如下结果。
- 3 右键点击CMakeTargets下的INSTALL—>仅用于此项目—>仅生成INSTALL,最终在install目录下生成编译好的Debug库。
- 4 将Debug改为Release,再依次点击生成—>生成解决方案,等待一段时间结果如下。
- 5 右键点击CMakeTargets下的INSTALL—>仅用于此项目—>仅生成INSTALL,最终在install目录下生成编译好的Release库。