前幾天在寫代碼的時候發現周圍有人都換到了OpenCV3.2上面去啦,我當時就把OpenCV3.1包給删啦,立馬下載下傳OpenCV3.2,下載下傳位址在這
選擇Windows自解壓的那個連接配接點選進去即可下載下傳OpenCV3.2的Windows版本。下載下傳以後解壓縮到指定目錄即可。
擴充子產品下載下傳位址
<a href="https://github.com/opencv/opencv_contrib">https://github.com/opencv/opencv_contrib</a>
同樣下載下傳好之後先解壓縮到指定目錄即可。
然後就可以下載下傳CMake了,我用的是CMake3.7.2這個版本,貌似不是最新版本,大家可以下載下傳最新版本。下載下傳安裝好了之後就可以開始編譯了。
說一下機器環境 Win764位 + VS2015。
首先要打開CMake GUI然後設定好源代碼路徑與編譯路徑,顯示如下:

點選【configure】之後會彈出對話框,讓你選擇編譯的位數與版本,記得一定選擇VS2015 + Win64的,(當然要根據實際情況來),選擇好啦顯示如下:
點選【Finish】就會開始配置編譯,如果一切順利就會看到如下界面
在一堆紅色區域的Name列對應有一個是設定擴充子產品路徑的額,看下圖的藍色矩形框,選擇設定好即可。
設定好OpenCV擴充子產品的路徑之後再次點選【configure】按鈕。如果一切正常結束之後再點選【generate】按鈕。結束之後CMake就編譯好啦。顯然如下圖:
然後在設定的編譯路徑上D:\opencv3.2\opencv\newbuild目錄裡面會有個OpenCV.sln檔案,輕按兩下就可以在VS2015中打開找到
-CMakeTargets->INSTALL右鍵在彈出的菜單中選擇生成即可
如果一切OK,就會生成install目錄,以我本機的目錄結構為例
D:\opencv3.2\opencv\newbuild\install
點選進去,配置好VS2015之後即可使用。
上面說的是理論應該這樣順利,但是實際不是這麼回事情。
坑一:
CMake的時候報Download錯誤與MD5檔案校驗錯誤,願意是因為OpenCV3.2中會去下載下傳谷歌的protobuff和TensorFlow相關第三方程式,結果下載下傳不了,網絡就挂啦!原因是OpenCV3.2內建了深度學習架構TensorFlow相關的接口。
坑二
找不到ippicvmt.lib,我也不知道怎麼會事情,OpenCV3.2居然沒有它編譯放到install/lib裡面去,而是在第三方的那個目錄下面lib裡面,是以我手動copy了放到一起。
坑三
我在正常配置之後,在Tracking子產品中發現selectROI函數居然用不了,搞了半天,是因為tracking.hpp居然沒有把它作為頭檔案包含進來,這個跟OpenCV3.2的教程上有點不一緻。是以我手動包含了一下。最終我的OpenCV3.2+VS2015的配置搞好啦!