Windows下編譯OpenCV+OpenCV-contrib
最近使用OpenCV需要使用SIFT演算法,但是最新的OpenCV3-python默認是不安裝這個演算法功能的。經過搜索得知這些附加的功能並沒有在官網上線而是都被上傳在了Github上。
https://github.com/opencv/opencv_contrib
於是需要重新編譯一次OpenCV,不過官網的方法照著做完之後出現的問題還是很多的
http://docs.opencv.org/3.2.0/d5/de5/tutorial_py_setup_in_windows.html
通過搜索諸多方法最後總算是成功了。
將OpenCV的代碼和OpenCV-contrib的源代碼打包下載並解壓。
下載安裝CMake,在其官網下載
https://cmake.org/
準備好Visual Studio,我使用的是Visual Studio 2017 Community
打開CMake-gui
第一個選擇下載好的OpenCV的源碼,第二個選擇生成文件夾,在這裡我給文件夾取名為opencv_build,點擊Configure
選擇對應的Visual Studio版本(要注意選擇Win64,當時沒選擇Win64,在編譯時出現了問題)
稍等片刻
Configure完成後,選擇需要的功能
確定Python的路徑是否正確
搜索extra,在OPENCV_EXTRA_MODULES_PATH的Value中,填入下載好的opencv_contrib文件夾裡面的modules文件夾,點擊Configure,稍等片刻
完成後點擊Generate
完成後就可以點擊Open Project打開項目了
打開項目後,首先要把項目更改為Release
點擊生成,在經過較長的一段等待時間之後即可完成編譯。
配置好python路徑之後,再右鍵install點擊生成即可完成opencv-python的安裝。
安裝好之後需要進入python文件夾搜索cv2然後講文件名改為cv2.pyd
配置環境變數PATH,編輯器路徑為build文件夾下的bin
elease
最後在python中import
cv2,即可完成編譯安裝。推薦閱讀:
※【小林的OpenCV基礎課 3】視頻淺淺談
※OpenCV機器學習——樸素貝葉斯NBC
※web AR 前端二維碼跟蹤 - 2 homography pose的計算
※1.24【OpenCV圖像處理】直方圖對比