人脸识别系统

人脸识别系统,大致可以分成五个部分:人脸检测,质量度量,特征点定位和人脸对齐,人脸特征抽取,相似度度量。

获取到数据后,理所当然需要进行人脸的检测,人脸检测的方法很多,也很容易在网络上找到资源。具体的有:使用Opencv检测人脸,使用dlib库检测人脸,和使用深度学习模型进行检测。其中深度学习方法最好,使用框架faster-rcnn最流行。

得到人脸区域数据,还不能直接进行特征提取,一般有一个度量的过程。如果是基于视频,那么如果质量不行,可以放弃这一帧的数据,达到人脸选帧的目的。在项目中,我经常先使用清晰度度量方法,然后再姿势评估。清晰度度量判断人脸的清晰度,基于视频的系统主要是判定运动模糊。而人脸姿势估计,目前最好的方法是基于深度学习的方法。

特征点定位:定位人脸特征点,使用ASM和dlib库均能有不错效果,也可以使用深度学习的方法。得到特征点后,需要计算出 两眼中心点的位置,由这个位置对人脸区域进行水平旋转和归一化到一定像素距离。这样来保障人脸大小方向一致。注意需要选出比较好质量的人脸,否则可能会受影响。

人脸特征抽取:目前最流行使用 resnet 框架做人脸特征抽取

相似度度量:多种度量方法,经典的有 最近邻,COS度量,马氏距离等等

posted @ 2018-07-11 17:38  格物的菜鸟  阅读(792)  评论(0编辑  收藏  举报