OpenCV 2.0 インストール メモ

太田研究室 | 電気電子システム学科 | 岡山理科大学

はじめに

! OpenCV 2.1 が公開されています。このページの内容は古い情報になります。(2010.04.12 追記)
! OpenCV 2.2 が公開されています。このページの内容は古い情報になります。(2010.12.05 追記)

画像処理ライブラリ「OpenCV 2.0」を「Microsoft Visual C++ 2008 Express Edition」で使用するためのインストール手順について解説します。

OpenCV の昔のバージョンではインストールプログラムを実行するだけでよかったのですが、 バージョン 2.0 からはプログラム開発環境に合うように自分でライブラリをコンパイルするしくみに変わり、インストール手順が複雑になりました。

「Microsoft Visual C++ 2008 Express Edition」のインストール方法については、 こちらをご覧ください

! このページで解説しているインストール手順は著者の個人的趣味が含まれており、かならずしも推奨する手順ではありません。

もくじ

OpenCV 2.0 のインストール

1 ホームページを開く
OpenCV ライブラリのダウンロードページを開きます。 「Download Now !」のボタンをクリックします。

2 セットアッププログラムのダウンロード
セットアッププログラム(OpenCV-2.0.0a-win32.exe)のダウンロードウィンドウが表示されますので「保存」をクリックします。
「名前を付けて保存」ウィンドウが表示されましたら「保存」をクリックします。

3 セットアッププログラムの実行
ダウンロードが完了したら「実行」をクリックしてセットアップを開始します。

4 セットアップの開始
OpenCV 2.0.0 セットアップウィザードが起動しますので「次へ」をクリックします。

5 ライセンス契約書の同意
ライセンス契約書が表示されますので「同意する」をクリックします。

6 環境変数の設定
環境変数PATHの設定を選択します。 ここでは、すべてのユーザーが OpenCV のプログラムを実行できるようにするために、「Add OpenCV to the system PATH for all users」を選択します。
「次へ」をクリックします。

7 インストール先の指定
インストールするフォルダを指定します。 変更する必要はありませんので、そのままで「次へ」をクリックします。

8 スタートメニューへの追加
スタートメニューへ追加するときのフォルダを指定します。 変更する必要はありませんので、そのままで「次へ」をクリックします。

9 コンポーネントの選択
インストールするコンポーネントを選択します。 変更する必要はありませんので、そのままで「次へ」をクリックします。

10 インストール
インストールが始まります。すぐに終わります。

11 インストールの完了
インストールが終わりましたら「完了」をクリックして、セットアップを終了します。

ここまでで、ライブラリの元になるソースプログラムのインストールが完了しました。 つづいて、ライブラリをコンパイルするのに必要な「CMake」をインストールします。

CMake のインストール

OpenCV のライブラリをコンパイルするには Visual C++ 2008 のソリューションファイルが必要です。インストールした OpenCV のファイルの中にはソリューションファイルがありませんので、「CMake」を使ってソリューションファイルを作成します。

! ここの説明は、2009年11月時点で公開されているバージョン 2.8.0 におけるものです。

1 ホームページを開く
CMake のダウンロードページを開きます。 「Binary distributions:」の中にある「Windows (Win32 Installer)」の右側の「cmake-2.8.0-win32-x86.exe」をクリックします。

2 セットアッププログラムのダウンロード
セットアッププログラム(cmake-2.8.0-win32-x86.exe)のダウンロードウィンドウが表示されますので「保存」をクリックします。
「名前を付けて保存」ウィンドウが表示されましたら「保存」をクリックします。

3 セットアッププログラムの実行
ダウンロードが完了したら「実行」をクリックしてセットアップを開始します。

4 セットアップの開始
CMake 2.8 セットアップウィザードが起動しますので「次へ」をクリックします。

5 ライセンス契約書の同意
ライセンス契約書が表示されますので「同意する」をクリックします。

6 環境変数の設定
環境変数PATHの設定を選択します。 ここでは「Do not add CMake to the system PATH」を選択して、環境変数の変更をしないようにします。
「次へ」をクリックします。

7 インストール先の指定
インストールするフォルダを指定します。 変更する必要はありませんので、そのままで「次へ」をクリックします。

8 スタートメニューへの追加
スタートメニューへ追加するときのフォルダを指定します。 変更する必要はありませんので、そのままで「インストール」をクリックします。

インストールが開始します。

9 インストールの完了
インストールが終わりましたら「完了」をクリックしてセットアップを終了します。

つづいて、「CMake」を使ってソリューションファイルを作ります。

ソリューションファイルの作成

1 CMake の起動
Windows のスタートメニューから、「CMake (cmake-gui)」を起動します。

2 フォルダの指定
ソースコードがあるフォルダなどを指定します。
「Where is the source code:」と「Where to build the binaries:」の両方に 「C:/OpenCV2.0」を入力します。
「Configure」をクリックします。

! 「Where to build the binaries:」に「C:/OpenCV2.0」を設定すると「フォルダの中がきたなくなる」と思われる方がいるかもしれませんが、ライブラリをビルドした後の手間を簡単にするために、このように設定しています。

3 コンパイラの指定
コンパイラを指定します。 プルダウンメニューの中から「Visual Studio 9 2008」を選択します。
「Finish」をクリックします。

4 インストールオプションの変更
インストールオプションを変更します。 「ENABLE_OPENMP」のチェックを外します。
「Configure」をクリックします。

! 「OpenMP」は並列プログラミングのためのライブラリです。もし、「OpenMP」がインストールされている場合は、ここのチェックを外す必要はありません。

5 ソリューションファイルの作成
「Generate」をクリックします。
ソリューションファイルの作成が開始します。

