人脸识别总体介绍

四个概念

1. 人脸检测(detection

在opencv中早就有直接能拿来用的haar分类器,基于Viola-Jones算法,现在看Haar + Adaboost肯定是老掉牙的技术,准确率是个渣。MSRA(微软亚洲研究院)在14年的最新技术——Joint Cascade Face Detection and Alignment(ECCV14),这篇文章直接在30ms的时间里把detection和alignment都给做了,PR曲线彪到很高,时效性高,内存占用却非常低,在一些库上虐了Face++和Google Picasa。

2. 人脸校准(alignment

就是找特征点,如下图:

人脸识别总体介绍_第1张图片

图中红色框框就是在做detection,白色点点就是在做alignment。知道了特征点的位置后,做一下位置驱动的变形,脸就成正的了。

3. 人脸确认(verification

基于pair matching的方式,回答“是”或者“不是”的问题。给定一张测试图片,然后挨个进行pair matching,matching上了则说明测试图像与该张图像为同一个人的人脸。

一般在小型办公室人脸刷脸打卡系统中采用的(应该)是这种方法,具体操作方法大致是这样一个流程:

离线逐个录入员工的人脸照片(一个员工录入的人脸一般不止一张),员工在刷脸打卡的时候相机捕获到图像后,通过前面所讲的先进行人脸检测,然后进行人脸校正,再进行人脸校验,一旦matching结果为“是”,说明该名刷脸的人员是属于本办公室的,人脸校验到这一步就完成了。在离线录入员工人脸的时候,我们可以将人脸与人名对应,这样一旦在人脸校验成功后,就可以知道这个人是谁了。

这种系统优点是开发费用低廉,适合小型办公场所,缺点是在捕获时不能有遮挡,而且还要求人脸姿态比较正。

人脸识别总体介绍_第2张图片

4. 人脸识别(identifycation / recognition

人脸识别正如下图所示的,它要回答的是“我是谁?”,相比于人脸校验采用的pair matching,它在识别阶段更多的是采用分类的手段。它实际上是对进行了前面两步即人脸检测、人脸校正后做的图像(人脸)分类。

人脸识别总体介绍_第3张图片


流程

根据上面四个概念的介绍,我们可以了解到人脸识别主要包括三个大的、独立性强的模块:


细分的话,如下图:

人脸识别总体介绍_第4张图片

人脸识别分类

现在随着人脸识别技术的发展,人脸识别技术主要分为了三类:

  1. 基于图像的识别方法
  2. 基于视频的识别方法
  3. 三维人脸识别方法

基于图像的识别方法:
这个过程是一个静态的图像识别过程,主要利用图像处理。主要的算法有PCA、EP、kernel method、 Bayesian Framwork、SVM 、HMM、Adaboot等等算法。但在2014年,人脸识别利用Deep learning 技术取得了重大突破,为代表的有deepface的97.25%、face++的97.27%,但是deep face的训练集是400w集的,而同时香港中文大学汤晓鸥的Gussian face的训练集为2w。

基于视频的实时识别方法:
这个过程可以看出人脸识别的追踪过程,不仅仅要求在视频中找到人脸的位置和大小,还需要确定帧间不同人脸的对应关系。


你可能感兴趣的:(人脸)