2013年11月19日火曜日

[OpenCV] Windows 8.1 64bit 下的 OpenCV 2.4.7 用於 Visual Studio 2012 的開發環境配置


OpenCV在2.4.4版開始支援Visual Studio 2012,下面記錄環境配置的步驟。

配置方式有很多種,這邊只用最簡單的方式。

1.  從這裡下載 Windows 版的 OpenCV。

2.  執行 OpenCV-2.4.7.exe,將解壓縮路徑指到 C:\

3.  將 C:\ 下的 opencv 變更名稱為 opencv247

4.  開發專案 x64 --> 在系統環境變數 Path 中增加 C:\opencv247\build\x64\vc11\bin;

    開發專案 win32 --> 在系統環境變數 Path 中增加 C:\opencv247\build\x86\vc11\bin;

5.  開發專案 x64 -->
     在 C:\Users\使用者名\AppData\Local\Microsoft\MSBuild\v4.0\ 資料夾下的 Microsoft.Cpp.x64.user.props 中增加下面的敘述


  <PropertyGroup>
    <IncludePath>$(IncludePath);C:\opencv247\build\include</IncludePath>
  </PropertyGroup>
  <PropertyGroup>
    <LibraryPath>$(LibraryPath);C:\opencv247\build\x64\vc11\lib</LibraryPath>
  </PropertyGroup>

    開發專案 win32 -->
     在 C:\Users\使用者名\AppData\Local\Microsoft\MSBuild\v4.0\ 資料夾下的 Microsoft.Cpp.win32.user.props 中增加下面的敘述


  <PropertyGroup>
    <IncludePath>$(IncludePath);C:\opencv247\build\include</IncludePath>
  </PropertyGroup>
  <PropertyGroup>
    <LibraryPath>$(LibraryPath);C:\opencv247\build\x86\vc11\lib</LibraryPath>
  </PropertyGroup>

加完後,看起來會像下圖一樣



















6. 在 Visual Studio 2012中新增一個C++的空專案加入下面的程式碼做測試

#include <opencv2\opencv.hpp>

#ifdef _DEBUG
#pragma comment(lib,"opencv_imgproc247d.lib")
#pragma comment(lib,"opencv_core247d.lib")
#pragma comment(lib,"opencv_highgui247d.lib")
#pragma comment(lib,"opencv_calib3d247d.lib")
#else
#pragma comment(lib,"opencv_imgproc247.lib")
#pragma comment(lib,"opencv_core247.lib")
#pragma comment(lib,"opencv_highgui247.lib")
#pragma comment(lib,"opencv_calib3d247.lib")
#endif

int main()
{
  cv::Mat img = cv::imread("圖片路徑");
  cv::imshow("test", img);
  cv::waitKey(0);
  return 0;
}


沒意外的話應該這樣就完成了(*・ω・)ノ

3 件のコメント:

  1. 請問 Win7 64bit + VS2010 適用這種方法嗎?

    我試過別人的教學跟影片 都沒辦法用..

    返信削除
    返信
    1. Win7 64bit + VS2010也可以用這個方法。
      我有用這個方法試過了win 7 / 8 /8.1 + VS 2010/ 2012 的各種組合。
      在user.props中設定,代表不管任何一個專案都一定會被加入這些路徑。
      所以在作業上比較方便。

      削除
  2. 感謝你的回覆,我會試試看的 =D 。

    返信削除