openCVのプロセシングに関して

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
グローバル関数

openCVのプロセシングに関して

#1

投稿記事 by グローバル関数 » 11年前

下記の顔認識のソースコードを、改造して、なにか面白い動作や振る舞いやゲームをするプログラムを作ろうと考えてるのですが、カメラに映る現実世界以外の図形やオブジェクトの挿入の仕方が分からず困っている状況です。たとえば、私は、カメラ映像にボールの形をした円を出そうとして、ellipse関数をvoid drawの中に入れたんですが、何も出てこないので、困り果てました。どなたか、どうすればカメラ映像に2次元の図形が映るようになり、さらにそれに対して手動や顔が反応してくれるようになるのかを詳しく教えていただけますか?(文字数制限があるため、完全なコードは貼れてないです・・・)

code
import hypermedia.video.*;
import java.awt.Rectangle;
OpenCV opencv;
int contrast_value = 0;
int brightness_value = 0;
void setup() {
size( 320, 240 );
opencv = new OpenCV( this );
opencv.capture( width, height ); // open video stream
opencv.cascade( OpenCV.CASCADE_FRONTALFACE_ALT ); // load detection description, here-> front face detection : "haarcascade_frontalface_alt.xml"
// print usage
println( "Drag mouse on X-axis inside this sketch window to change contrast" );
println( "Drag mouse on Y-axis inside this sketch window to change brightness" );
}
public void stop() {
opencv.stop();
super.stop();
}
void draw() {
// grab a new frame
// and convert to gopencv.read();
opencv.convert( GRAY );
opencv.contrast( contrast_value );
opencv.brightness( brightness_value );
// proceed detection
Rectangle[] faces = opencv.detect( 1.2, 2, OpenCV.HAAR_DO_CANNY_PRUNING, 40, 40 );

// display the image
image( opencv.image(), 0, 0 );

// draw face area(s)
noFill();
stroke(255,0,0);
for( int i=0; i<faces.length; i++ ) {
rect( faces.x, faces.y, faces.width, faces.height );
}
}

/**
* Changes contrast/brigthness values
*/code
void mouseDragged() {
contrast_value = (int) map( mouseX, 0, width, -128, 128 );
brightness_value = (int) map( mouseY, 0, width, -128, 128 );
}

“C言語何でも質問掲示板” へ戻る