Top > ComputerGraphics > OpenCV > SettingOpenCVSharp_1
Last-modified: Sat, 09 Mar 2013 00:44:18 JST
Counter:18450 Today:2 Yesterday:6 Online:12
このエントリーをはてなブックマークに追加

OpenCVSharpを導入する-1 "環境構築"

About

 OpenCVをC#から使う方法はいくつかあって、恐らくラッパーライブラリ「OpenCVSharp」を利用することが最もメジャーな方法です。開発者の方に感謝しつつOpenCVSharpを導入してみます。そんなに細々書いていませんが、導入して利用しよう、という人には扱える程度の内容のハズです。

Download & Install

 OpenCVSharp導入に関しては、実際の所は開発者Schima氏のブログに殆ど掲載されています。まずはここを参照するのが良いでしょう。

Visual C++ 再頒布可能パッケージ のインストール

 OpenCVの動作にはVC++のRedistributablePackageが必要です。利用するプラットフォームや依存機能によってインストールするべきパッケージが変わりますが、ひとまずは全部インストールするのが無難だと思います。(配布などする場合はユーザに全てインストールすることを求められませんから、きっちり調べる必要ありますけど)

OpenCVSharp

 OpenCVSharpをダウンロードします。上の方のタブに「Downloads」の項目があります。2012年09月現在で最新のバージョンは2.4でした。OpenCVSharpのバージョンに合わせてOpenCV(のバージョンを選んで)をダウンロードするので注意してください。

 ここではとりあえずデスクトップに展開してしまいました。

OpenCV

 OpenCVは公式からダウンロードするのが確実だと思います。BSDライセンスなので余所で配布されている可能性もありますし、他のアプリケーションに含まれる場合もあるでしょうけども。

 公式の「Downloads」から「release version (x.x)」のリンクをたどります。2012年09月現在ではOpenCVSharpの対応バージョンが2.4だったので、OpenCVのバージョンは2.4をダウンロードしました。対応するプラットフォームとバージョンを選択してダウンロードするようにして下さい。

 ここではとりあえずデスクトップに展開してしまいました。

TBB

 OpenCVの最新のバージョン(2012年9月現在)では、Intel社のTBB(Threading Building Blocks for Open Source)が利用されています。TBBは端的に言うと並列処理を行うためのライブラリなようです。詳しくは別所で調査されたい。OpenCVに実装される関数/機能のいくつかで、内部的にTBBが利用されているようです。

OpenCVSharpを利用する場合、TBBが使われないOpenCVの関数/機能のみを利用する場合にも、TBBが必要になります。導入されていない場合「BadImageException」や「Invoke」といったエラーを引き起こす可能性があります。※その場合は"「oepncvCore_xx.dll」が読み込めません"となるハズです。

 メニューの「Downloads」から「Stable Release」へ移動し、適切なバージョンをダウンロードします。その適切なバージョンですが、どれか分かりません。OpenCV公式でアナウンスされていると思います(が誰か調べてください)。2012年09月現在では最新のバージョンをダウンロードして動作を確認しています。もしTBBが原因で動作していないと思われる不具合が出た場合は、過去のバージョンをダウンロードしてみるのが良いかもしれません。リリースされた日付から凡そ察しはつきますし。

 ここではとりあえずデスクトップに展開してしまいました。

Reference