ProcessingでOpenCVを使えるようにする方法(MacOS10.8上で)


まずはOpenCVライブラリをダウンロード

まずはOPENCV Processing and Java Libraryからopencv-framework-1.1.dmgをダウンロードしてインストールします。

そのあと同ページにあるOpenCV Processing LibraryをダウンロードしてZipの内容をProcessingのライブラリに入れます。

Processingのライブラリ追加方法

Processingのアイコンを右クリックしてメニューを表示させパッケージの内容を表示を選択します。

すると通常のフォルダのようにアプリケーションの中身が見られるようになります。

/Applications/Processing.app/Contents/Resources/Java/modes/java/librariesに先ほどダウンロードして解凍したZipファイルの中身OpenCVフォルダをコピーします。(ちなみにこの方法はProcessing1.5.1の場合です。別のバージョンでは異なる可能性があります。)

動作チェック

一応、Macを再起動してProcessingを立ち上げ、メニューのSketch → Import Library…の中にOpenCVが追加されていればOKです。

ライブラリの配布元のテストコードをコピペして動作すればOKです。ちなみに以下のコードはWebカメラがないと動きません。

import hypermedia.video.*;
OpenCV opencv;
void setup() {
size( 640, 480 );
// open video stream
 opencv = new OpenCV( this );
 opencv.capture( 640, 480 );
}
void draw() {
background(192);
opencv.read(); // grab frame from camera
 opencv.threshold(80); // set black & white threshold
// find blobs
 Blob[] blobs = opencv.blobs( 10, width*height/2, 100, true, OpenCV.MAX_VERTICES*4 );
// draw blob results
 for( int i=0; i<blobs.length; i++ ) {
 beginShape();
 for( int j=0; j<blobs[i].points.length; j++ ) {
 vertex( blobs[i].points[j].x, blobs[i].points[j].y );
 }
 endShape(CLOSE);
 }
}

実行するとこんな感じです。エラーなく動作すれば完了です。

atnr.net の RSS登録はこちらから