lesniak43 / ProjektProgramistyczny2015

0 stars 0 forks source link

AAM/POSIT face detector by Damian Leśniak, 6th Jun 2015

GENERAL INFORMATION:

This software was strongly inspired by: "Mastering OpenCV with Practical Computer Vision Projects", Chapter 7 https://github.com/MasteringOpenCV/code/tree/master/Chapter7_HeadPoseEstimation by Daniel Lélis Baggio

Author of the original AAM method: Tim Cootes (Professor of Computer Vision)

Creator ot the 3D face model used in this software: Pedro A. D. Martins (PhD) http://aifi.isr.uc.pt/Downloads/OpenGL/glAnthropometric3DModel.cpp

Comprehensive description of the AAM algorithm: P. Martins, "Active Appearance Models for Facial Expression Recognition and Monocular Head Pose Estimation"

HOW TO INSTALL:

cd path_to_project_directory cmake . make

BINARIES:

get_data: use the mouse to drag points across the face snapshot 'c' - start/pause webcam 's' - save changes (warning! all unsaved changes are lost if you unpause the webcam or use keys '>', '<') 'i' / 'u' - rotate shape (warning! this action, if performed repeatedly, results in distiortions of points' coordinates) 'j' / 'k' / 'l' / 'h' - move shape '>' / '<' - go to next/previous shapshot '+' - make a copy of current snapshot and append it to the list of images 'e' - equalize the snapshot (not recommended) 'z' - show/hide edges 'x' - show/hide vertices

train: creates AAM and stores it in the data directory

test_model: you may check out the parameters learned by AAM and see if POSIT is working correctly

final: sit back and enjoy AAM/POSIT struggling to recognize you

HOW TO CREATE A WORKING AAM/POSIT:

Option 1:

Option 2:

Option 3 (advanced, not tested, might require additional changes in the source code):

TUNABLE PARAMETERS: