Come un generale, Support Vector Machine (SVM) viene utilizzato per il riconoscimento espressione facciale come la rabbia, il sorriso, sorpresa, ecc dove ancora attivo lo sviluppo avviene. Googling ti dà molti articoli su questo argomento, (anche uno dei miei compagni di classe ha fatto questo come suo progetto per l'ultimo anno). Per questo, in un primo momento è necessario addestrare l'SVM e per fare ciò, è necessario disporre di immagini di esempio di sbadigli e volti normali.
Sbadigliare è quasi simile alla sorpresa, in cui la bocca aperta su entrambi i casi. Vi consiglio di controllare il pagina 3 di sotto della carta: Real Time Facial Expression Recognition in Video using Support Vector Machines (Se non è possibile vedere il link, Google in base al nome della carta)
Il documento (anche il mio compagno di classe) utilizzato vettore spostamento delle caratteristiche facciali. Per questo, trovi alcuni punti caratteristica sul viso. Ad esempio, nella carta, hanno usato la pupilla dell'occhio , i punti estremi dei coperchi, la punta del naso, i punti estremi della bocca (labbra) ecc. Quindi tracciano continuamente la posizione delle caratteristiche e trovano la distanza euclidea tra di loro. Sono utilizzati per addestrare l'SVM.
Partenza seguito due documenti: immagine Osservi
Feature Points Extraction from Faces
Fully Automatic Facial Feature Point Detection Using Gabor Feature Based Boosted Classifiers
sotto di quello che voglio dire con punti caratteristici sul viso:
Nel tuo caso , penso che tu sia impl caricarlo in iPhone in tempo reale. Quindi potrebbe essere possibile evitare punti caratteristici agli occhi (anche se non è una buona idea, dal momento che quando sbadigli, gli occhi diventano di piccole dimensioni). Ma rispetto ad esso, i punti caratteristica delle labbra mostrano più variazioni e predominanti. Quindi, implementare solo il labbro può far risparmiare tempo. (Beh, tutto dipende da te).
Lip Segmentazione: E 'già discusso in SOF e check out questa domanda: OpenCV Lip Segmentation
E, infine, io sono sicuro che si può trovare un sacco di dettagli sul googling, perché si tratta di un'area di sviluppo attivo, e molti documenti sono là fuori.
Un'altra opzione:
Un'altra opzione in questa regione, che ho sentito più volte, è Active Appearance Model
. Ma non ne so nulla. Google tu stesso.
Si può notare come un esempio di riconoscimento di espressioni facciali, che sono per lo più eseguite utilizzando SVM. Quindi, googling su questa strada può darti dei buoni risultati. –
Cosa succede se l'utente copre la bocca mentre sbadiglia? – Hassan
@Hassan invia loro un elettroshock anche per questo! :) – kenny