2016-10-08 5 views
0

私はスケッチに取り組んでいます。スケッチは顔を検出し、それぞれの顔に自分のイメージを与える必要があります。検出された顔を互いに独立して扱う方法は? OpenCV/Processing

コンピュータの動作:コンピュータが新しい顔を検出するたびに、「顔0」になり「画像0」が割り当てられます。その結果、他のすべての顔の番号が変わり、新しい画像も割り当てられます。

私が望むもの:新しい顔が検出されると、顔はそれを変更することなく、自分のイメージを取得する必要があります。

私は言語の壁にもかかわらず、あなたが私を理解してくれることを願っています。あなたがこのコードで私を助けてくれるなら、それは素晴らしいことでしょう。あなたはより多くの顔検出よりも顔認識のような音を後にしている何


import gab.opencv.*; 
import processing.video.*; 
import java.awt.*; 


int num = 10; 
PImage[] myImageArray = new PImage[num]; 
Capture video; 
OpenCV opencv; 


void setup() { 

for (int i=0; i<myImageArray.length; i++){    
    myImageArray[i] = loadImage(str(i) + ".png"); 
} 

    size(800, 600); 
    video = new Capture(this, 800/2, 600/2); 
    opencv = new OpenCV(this, 800/2, 600/2); 
    opencv.loadCascade(OpenCV.CASCADE_FRONTALFACE); 

    video.start(); 
} 


void draw() { 
    scale(2); 
    opencv.loadImage(video); 

    image(video, 0, 0); 

    Rectangle[] faces = opencv.detect(); 
    println(faces.length);      
faces = opencv.detect(); 


    for (int i = 0; i < faces.length; i++) { 
    println(faces[i].x + "," + faces[i].y); 
    image(myImageArray[i], faces[i].x-70, faces[i].y-60, 
        faces[i].width+80, faces[i].height+80); 
    } 
} 


void captureEvent(Capture c) { 
    c.read(); 
    } 

答えて

0

顔認識のためにEigen Faces/Fisher Faces/Local Binary Patterns(LBP)などの顔認識アルゴリズムを調べる必要があります。

幸いにもあなたがチェックアウトすることができ、いくつかの処理特定のリソースがあります。

関連する問題