Blink detection with ASM co-ordinates [closed]

2019-09-13 04:54发布

问题:

I have used STASM and found the 76 facial co-ordinates like eyes, nose mouth etc., My intention is to find the blink detection.

Can some one provide me ideas on how to proceed with these co-ordinates in hand?

And also can I use this to check whether the person is live or not? Is there any other way to find whether the person standing before camera is a photo or live human?

回答1:

Take the region around the eye and count the number of white/"skin color" pixels. Apply a threshold on that number.



回答2:

Here is screenshot, as referred to in prior answer comments:

One solution I just though of is to consider the eye points as one point on the left, one point on the right, three on top and three on bottom. We could scan the pixels in the rectangle for which each edge's midpoint is: (1) left point; (2) right point; (3) middle top point; and (4) middle bottom point. During this scan, we run cvPointPolygonTest on each pixel to determine whether it's in the region. If so, we score its color to determine the extent to which eye is open.

UPDATED:

Here is my winner for eye blink detection: http://link.springer.com/article/10.1007/s10209-011-0256-6/fulltext.html

Works pretty well and easy to implement.



回答3:

Correlation coefficients as per that paper is very inaccurate. This will cause issues when you rotate and translate your correlated eye image sets [i.e. affine transforms] . Picking the correct feature vectors and using some non-linear classifier (such as a sigmoid based SVM) will give you decent results.