導讀 | 僅記錄供內部參考。 本文將重點放在 編譯第三方庫 和 生成對應的 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