首先聲明在Visual Studio 2008/2010下使用OpenCV不需要再編譯OpenCV-2.4.0,原因是在OpenCV-2.4.0.exe解壓後會產生build文件夾,其中有很多目錄,我們注意到x86文件夾,裡面又有vc9、vc10等文件夾(包含debug和release版本),使用這些文件我們可以直接配置OpenCV-2.4.0,這裡講述編譯方法只是一時興起。配置方法詳見本人其他文章:OpenCV 2.3.x/2.4.x在Visual Studio 2005/2008和VisualStudio 2010配置方法詳解,這裡不對這方面的知識進行講解。
我們將要使用的工具有:Visual Studio 2005/2008 Professional、Visual Studio 2010 Ultimate、cmake、intel tbb、OpenCV-win源代碼(注意是Windows下的源代碼,linux源碼編譯會產生錯誤)。
下面,我們就來介紹如何使用OpenCV-win源代碼編譯OpenCV目標文件吧。
一、生成項目文件
1.首先,我們將預使用的OpenCV-win源代碼放置到指定目錄
我在“C:\ProgramFiles”目錄下新建一個“OpenCV”目錄,並在裡面新建一個src目錄並將OpenCV-win源碼放置到該文件夾,目錄結構如圖1所示:
圖1 C:\ProgramFiles\OpenCV\src內的目錄結構
2.下載並安裝配置intel tbb
這裡我把intel tbb解壓後的文件夾放置到“C:\Program Files”目錄下(如圖2所示),然後將intel tbb的bin目錄添加到系統環境變量,在桌面上右擊“計算機”,選擇“屬性-高級系統設置”,進入“高級”選項卡,“環境變量-系統變量”,如圖3所示:
圖2 tbb40_20120408oss內的目錄結構
圖3 系統環境變量
編輯“Path”變量,在最後添加intel tbb的bin(注意要深入到最內層目錄,如Visual2005的話應該為“C:\ProgramFiles\tbb40_20120408oss\bin\ia32\vc8”,Visual Studio 2008應為“C:\ProgramFiles\tbb40_20120408oss\bin\ia32\vc9”)目錄所在全路徑。如我應該添加如下變量:“C:\Program Files\tbb40_20120408oss\bin\ia32\vc8”,這裡要注意的是變量之間是以分號“;”分隔的(玩過Linux的都知道Linux下系統變量之間是以冒號“:”分隔的)。
修改完系統環境變量後,為使環境變量生效,需要注銷一下電腦,或者重啟“explorer.exe”進程即可,這裡不過多贅述。
3.安裝cmake,並生成項目文件
安裝完cmake後,運行cmake,如圖4所示,然後單擊“Where is the source code:”右側的“Browse Source”,浏覽到“C:/ProgramFiles/OpenCV/src”文件夾,單擊“where to buildthe binaries:”右側的“Browse Build”,浏覽到“C:/Program Files/OpenCV/vs2008”文件夾(vs2008文件夾是我自己創建的)。
圖4 配置源代碼和生成目錄