Feature Extraction & Selection from a standard Face Image.
9 views (last 30 days)
Show older comments
I need to extract and select features from a face image. I have extracted the basic Texture , Color and Shape features using the inbuilt matlab functions. My question is twofold.
Firstly, what are the other ways to extract features from an image.
Secondly, I have about 10 features, how do i select the best ones? I tried sequentialfs but the function 'fun' is giving some errors. Please help me out with the code!
0 Comments
Answers (4)
Anand
on 16 Sep 2013
If you have the Computer Vision System Toolbox, you can use any of the following built-in feature extraction methods:
detectSURFFeatures
detectMSERFeatures
detectFASTFeatures
detectMinEigenFeatures
detectHarrisFeatures
Not all of these are necessarily suited to face identification though. One thing you could do is use the vision.CascadeObjectDetector to not only detect faces, but detect the eyes, nose and mouth. You can use the different classification models provided to accomplish this. Once you've identified different parts of the face, you could detect and extract features for each of these face parts using any of the previously mentioned methods (detectSURFFeatures etc).
Feature selection is a different beast. Why do you need to do feature selection? A combination of these features with a good machine learning algorithm should work fine atleast for starting applications. Try an SVM, for instance and see if that works. You can usually throw a bunch of features at an SVM if you have enough training data and hope for a good result.
2 Comments
Anand
on 19 Sep 2013
I don't know about the Ward's algorithm, so I can't help you there.
MATLAB to the rescue for PCA. Just use the princomp function:
If you want to implement PCA yourself, here's a set of slides from a course I once took that I find helpful in trying to understand how to implement PCA.
UJJWAL
on 4 Sep 2013
Your question is not very clear. What do you want to do with the face images? Is it a detection problem or recognition problem. How general is the setting (like are occlusions and viewpoint changes are allowed ? )
A feature you extract out of an image is something that characterizes the image. Depending on the exact version of the problem you are trying to solve, this would change.
There are Haar features, HoG features, LBP features, GMP features, SIFT Features etc etc which you can extract. What you should extract depends on the version of the problem. This is still an open issue as to what is a good feature and how to select one. So I would choose to stay silent at that point. I would suggest you to go through some important papers which talk about these issues.
Following are some references you should look at :
a) Viola Jones Face detector paper (IJCV 2004)
b) Viola Jones Face detector (in built in OpenCV. Not sure about MATALAB).
c) HoG feature descriptor.
4 Comments
jenny jenny
on 7 Jul 2017
Good morning @sidra I have the same problem in my thesis the first step is features extraction when I try to know the existing methods I don't know what is the best and should I use the existing methods in the toolbox or should I implemented them I don't konw what should I do I'm working in gestures recognition :(
SATISH KUMAR
on 27 Mar 2018
Sir, is extracting features by using Matlab inbuilt functions are considered as a correct features for any face image or document image.
Srinidhi Krishna
on 4 Feb 2019
i want the matlab code for facial alignment using 51 red points and 3 blue points and facial landmark detection.Please help me.
0 Comments
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!