VisualStudio2012 Professional に最新版OpenCV2.4.6.0を構築

 

はじめに

visualstudio2012 professionalに今日時点での最新版のOpenCV2.4.6.0を構築してみます。

 

openCV2.4.6.0のダウンロード

2013/7/3にopenCV2.4.6公開されました。

http://sourceforge.net/projects/opencvlibrary/

ファイル名はopenCV-2.4.6.0.exe

 

インストール

ダウンロードしたopenCV-2.4.6.0を実行

インストールデレクトリはc:\とします。

 

環境変数の設定

システム環境変数のpathに追加します。

C:\opencv\build\x86\vc11\bin

 

visualstudio2012の設定

1.visualstudio2012を起動します。

 

2.プロジェクトの作成

ファイル->新しいプロジェクト->VisualC++->win32コンソールアプリケーション

プロジェクト名は自由ですがConsoleApplication1としておきます。

ここで空のプロジェクトにチェックを入れる。

 

3.プロパティシートの設定

openCVのインクルードファイルとライブラリファイルのディレクトリを設定します。

表示->その他のウィンドウ->プロパティマネージャ->Microsoft.Cpp.Win32.userを右クリック->プロパティ

共通プロパティ->C/C++->全般->追加のインクルードディレクトリに下記を追加

C:\opencv\build\include

共通プロパティ->リンカー->全般->追加のライブラリディレクトリに下記を追加

C:\opencv\build\x86\vc11\lib

 

サンプルソース

クックブックを参考。http://opencv.jp/cookbook/

640*480のダイアログボックスを表示して塗りつぶす。

main.cppを下記に示す。

 

#include<opencv2\opencv.hpp>
 #ifdef _DEBUG
 //Debugモードの場合
#pragma comment(lib,"C:/opencv/build/x86/vc11/lib/opencv_core246d.lib")
 #pragma comment(lib,"C:/opencv/build/x86/vc11/lib/opencv_imgproc246d.lib")
 #pragma comment(lib,"C:/opencv/build/x86/vc11/lib/opencv_highgui246d.lib")
 #pragma comment(lib,"C:/opencv/build/x86/vc11/lib/opencv_objdetect246d.lib")
 #pragma comment(lib,"C:/opencv/build/x86/vc11/lib/opencv_contrib246d.lib")
 #pragma comment(lib,"C:/opencv/build/x86/vc11/lib/opencv_features2d246d.lib")
 #pragma comment(lib,"C:/opencv/build/x86/vc11/lib/opencv_flann246d.lib")
 #pragma comment(lib,"C:/opencv/build/x86/vc11/lib/opencv_gpu246d.lib")
 #pragma comment(lib,"C:/opencv/build/x86/vc11/lib/opencv_legacy246d.lib")
 #pragma comment(lib,"C:/opencv/build/x86/vc11/lib/opencv_ts246d.lib")
 #pragma comment(lib,"C:/opencv/build/x86/vc11/lib/opencv_video246d.lib")
 #else
 //Releaseモードの場合
#pragma comment(lib,"C:/opencv/build/x86/vc11/lib/opencv_core246.lib")
 #pragma comment(lib,"C:/opencv/build/x86/vc11/lib/opencv_imgproc246.lib")
 #pragma comment(lib,"C:/opencv/build/x86/vc11/lib/opencv_highgui246.lib")
 #pragma comment(lib,"C:/opencv/build/x86/vc11/lib/opencv_objdetect246.lib")
 #pragma comment(lib,"C:/opencv/build/x86/vc11/lib/opencv_contrib246.lib")
 #pragma comment(lib,"C:/opencv/build/x86/vc11/lib/opencv_features2d246.lib")
 #pragma comment(lib,"C:/opencv/build/x86/vc11/lib/opencv_flann246.lib")
 #pragma comment(lib,"C:/opencv/build/x86/vc11/lib/opencv_gpu246.lib")
 #pragma comment(lib,"C:/opencv/build/x86/vc11/lib/opencv_legacy246.lib")
 #pragma comment(lib,"C:/opencv/build/x86/vc11/lib/opencv_ts246.lib")
 #pragma comment(lib,"C:/opencv/build/x86/vc11/lib/ opencv_video246.lib")
 #endif

int main(){
 // 初期化時に塗りつぶす
cv::Mat red_img(cv::Size(640, 480), CV_8UC3, cv::Scalar(0,0,255));
 cv::Mat white_img(cv::Size(640, 480), CV_8UC3, cv::Scalar::all(255));
 cv::Mat black_img = cv::Mat::zeros(cv::Size(640, 480), CV_8UC3);

// 初期化後に塗りつぶす
cv::Mat green_img = red_img.clone();
 green_img = cv::Scalar(0,255,0);

cv::namedWindow("red image", CV_WINDOW_AUTOSIZE|CV_WINDOW_FREERATIO);
 cv::namedWindow("white image", CV_WINDOW_AUTOSIZE|CV_WINDOW_FREERATIO);
 cv::namedWindow("black image", CV_WINDOW_AUTOSIZE|CV_WINDOW_FREERATIO);
 cv::namedWindow("green image", CV_WINDOW_AUTOSIZE|CV_WINDOW_FREERATIO);
 cv::imshow("red image", red_img);
 cv::imshow("white image", white_img);
 cv::imshow("black image", black_img);
 cv::imshow("green image", green_img);
 cv::waitKey(0);
 }

 

 

結果

ConsoleApplication1

 

 

 

 

カテゴリー: C++ パーマリンク

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>