天天看點

vs2012 下 配置 opencv2.4.9

一.   環境準備

  1. 下載下傳并安裝 Visual Studio 2012
  2. 下載下傳并安裝 opencv 最新版本(本人用的是2.4.9 )   

二. 設定環境變量

 打開環境變量設定界面.

方法一:  開始 –> 控制台 –> 系統和安全 –> 系統 –> 進階系統設定 –> 進階 –> 環境變量

方法二:  右擊我的電腦-->屬性-->進階系統設定--> 進階 –> 環境變量

上述操作之後可看到以下界面:

vs2012 下 配置 opencv2.4.9
vs2012 下 配置 opencv2.4.9
vs2012 下 配置 opencv2.4.9
vs2012 下 配置 opencv2.4.9

 在上上圖”環境變量”視窗找到變量”path”. 點選”編輯” 按鈕 或 輕按兩下“path“

 更改”變量值”, 在原有的變量值基礎上, 增加” ;%opencv%\build\x86\vc11\lib”. 點選确定  // %opencv%為你安裝opencv的絕對路徑

例如我的 %opencv%路徑為:F:\software\opencv.2.4.9\opencv

注意:1. 分号不要丢掉

           2. 

    之前在vs2012下編譯一個opencv程式時,一直出現msvcp120d.dll檔案丢失的提示資訊,問題産生的主要原因是vs2012編譯了一個用vs2013生成的dll,是在選擇第三方庫時選擇vc版本時出現的問題,一定要多加注意。

  • vc8 = Visual Studio 2005
  • vc9 = Visual Studio 2008
  • vc10 = Visual Studio 2010
  • vc11 = Visual Studio 2012
  • vc12 = Visual Studio 2013
  • MSVCP80.DLL is from Visual Studio 2005
  • MSVCP90.DLL is from Visual Studio 2008
  • MSVCP100.DLL is from Visual Studio 2010
  • MSVCP110.DLL is from Visual Studio 2012
  • MSVCP120.DLL is from Visual Studio 2013 

環境變量  ” ;%opencv%\build\x86\vc11\lib”

是以這裡寫的是vc11,而不是vc12(x86檔案夾下有三個檔案夾,vc10,vc11,vc12,切

勿以為是vs2012就選vc12,至于為什麼,上面都寫清楚了!)

三. 設定 VS 2012 環境

(注意: 如果現在你的 vs打開着,請關閉重新打開vs.)

1. 建立 Project

vs2012 下 配置 opencv2.4.9

下一步, 注意下面幾個選項.

vs2012 下 配置 opencv2.4.9
vs2012 下 配置 opencv2.4.9
vs2012 下 配置 opencv2.4.9
vs2012 下 配置 opencv2.4.9
vs2012 下 配置 opencv2.4.9

完成 項目建立

2.  設定項目屬性.

1) 建立 Property Sheet.

在VS最左側找到 “Property Manager”( 屬性管理 ) 頁籤, 如下圖所示. ( 如果沒有找到”Property Manager”. 點選菜單欄 “VIEW” –> “Property Manager” 即可看見 )

如下圖所示, 在 “Debug|Win32” 上右鍵單擊, 點選”Add New Project Property Sheet”

vs2012 下 配置 opencv2.4.9
vs2012 下 配置 opencv2.4.9
vs2012 下 配置 opencv2.4.9
vs2012 下 配置 opencv2.4.9
vs2012 下 配置 opencv2.4.9
vs2012 下 配置 opencv2.4.9

路徑預設就行,點選”Add(添加)”完成建立.

2) 編輯 Property Sheet 屬性

如下圖所示, 編輯 “opencv249” 的屬性.

vs2012 下 配置 opencv2.4.9
vs2012 下 配置 opencv2.4.9
vs2012 下 配置 opencv2.4.9

做以下編輯:

vs2012 下 配置 opencv2.4.9

Include Directories(包含目錄) 添加 “%opencv%\build\include”.

Library Directories(庫目錄) 添加 “%opencv%\build\x86\vc11\lib”; (%opencv的含義同上)

vs2012 下 配置 opencv2.4.9

圖下圖所示, 點選”Linker (連接配接器)–> Input(輸入) –> Additional Dependencies(附加依賴項)”.

vs2012 下 配置 opencv2.4.9
vs2012 下 配置 opencv2.4.9
vs2012 下 配置 opencv2.4.9

添加以下内容:

opencv_core249d.lib

opencv_imgproc249d.lib

opencv_highgui249d.lib

opencv_ml249d.lib

opencv_video249d.lib

opencv_features2d249d.lib

opencv_calib3d249d.lib

opencv_objdetect249d.lib

opencv_contrib249d.lib

opencv_legacy249d.lib

opencv_flann249d.lib

上面的”249”換成你下載下傳的opencv版本.比如你的版本是2.4.4, 那麼所有的249換成244即可.

完成設定

 3) 設定 Release 屬性

完成”設定項目屬性”之後, 你的debug版本便可正常使用. 如果需要設定 release 版本. 重複上面步驟 三.2.

中間有兩處不同:

1. 在步驟三.2.1).中, 需要對 “Release |Win32” 添加 Property Sheet.

2. 在步驟三.2.2). 中 所有Additional Dependencies 項, XXX249d.lib 都去掉 “d". 比如 “opencv_core249d.lib” 變成”opencv_core249.lib”. 全部去掉後變成:

opencv_core249.lib 

opencv_imgproc249.lib 

opencv_highgui249.lib 

opencv_ml249.lib 

opencv_video249.lib 

opencv_features2d249.lib 

opencv_calib3d249.lib 

opencv_objdetect249.lib 

opencv_contrib249.lib 

opencv_legacy249.lib 

opencv_flann249.lib

3. 編寫測試代碼并運作.

 建立 main.cpp. 填寫以下代碼

#include<opencv2/opencv.hpp>  

using namespace cv; 

int main() 

   Mat

 img = imread("../img.jpg"); 

   if (img.empty()) 

   { 

       fprintf(stderr,"Error:load image failed."); 

       return -1; 

   } 

   namedWindow("image",

 CV_WINDOW_AUTOSIZE);  

   imshow("image",

 img);  

   waitKey(); 

   return 0; 

}

 随便找張圖檔, 放到放到你的工程目錄, 命名為 img.jpg,當然可以根據自己的需要更換它。

vs2012 下 配置 opencv2.4.9
vs2012 下 配置 opencv2.4.9

編譯運作,結果如下:

vs2012 下 配置 opencv2.4.9
vs2012 下 配置 opencv2.4.9

Contradulations~~

注:不管是32位還是64位系統環境變量都是配X86裡面。

繼續閱讀