Windows下編譯自己的opencv3.1庫

1 安裝各種軟件和libraries

參考官網教程,但是很多軟件沒有用到,所以我就沒有安裝。

1.1 CMake(gui)

下載CMake 3.5.2

1.2 Python 2.7(optional)python-2.7.11.msi

將Python加入環境變量(下次就可以直接python了)

1.2.1 安裝Python依賴項setuptools運行

  • python ez_setup.py
  • 會在Python27\Scripts文件夾下面生成easy_install.exe

1.2.2 安裝Python依賴項sphinx

  • cd C:\Python27\Scripts
  • 運行 easy_install sphinx

1.2.3 安裝Python依賴項Numpy

  • 這個略爲麻煩,因爲官網上沒有給x64位的exe文件,一種是通過 easy_install numpy
    但是報錯,更新了pip(先安裝 easy_install pip),仍然不行。
  • 另一種方法:在以下網站上給出了各種whl文件。
    http://www.lfd.uci.edu/~gohlke/pythonlibs/#numpy
    先是下載了amd64.whl
    然後運行pip install xxx.whl
    仍然報錯:C:\Python27\Scripts>pip install “numpy-1.9.2+mkl-cp26-none-win_amd64.whl”
    numpy-1.9.2+mkl-cp26-none-win_amd64.whl is not a supported wheel on this platform.
  • 原因:版本不匹配
  • 後來下載了x32.whl的反而好了,應該是因爲安裝python的時候裝的是32位的。[汗!]

1.2.4 安裝Python依賴項matplotlib方法同上。

2 運用CMake-gui生成Opencv.sln

2.1 下載opencv_contribOpenCVcontrib

下載地址:https://github.com/Itseez/opencvcontrib\

2.2 下載opencv3.1.exe

解壓爲opencv,創建兩個文件夾,命名爲sources和mybuild
sources就是主要的:
這裏寫圖片描述

2.3 運用cmake

  • 在where is the source code選擇opencv的安裝目錄,我的是D:\opencv3.1\opencv\sources
  • 在where to build the binaries裏面選擇要將opencv編譯到的目錄下面,我的是:D:\opencv3.1\opencv\mybuild
  • 點擊configure,在彈出的對話框內選擇 Visual Studio 2013 x64 和default參數,點擊finish。

3 VS編譯生成鏈接庫

3.1 打開mybuild下的Opencv.sln

3.2 編譯debug版本庫,在“解決方案’OpenCV’(156個項目)”上面點擊右鍵–>重新生成解決方案。

  • 會出現找不到依賴項opencv_bioinspired310d.lib的錯誤。不需要用到,所以直接忽略。

3.3 找到CMakeTargets中的INSTALL,然後右鍵選擇“僅限於項目”–>“僅生成INSTALL”。

然後就在mybuild\install中有了很多東西。

3.4 切換到release模式下,再重新生成解決方案,再重複3.3

  • 可以在install\x64\vc12下面看到bin,lib,staticlib等文件夾了。

4 重新配置自己的項目

  • 在項目名稱上右鍵屬性

4.1 VC++目錄–>包含目錄,添加:

  • D:\opencv3.1\opencv\mybuild\install\include

4.2 VC++目錄–>庫目錄,添加:

  • D:\opencv3.1\opencv\mybuild\install\x64\vc12\lib
  • D:\opencv3.1\opencv\mybuild\install\x64\vc12\staticlib

4.3 鏈接器–>輸入–>附加依賴項,添加:

前面爲release,後面爲debug

opencv_aruco310.lib
opencv_bgsegm310.lib
opencv_calib3d310.lib
opencv_ccalib310.lib
opencv_core310.lib
opencv_datasets310.lib
opencv_dnn310.lib
opencv_dpm310.lib
opencv_face310.lib
opencv_features2d310.lib
opencv_flann310.lib
opencv_fuzzy310.lib
opencv_highgui310.lib
opencv_imgcodecs310.lib
opencv_imgproc310.lib
opencv_line_descriptor310.lib
opencv_ml310.lib
opencv_objdetect310.lib
opencv_optflow310.lib
opencv_photo310.lib
opencv_plot310.lib
opencv_reg310.lib
opencv_rgbd310.lib
opencv_saliency310.lib
opencv_shape310.lib
opencv_stereo310.lib
opencv_stitching310.lib
opencv_structured_light310.lib
opencv_superres310.lib
opencv_surface_matching310.lib
opencv_text310.lib
opencv_tracking310.lib
opencv_ts310.lib
opencv_video310.lib
opencv_videoio310.lib
opencv_videostab310.lib
opencv_xfeatures2d310.lib
opencv_ximgproc310.lib
opencv_xobjdetect310.lib
opencv_xphoto310.lib
ippicvmt.lib

debug:

opencv_aruco310d.lib
opencv_bgsegm310d.lib
opencv_calib3d310d.lib
opencv_ccalib310d.lib
opencv_core310d.lib
opencv_datasets310d.lib
opencv_dnn310d.lib
opencv_dpm310d.lib
opencv_face310d.lib
opencv_features2d310d.lib
opencv_flann310d.lib
opencv_fuzzy310d.lib
opencv_highgui310d.lib
opencv_imgcodecs310d.lib
opencv_imgproc310d.lib
opencv_line_descriptor310d.lib
opencv_ml310d.lib
opencv_objdetect310d.lib
opencv_optflow310d.lib
opencv_photo310d.lib
opencv_plot310d.lib
opencv_reg310d.lib
opencv_rgbd310d.lib
opencv_saliency310d.lib
opencv_shape310d.lib
opencv_stereo310d.lib
opencv_stitching310d.lib
opencv_structured_light310d.lib
opencv_superres310d.lib
opencv_surface_matching310d.lib
opencv_text310d.lib
opencv_tracking310d.lib
opencv_ts310d.lib
opencv_video310d.lib
opencv_videoio310d.lib
opencv_videostab310d.lib
opencv_xfeatures2d310d.lib
opencv_ximgproc310d.lib
opencv_xobjdetect310d.lib
opencv_xphoto310d.lib
ippicvmt.lib

5 編譯項目

  • 報錯:顯示無法啓動此程序,因爲計算機中丟失opencv_core310.dll
  • 原因:未添加環境變量!
  • 在用戶變量path下加上;D:\opencv3.1\opencv\mybuild\install\x64\vc12\bin
  • 保存,重啓vs,OK!

參考資料:
[1] https://segmentfault.com/a/1190000003496009
官網:
[2] http://docs.opencv.org/3.0-last-rst/doc/tutorials/introduction/windows_install/windows_install.html#windows-installation

發佈了18 篇原創文章 · 獲贊 19 · 訪問量 8萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章