微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 传感器 > 分享人脸识别的十个概念,告诉你为什么是他、是他、就是他

分享人脸识别的十个概念,告诉你为什么是他、是他、就是他

时间:05-24 来源:极客头条 点击:

优图实验室研究人脸技术多年,不仅在技术方面有很好的积累,而且在公司内外的业务中有众多应用。笔者作为优图实验室人脸研究组的一员,在与产品、商务、工程开发同事交流过程中发现:不管是"从图中找到人脸的位置",或是"识别出这个人脸对应的身份",亦或是其他,大家都会把这些不同的人脸技术统称为"人脸识别技术"。

因此,笔者整理了一些常见人脸技术的基本概念,主要用于帮助非基础研究同事对人脸相关技术有一个更深入的了解,方便后续的交流与合作。

人脸技术基本概念介绍
1. 人脸检测

"人脸检测(Face Detection)"是检测出图像中人脸所在位置的一项技术。

人脸检测算法的输入是一张图片,输出是人脸框坐标序列(0个人脸框或1个人脸框或多个人脸框)。一般情况下,输出的人脸坐标框为一个正朝上的正方形,但也有一些人脸检测技术输出的是正朝上的矩形,或者是带旋转方向的矩形。

常见的人脸检测算法基本是一个"扫描"加"判别"的过程,即算法在图像范围内扫描,再逐个判定候选区域是否是人脸的过程。因此人脸检测算法的计算速度会跟图像尺寸、图像内容相关。开发过程中,我们可以通过设置"输入图像尺寸"、或"最小脸尺寸限制"、或"人脸数量上限"的方式来加速算法。


图1、人脸检测结果举例(绿色框为人脸检测结果)

2. 人脸配准
"人脸配准(Face Alignment)"是定位出人脸上五官关键点坐标的一项技术。

人脸配准算法的输入是"一张人脸图片"加"人脸坐标框",输出五官关键点的坐标序列。五官关键点的数量是预先设定好的一个固定数值,可以根据不同的语义来定义(常见的有5点、68点、90点等等)。

当前效果的较好的一些人脸配准技术,基本通过深度学习框架实现,这些方法都是基于人脸检测的坐标框,按某种事先设定规则将人脸区域扣取出来,缩放的固定尺寸,然后进行关键点位置的计算。因此,若不计入图像缩放过程的耗时,人脸配准算法是可以计算量固定的过程。另外,相对于人脸检测,或者是后面将提到的人脸提特征过程,人脸配准算法的计算耗时都要少很多。


图2、人脸配准结果举例(右图中的绿色点位人脸配准结果)

3. 人脸属性识别
"人脸属性识别(Face Attribute)"是识别出人脸的性别、年龄、姿态、表情等属性值的一项技术。

一般的人脸属性识别算法的输入是"一张人脸图"和"人脸五官关键点坐标",输出是人脸相应的属性值。人脸属性识别算法一般会根据人脸五官关键点坐标将人脸对齐(旋转、缩放、扣取等操作后,将人脸调整到预定的大小和形态),然后进行属性分析。

常规的人脸属性识别算法识别每一个人脸属性时都是一个独立的过程,即人脸属性识别只是对一类算法的统称,性别识别、年龄估计、姿态估计、表情识别都是相互独立的算法。但最新的一些基于深度学习的人脸属性识别也具有一个算法同时输入性别、年龄、姿态等属性值的能力。


图3、人脸属性识别过程(最右侧文字为属性识别结果)

4. 人脸提特征
"人脸提特征(Face Feature Extraction)"是将一张人脸图像转化为一串固定长度的数值的过程。这个数值串被称为"人脸特征(Face Feature)",具有表征这个人脸特点的能力。

人脸提特征过程的输入也是 "一张人脸图"和"人脸五官关键点坐标",输出是人脸相应的一个数值串(特征)。人脸提特征算法都会根据人脸五官关键点坐标将人脸对齐预定模式,然后计算特征。

近几年来,深度学习方法基本统治了人脸提特征算法,这些算法都是固定时长的算法。早前的人脸提特征模型都较大,速度慢,仅使用于后台服务。但最新的一些研究,可以在基本保证算法效果的前提下,将模型大小和运算速度优化到移动端可用的状态。


图4、人脸提特征过程(最右侧数值串为"人脸特征")

5. 人脸比对(人脸验证、人脸识别、人脸检索、人脸聚类)
"人脸比对(Face Compare)"是衡量两个人脸之间相似度的算法

人脸比对算法的输入是两个人脸特征(注:人脸特征由前面的人脸提特征算法获得),输出是两个特征之间的相似度。人脸验证、人脸识别、人脸检索都是在人脸比对的基础上加一些策略来实现。相对人脸提特征过程,单次的人脸比对耗时极短,几乎可以忽略。

基于人脸比对可衍生出人脸验证(Face Verification)、人脸识别(Face Recognition)、人脸检索(Face Retrieval)、人脸聚类(Face Cluster)等算法。


图5、人脸对比过程(右侧的相似度为人脸比对输出的结果)

6. 人脸验证
"人脸验证(Face Verification)"是判定两个人脸图是否为同一人的算法。

它的输入是两个人脸特征,通过人脸比对获得两个人脸特征的相似度,通过与预设的阈值比较来验证这两个人脸特征是否属于同一人(即相似度大于阈值,为同一人;小于阈值为不同)。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top