多數情況下,能夠直接使用OpenCV自帶的庫文件,可是假設是為了方便調試:
1. 方便調試opencv源代碼
2. 為了與某些庫兼容
還是須要又一次編譯opencv的源代碼。
OpenCV1.0版本號有windows,linux之分,在 \OpenCV\_make目錄以下已經存在了一個opencv.dsw的project文件。直接用VC6,或者。Visual Studio就能夠打開該project,從而能夠進行對應的編譯工作;而對於OpenCV2.0及以后的版本號而言,就沒有類似的project文件了。這個時候,就須要你自己利用CMake工具來生成一個Visual Studio的project文件了。
CMake編譯OpenCV
OpenCV的下載與安裝
下載Windows下的安裝文件OpenCV-2.4.3.exe,雙擊解壓。選擇須要的安裝文件夾就可以。我的存放路徑為D:\opencv。
解壓完畢后就是須要的文件了。注意對應的文件夾不能包括中文。
編譯OpenCV
這一步不是必須的,假設不編譯,能夠使用編譯好的庫,可是不能進行源碼的跟蹤調試(未驗證),因此這里還是編譯一下。
編譯用的工具Cmake,這是一個跨平台的安裝編譯工具。主要用於把OpenCV的源代碼生成相應的VSproject。操作例如以下。
1、如圖所看到的。設置OpenCV的安裝文件路徑和想要生成的文件路徑。
2、點擊左下方configure,在彈出的選項中選擇Visual Studio 10(相應2010版本號)。
3、點擊完畢就會進行配置,配置后的界面例如以下圖所看到的,選擇須要增加的文件。我這里勾上BUILD_EXAMPLES其它選項默認。
4、改動完畢后再次點擊configure進行配置。完畢后點擊Generate,至此完畢配置。
使用VS2010編譯版本號庫
以上操作完畢后,就能夠在生成的文件夾下找到相應的project文件,依據上圖配置我的文件路徑為D:\OpenCV24\OpenCV.sln,使用VS2010打開,進行例如以下操作。
1、在Debug下,選擇解決方式(解決方式資源管理器)里的 解決方式“OpenCV”。點右鍵,執行"又一次生成解決方式"。
2、生成成功后。在選擇INSTALL項目,右鍵執行生成;
3、在Release下進行1-2步的操作。
4、以上操作完畢后,針對當前的系統的OpenCV庫就生成了。
VS的相關配置
也即告訴VC去什么地方尋找OpenCV的頭文件和庫。打開VC。選擇菜單“工具”->“選項”->“項目和解決方式”->“VC++文件夾”->“包括文件”。在VS2010中此選項打開例如以下圖所看到的,顯示編輯功能被否決。
可以在詳細的項目中右鍵->屬性來設置,僅僅是這種設置無法被繼承。每個項目都須要單獨設置,因此須要叢一個可以被繼承的全局設置,方法例如以下:
1、在VS中確保至少有一個project被打開的情況下,點擊“視圖”->“其它窗體”->“屬性管理器”,然后從左側隨意項目中打開“Debug| Win32”->“Microsoft.Cpp.Win32.user”,例如以下圖所看到的。
2、在彈出例如以下圖所看到的的窗體中,加入文件包括與庫的路徑。點擊左側VC++文件夾,編輯右側的包括文件夾與庫文件夾。分別加入相應的路徑。
相應的路徑例如以下:
包括文件夾
使用提供的庫須要加入(相應我自己的安裝文件夾。路徑依據個人安裝改動)
D:\opencv\build\include
D:\opencv\build\include\opencv
D:\opencv\build\include\opencv2
假設使用的是上文編譯的庫的路徑,則加入(相應我自己的文件夾,路徑依據個人安裝改動)
D:\OpenCV24\install\include
D:\OpenCV24\install\include\opencv
D:\OpenCV24\install\include\opencv2
64為系統相應更改。
庫文件夾
在OpenCV的安裝文件里已經為VC2008和2010預先編譯好了動態庫與靜態庫,因此能夠不須要編譯直接加入。
針對VS2010加入(相應我自己的文件夾。路徑依據個人安裝改動)
D:\opencv\build\x86\vc10\lib
加入上文編譯的庫則加入(相應我自己的文件夾。路徑依據個人安裝改動)
D:\OpenCV24\install\lib
注:有的資料中說法例如以下:
(注:因為自己編譯成功,lib文件在Debug和Release兩個文件里,載入庫時需到Debug和Release中, 我配置的庫文件夾為:D:\Program Files\OpenCV2.3.1\opencv\build\my\install\lib\Debug,否則調試時無法進入Open CV代碼中。 by:Jackyzzy 趙振陽)
可是我的文件夾下並沒有相應的文件夾。反而在D:\OpenCV24\lib文件夾下有相應的Debug文件夾,文件經過對照也一致。因此這個地方到底加入什么地方的眼下還沒有驗證,已經驗證的同學歡迎告知我。
到這里。配置完成,隨意打開一個項目通過屬性來查看,能夠看到以上配置已經被繼承。
環境變量設置
剛才設置的是動態庫,因此還須要將OpenCV的dll文件所在的文件夾增加Path環境變量。dll文件文件夾例如以下:
自己編譯的庫
D:\OpenCV24\install\bin
使用提供的庫(VS2010)
D:\opencv\build\x86\vc10\bin
有的資料中說因為有些函數須要使用TBB,因此須要把TBB相關也加入環境變量,可是我並沒有在opencv\build\common\tbb這個路徑中找到TBB文件件。在2.4.3版本號中經過查找此目錄存在與opencv\build\common\tbb 路徑下,因此這部分相同未驗證。
至此。就完畢了OpenCV的安裝與配置。