OpenCV2.3のインストール for Windows
OpenCV2.3がリリースされました。
このバージョンはOpenNIをサポートしており、Kinectを簡単に扱えるようにもなったそうです。
残念ながらKinectの環境を持っていないので、3Dセンサーを試すことはできないのですが、
それ以外にもいくつか新しい機能が含まれているそうで。
私としては、Androidへの対応が大幅に改良されたということから、ぜひ試してみたい!ということで、
まずは、Windows機にインストールしてみました。
(Android対応はまた今度に。。。)
・OpenCV2.3のダウンロードここから、「OpenCV-2.3.0-win-src.zip」をダウンロードし、落としたファイルを適当なディレクトリに解凍します。今回は「C:OpenCV2.3」に解凍しました。
・CMakeのインストール(まだ行っていない場合)
ソースファイルからビルドする場合は、CMakeが必要になりますので、最新版をインストールしておきましょう。
・Makeしたライブラリが出力されるディレクトリの作成
今回は、「C:OpenCV2.3build」にしました。
・CMakeのGUIで「Configure」を押下
・コンパイルオプションを確認して、「Generate」を押下
これで、VisualStudio2010用のソリューションファイルが出力されます。
・コンパイル
出力されたソリューションファイル(.sln)をダブルクリックしてソリューションを開き、ソリューション全体をビルドします。DebugとRelease両方のバージョンのコンパイルをしたほうが良いと思います。「バッチビルド」を使うと、両方いっぺんにコンパイルできて、便利かも。
・ここで、opencv_ffmpeg230d.dllとopencv_ffmpeg230d.libが存在しなくて、makeでエラー(file INSTALL cannot find “C:xxxxx/opencv_ffmpeg230d.dll.”)が出るので、「C:OpenCV2.3build」
の「cmake_install.cmake」の中の、上記の部分を検索して、コメントアウトすること。
・NSISがインストールされていないと、エラー(Cannot find NSIS compiler makensis)になるので、http://nsis.sourceforge.netからNSISをインストールすること。
・PATHの設定
コンパイルが正常に終了したら、DLLをPATHに含めて(C:OpenCV2.3buildbinReleaseとC:OpenCV2.3buildbinDebug)、exeが実行できるようにする。
・新規にサンプルプロジェクトを作成してみる。
・includeファイルの指定
プロジェクトのプロパティから、「構成プロパティ」の「VC++ ディレクトリ」のインクルードパスに「C:OpenCV2.3buildinstallinclude」を指定する。
(DebugとRelease両方に設定すること)
・リンクの設定
リンカーの「追加のライブラリディレクトリ」パスに、「C:OpenCV2.3buildlibDebug」「C:OpenCV2.3buildlibRelease」を入れる。
これでプロジェクトを実行できるようになったはず。ちなみに、共通雛形を以下に。
#include "stdafx.h" #include #include #include #include #include #include #include #include #ifdef _DEBUG #pragma comment(lib, "opencv_core230d.lib") #pragma comment(lib, "opencv_legacy230d.lib") #pragma comment(lib, "opencv_highgui230d.lib") #pragma comment(lib, "opencv_imgproc230d.lib") #pragma comment(lib, "opencv_contrib230d.lib") #pragma comment(lib, "opencv_calib3d230d.lib") #else #pragma comment(lib, "opencv_core230.lib") #pragma comment(lib, "opencv_legacy230.lib") #pragma comment(lib, "opencv_highgui230.lib") #pragma comment(lib, "opencv_imgproc230.lib") #pragma comment(lib, "opencv_contrib230.lib") #pragma comment(lib, "opencv_calib3d230.lib") #endif
コラム
OpenCVの勉強に購入した本です。どちらも良著だと思います。これから学ばれる人は是非参考にしてください!
OpenCV プログラミングブック 第2版 OpenCV 1.1対応
「OpenCV プログラミングブック」は2版あるので気を付けてください。こちらが新しい方です。この本は実例が豊富ですので、OpenCVについて理解がしやすいです。一通り例題をこなすと、OpenCVについての知識が深まります。
詳解 OpenCV ―コンピュータビジョンライブラリを使った画像処理・認識
分厚いですが、オライリー本の例にもれず、良著だと思います。上の本でOpenCVの面白さを知った人には、手放せない本になるはずです。