MATLAB: Face recognition using IP, computer vision toolbox, NN toolbox and statistics toolbox

#face recognitionComputer Vision ToolboxDeep Learning Toolboximage processingImage Processing ToolboxStatistics and Machine Learning Toolbox

Hi, I wanted to know how i can make use of IP, computer vision, NN and statistics toolboxes to develop a face recognition system. Can anyone help me with this. I came across few methods for face recognition, but since i've the above mentioned toolboxes, i want to know how to use all of them for my project.

Best Answer

Hi,
I had implemented face recognition using MATLAB by following the paper http://www4.comp.polyu.edu.hk/~cslzhang/paper/conf/iccv11/CRC_RLS_final.pdf
The ridge() function in Statistics Toolbox can be used for the L2-regularized regression mentioned in the paper. http://www.mathworks.com/help/stats/ridge.html
The other steps in that paper are straightforward matrix manipulations.
For detecting faces , I used the face detector of the Computer Vision System Toolbox. http://www.mathworks.com/help/vision/ref/vision.cascadeobjectdetector-class.html
Representing a face can be done in several ways.
The paper linked above simply vectorized the 2D array of grayvalues. This would not be robust in case of lesser number of samples per person, different posed faces etc.
One alternative is to detect facial landmarks (using the Viola-Jones Cascade Object Detector in the Computer Vision toolbox as before, but instead of faces using the provided models for – nose, lips, eyes) and extract SURF or HOG features ( extractFeatures ) at those locations. A concatenated vector of the features extracted at the landmarks can be used to represent the face.
Recognition can be done using regularized regression as in the paper. Or you can train an SVM (Stats toolbox) to recognize each person in your face database – the pictures of that person as positive samples, all other pictures as negative samples. Create an SVM for each person in the database and use that to recognize/classify a new face (one-versus-rest SVM).