Facial Feature Points Detection using OpenCV

2vision2 picture 2vision2 · Mar 13, 2013 · Viewed 15.9k times · Source

I want to detect the points on a face as shown in the picture

enter image description here

I am using OpenCV CascadeClassifier::detectMultiScale.
I am using the haarcascade_frontalface_alt, haarcascade_eye, haarcascade_mcs_mouth xml files.

I am satisfied with the face detection but not with the facial feature points detection.

I want the feature points detection to work for the images upto a distance of 8 feet.

I am looking for more accuracy and robustness wrt pose(15 degrees) and opening of mouth, without compromising speed.
I am looking for speed of 25fps on an i5 processor.

Can anyone suggest/refer me any libraries/open source codes for my problem.

C++ platform.

Answer

Ganesh Iyer picture Ganesh Iyer · Mar 19, 2013

Try Flandmarks http://cmp.felk.cvut.cz/~uricamic/flandmark/ It extracts 7 feature points but you will not be able to get the feature points for upperlip and the lower lip.

You can try using an ASM mesh to fit the face. There are several implementations that use ASM/AAM. https://code.google.com/p/asmlib-opencv/ is an open source library which has built in dataset for face images. Do look into it.

Cheers