ProcessingでコンピュータビジョンライブラリBoofCVを使う
BoofCVというJava用のコンピュータビジョンライブラリがあります。これを使うと基本的な画像処理に加え、オブジェクトトラッキングや特徴量抽出、ステレオ画像計測、領域セグメンテーション、モザイキングなどができます。機能豊富なOpenCVと比べると見劣りしますが性能はなかなか。Androidでも利用できるようです。
ありがたいことにProcessing版もあるのですが、ライブラリを自分でビルドしないといけないようです。
Tutorial Processing - BoofCV
というわけで、トライしてみたので導入方法をメモしておきます。
要点
以下、実際にやった作業手順を記しておきます。環境はこんな感じ。自分の環境にあわせて読み替えてください。
JDKのインストール
Gradleのインストール
- Gradleのダウンロードページに行き、gradle-2.0-bin.zip (binaries only)をダウンロード。
- gradle-2.0-bin.zipを解凍後、できたフォルダ gradle-2.0 をCドライブの直下に移動。
- 環境変数の設定で C:\gradle-2.0\bin にパスを通す。
- コマンドプロンプトを起動し、以下のようにタイプしてバージョン確認。この時点でエラーが出なければOK。
gradle --version
BoofCVのビルド
- BoofCVのページの Source Code と書かれたリンクからソースコードをダウンロード。
- ダウンロードした boofcv-v0.17-src.zip を解凍。
- Processingのインストールフォルダ内の \core\library に入っている core.jar をコピーし、解凍してできたフォルダ内の \integration\processing の中におく。
- コマンドプロンプトを起動し、 \integration\processing ディレクトリにcdコマンドで移動。
cd \boofcv-v0.17-src\integration\processing
5. 以下のようにタイプするとビルドが始まる。
gradle processingZip
6. しばし待つと、boofcv_processing.zipというファイルが生成される。
Processingで使う
- boofcv_processing.zipを解凍するとboofcv_processingというフォルダができるので、これをProcessingのスケッチフォルダのlibrariesフォルダの中に入れる。
- Processingを起動し、File -> Examples... を選択。
- Contributed Libraries -> BoofCV for Processing の中にサンプルがいろいろ入ってるので遊ぶ。
- おわり!
これはTrackingObjectというサンプル。マウスで範囲選択するとその対象をトラッキングします。