Win10 下,使用 CMake + VS2015 + python3 + 第三方库(opencv_contrib) 配置和编译 OpenCV 4.5.1
导读 |
仅记录供内部参考。 本文将重点放在 编译第三方库 和 生成对应的 python 库(yd文件)上 。 |
目录 |
注:操作系统为 Windows 10
Visual Studio 2015
Python 3.6.8
CMake 工具
https://github.com/opencv/opencv.git
https://github.com/opencv/opencv_contrib.git
组织内部使用:(外部参考文章者可忽略)
https://gitee.com/kingstoneai/opencv.git
https://gitee.com/kingstoneai/opencv_contrib.git
(另外还有解决 网络问题,提前下载好的 [opencv/.cache]压缩包)
1、使用 CMake (gui) 打开 opencv\CMakeLists.txt,置构建输出的目录
2、点击 Configure 开始配置,指定项目生成器目标为 “Visual Studio 14 2015 Win64” (这里希望生成 64 位的版本)
3、如果出现如下错误,忽略(该提示 提到 配置 PYTHON2_EXECUTABLE 选项,这里使用 python3 )
4、下载文件失败错误(这个是由于脚本中下载的地址是 github,而这个被墙了)
解决办法:根据 log 文件提示,自己下载对应的文件,放置到对应提示的目录位置
文件自行下载。
组织内部可快捷下载我先下好的 文件(百度云盘,提取码1234)(外部参考文章者可忽略)
下载完成后,放入 opencv/.cache 目录下对应的位置后,再点击 Configure, 可看到相关的下载错误提示消失了
-------------------------------------------------------------------------------------
本文重点内容: 编译第三方库 和 生成对应的 python 库(yd文件)
5、设置对应的第三方库目录
这里只希望编译 wechat_qrcode 模块,设置 额外模块路径为 modules/ wechat_qrcode (如果希望编译所有额外的 库,可以指定 modules 目录)
6、设置 python3 相关参数
(一开始参考一篇博客填写 PYTHON3_LIBRARY 为 python36.dll, 后续编译出错了,这里应该填写 D:/development/python/python368/Libs/python36.lib 才对)
其中的 numpy 是一个拓展数学计算库,需要先提前安装:
下载完成后,按建议,将 Scripts 目录加到环境变量
配置完后,点击 configure,确认 python3 是否已经被识别(如果没有出现 Build_pencv_python3 ,请重新清空 缓存,删除生成的目录,重新 配置,直到出现)
7、设置其他参数
勾选 BUILD_opencv_world:将.lib或者.dll文件统一整合进一个world文件中,方便使用
去除一些下一节提到的 “不建议勾选的项”
8、其他忽略的提示:
遇到如下提示,忽略即可:(参考https://zhuanlan.zhihu.com/p/106689372 第五步)
9、最后,检查配置内容,点击 Generate 完成方案的生成
- BUILD_opencv_world :将.lib或者.dll文件统一整合进一个world文件中,方便使用。但若想只使用一部分模块可不勾选以减少体积。生成动态链接库dll需要勾选BUILD_SHARED_LIBS 。
- ENABLE_CXX11 : 支持C++11特性
- OPENCV_EXTRA_MODULES_PATH :若使用opencv_contrib模块,则在此处填写解压后的路径,如 …\opencv_contrib-3.3.1\modules\
- BUILD_EXAMPLES :项目文件中会包含sample工程,按需勾选。
- INSTALL_C_EXAMPLES :将在install文件夹中编译出一些示例程序(但都是.exe,因此想参考最好还是看sources中的源代码)
- BUILD_DOCS :生成文档,需要安装Doxygen,文档可在官网查看。
- BUILD_opencv_ts :一些单元测试代码,参考文章1 。
- INSTALL_TESTS :与开发无关,参考文章1 。
- BUILD_opencv_saliency :文章2 中指出win10下不能勾选,但实际上并未发现此项。
文章1 中还提供了很多模块及项目的解释,可根据自己需要修改。
————————————————
原文链接:https://blog.csdn.net/howlclat/article/details/78783701
打开解决方案 OpenCV.sln
如下图,批量构建:
根据电脑配置,等待30分钟至1个小时编译。
编译结果:
值得注意的是,这里 pyd 生成时,release 下可以正常生成
debug 下这边提示错误(该点可参考文章解决:https://www.cnblogs.com/lzhu/p/8198654.html)
编译完成后,构建 INSTALL 项目,完成安装:
百度云盘:opencv-4.5.1-vc14-wechat_qrcode.zip 提取码:1234
构建说明:
opencv 构建节点:
commit 1363496c1106606684d40447f5d1149b2c66a9f8 (HEAD -> v4.5.1-dev, tag: 4.5.1, gitee/v4.5.1, v4.5.1)
Author: Alexander Alekhin <alexander.a.alekhin@gmail.com>
Date: Mon Dec 21 20:01:38 2020 +0000
|
opencv_contrib 构建节点:
commit 0165d48da48b169420cd4d70867b991bd48543e8 (HEAD -> master, origin/master, origin/HEAD, gitee/master)
Author: Dimitrios Psychogyios <d.psychogyios@gmail.com>
Date: Mon Mar 1 11:52:49 2021 +0000
|
参考链接:
使用 CMake + VS2017 ( + Python 3) 配置和编译 OpenCV 3.3
版权声明 本博客所有的原创文章,作者皆保留版权。转载必须包含本声明,保持本文完整,并以超链接形式注明作者 BensonLaur 和本文原始地址: |