下一步準備研究物體視覺,今天才剛把OpenCV2.3.1安上,節奏比較慢,不過得穩步前進。花了一晚上和一上午的時間把環境配置成功,還是比較拖沓,但原因並非全在我。查了很多相關網頁,把我走的一些彎路描述下下,希望能與“同行”們交流。前車之鑑,後車之師,當然,只對於像我一樣菜鳥中的菜鳥。
1、關於vs2008配置問題,添加包含文件我就不說了,只說一下依賴項問題。需要在項目屬性附加依賴項中添加 Additional Dependencies]:
爲項目的Debug配置增加[附加依賴項opencv_calib3d231d.lib; opencv_contrib231d.lib; opencv_core231d.lib; opencv_features2d231d.lib; opencv_flann231d.lib; opencv_gpu231d.lib; opencv_highgui231d.lib; opencv_imgproc231d.lib; opencv_legacy231d.lib; opencv_ml231d.lib; opencv_objdetect231d.lib;
opencv_ts231d.lib; opencv_video231d.lib
(可根據實際需要刪減)注意,請打開了新編輯窗口(即點擊了“...”按鈕)“附加依賴項”,並一條一條分別加入,一條一行(一個回車),否則會出現類似以下錯誤:1>LINK : fatal error LNK1104: 無法打開文件“…….lib”
爲項目的Release配置增加[附加依賴項 Additional Dependencies]:opencv_calib3d231.lib; opencv_contrib231.lib; opencv_core231.lib; opencv_features2d231.lib; opencv_flann231.lib; opencv_gpu231.lib; opencv_highgui231.lib; opencv_imgproc231.lib; opencv_legacy231.lib; opencv_ml231.lib;
opencv_objdetect231.lib; opencv_ts231.lib; opencv_video231.lib
(可根據實際需要刪減)
注意,中間的分號一定要刪掉
2、關於visual 2008中error PRJ0003 : 生成 cmd.exe 時出錯”的問題
解決方案:工具—>選項—>項目和解決方案—>VC++目錄,在可執行文件欄中加上如下路徑:
$(SystemRoot)\System32 $(SystemRoot)\System32\wbem |
3、設置環境變量(注意,是兩個)
需要將OpenCV的dll文件所在的目錄加入Path環境變量。dll文件目錄如下,請根據自己情況五選一:
- 自己編譯的庫,dll目錄爲:D:\Program Files\OpenCV2.3.1\build\my\install\bin
- 32位系統 & VC2008,dll目錄爲:D:\Program Files\OpenCV2.3.1\build\x86\vc9\bin
- 32位系統 & VC2010,dll目錄爲:D:\Program Files\OpenCV2.3.1\build\x86\vc10\bin
- 64位系統 & VC2008,dll目錄爲:D:\Program Files\OpenCV2.3.1\build\x64\vc9\bin
- 64位系統 & VC2010,dll目錄爲:D:\Program Files\OpenCV2.3.1\build\x64\vc10\bin
由於有些函數需要TBB,所以需要將tbb所在的目錄也加入到環境變量Path中。TBB相關的DLL路徑爲:
- 32位系統 & VC2008:D:\Program Files\OpenCV2.3.1\build\common\tbb\ia32\vc9
- 32位系統 & VC2010:D:\Program Files\OpenCV2.3.1\build\common\tbb\ia32\vc10
- 64位系統 & VC2008:D:\Program Files\OpenCV2.3.1\build\common\tbb\intel64\vc9
- 64位系統 & VC2010:D:\Program Files\OpenCV2.3.1\build\common\tbb\intel64\vc10