6 CMake の終了
正常に終了すれば、下のメッセージ欄に「Generating done」と表示されます。
「File」メニューから「Exit」を選択して、CMake を終了します。

つづいて、ソリューションファイルを使って OpenCV ライブラリをコンパイルします。

OpenCV ライブラリのコンパイル

1 Visual C++ 2008 Express Edtion の起動
エクスプローラで「ローカルディスク C:」→「OpenCV2.0」フォルダを表示して、 その中のソリューションファイル「OpenCV.sln」をダブルクリックします。

2 ビルド(Debug)の開始
Visual C++ 2008 Express Edtion が起動したら、「ビルド」メニューから「ソリューションのビルド」を選択します。
ビルドが完了するまでしばらく待ちます。

3 ビルド(Debug)の完了
ビルドが正常に終了すれば、出力パネルに「0 失敗」と表示されます。

4 ソリューション構成の変更
ソリューション構成を「Debug」から「Release」に変更します。

5 ビルド(Release)の開始
再度、「ビルド」メニューから「ソリューションのビルド」を選択して、ビルドを実行します。

6 ビルド(Release)の完了
ビルドが正常に終了すれば、出力パネルに「0 失敗」と表示されます。

これで、ライブラリの作成が完了しました。

VC++ディレクトリの設定

Visual C++ 2008 Express Edition で OpenCV のプログラミングができるように、ここでオプションの設定をしておきます。

7 オプションの設定
「ツール」メニューから「オプション」を選択します。

8 VC++ディレクトリの変更
「オプション」ウィンドウで「プロジェクトおよびソリューション」をクリックして中の項目を表示させ、「VC++ディレクトリ」を選択します。
「ディレクトリを表示するプロジェクト」のプルダウンメニューから「インクルード ファイル」を選択します。

9 インクルードディレクトリの追加
ディレクトリリストの一番下に「C:\OpenCV2.0\include\opencv」を入力します。

10 VC++ディレクトリの変更
「ディレクトリを表示するプロジェクト」を「ライブラリ ファイル」に変更します。
ディレクトリリストの一番下に「C:\OpenCV2.0\lib\Debug」を入力します。

11 VC++ディレクトリの変更
さらにその下に「C:\OpenCV2.0\lib\Release」を入力します。

12 オプションの変更の終了
「OK」をクリックします。

以上で Visual C++ 2008 Express Edition での作業は終了です。
Visual C++ 2008 Express Edition を終了してください。

ファイルのコピー

作成されたライブラリのファイルを環境変数PATHに設定されたフォルダへコピーします。

1 Debug用ライブラリのコピー
エクスプローラで、「ローカルディスク C:」→「OpenCV2.0」→「bin」→「Debug」ファルダを開きます。
その中にある すべての DLLファイル(cv200d.dll、cvaux200d.dll、cxcore200d.dll、cxts200d.dll、highgui200d.dll、ml200d.dll、opencv_ffmpeg200d.dll)を選択して、 一つ上の階層の「bin」フォルダの中へコピーします。

! フォルダオプションでファイル拡張子を表示するように設定して、さらにファイルの種類で並べ変えれば、ファイルを選択しやすいです。

2 Release用ライブラリのコピー
同じように、「ローカルディスク C:」→「OpenCV2.0」→「bin」→「Release」ファルダを開いて、 その中にあるすべての DLLファイル(cv200.dll、cvaux200.dll、cxcore200.dll、cxts200.dll、highgui200.dll、ml200.dll、opencv_ffmpeg200.dll)を選択して、 一つ上の階層の「bin」フォルダの中へコピーします。

3 binフォルダの内容
ファイルをコピーした結果、「ローカルディスク C:」→「OpenCV2.0」→「bin」フォルダの中は右の図のようになります。

以上ですべての設定が完了しました。

サンプルプログラム

OpenCV 2.0 のプログラム例を紹介します。
Visual C++ 2008 Express Edtion でのプロジェクトとソースファイルの作り方は、こちらをご覧ください
プログラミングの詳細については、OpenCV 2.0 付属のドキュメントや、各種書籍、ホームページなどを参照ください。

画像ファイルの読み込みと表示

1 プログラム
右のプログラムは、OpenCV 付属の画像ファイル「lena.jpg」を読み込んで画面に表示します。
高画質版

OpenCV のライブラリファイルは、プログラム中で「#pragma comment」を使って指定します。
ソリューション構成を「Release」にしてビルドするときは、Release用のライブラリファイル(cv200.lib、cxcore200.lib、highgui200.lib)に書き換えてください。

2 実行結果
プログラムを実行すると右の図のように表示されます。
画像の上でキーボードのキーを何か押すと終了します。

動画ファイルの読み込みと表示

1 プログラム
右のプログラムは、OpenCV 付属の動画ファイル「tree.avi」から画像を1フレームずつ読み込み、画面に表示します。
67ミリ秒ごとに画像表示が切り替わります。
高画質版

2 実行結果
プログラムを実行すると右の図のように表示されます。
最後のフレームを表示し終わると、プログラムが自動的に終了します。

USBカメラからの画像の取り込みと表示

1 プログラム
右のプログラムは、パソコンに接続したUSBカメラから画像を取り込み、画面表示します。
画像は33ミリ秒ごとに取り込まれます。
高画質版

2 実行結果
プログラムを実行すると右の図のように表示されます。
画像の上でキーボードのキーを何か押すと終了します。

画像の変換

1 プログラム
右のプログラムは、画像ファイル「lena.jpg」をモノクロ画像に変換した後、エッジ抽出(Cannyオペレータ)を行い、画面に表示します。
高画質版

2 実行結果
プログラムを実行すると右の図のように表示されます。
画像の上でキーボードのキーを何か押すと終了します。

©2009-2010 OHTA Hiroshi@Okayama University of Science