首页 理论教育 人脸识别理论详解

人脸识别理论详解

时间:2023-06-30 理论教育 版权反馈
【摘要】:图9-8二叉决策树9.2.2.2人脸识别人脸识别是基于人的脸部特征,对输入的人脸图像进行识别的一种生物识别技术。本书使用百度人脸识别算法。百度AI开放平台的人脸识别精度可达99.77%。特征脸法被认为是第一种有效的人脸识别算法,在之后出现的人脸识别算法中都有涉及。

人脸识别理论详解

9.2.2.1 人脸检测

人脸检测的方法主要分为两种。一种是基于规则的,主要利用人类已有的常识将五官的不同对应关系进行分类,并通过这些分类来检测人脸。另一种是基于数据的,将某种事物(包括人脸)的照片作为一个像素矩阵来分析,通过大量的数据统计可以得到这种事物对应的基础模型,根据与这个模型的相似程度来检测是否为这个事物。

基于这两种方法,发展了许多种算法。随着各种方法的提出和应用,算法也得到了优化,产生了将知识模型和统计模型相结合的算法,目前应较为广泛的人脸检测算法是Ada-Boost算法。本书的设计方案主要利用了基于OpenCV视觉库的人脸检测算法。

1)OpenCV视觉库

OpenCV视觉库是一个开源的视觉库,可以运行在多种不同的系统上,主要使用C语言编写,提供了Python、MATLAB等语言的接口,通过这些接口可以直接调用函数进行图像处理。本书主要使用OpenCV视觉库训练好的Haar级联分类器进行人脸检测。

2)Haar级联分类器

Haar级联分类器主要使用Haar特征做检测,Haar特征(也称Haar-Like特征)主要分为4种边缘特征、8种线性特征、两种中心围绕特征,如图9-7所示。

图9-7 Haar-Like特征(www.xing528.com)

3)AdaBoost算法

AdaBoost算法的主要功能是将弱学习算法强化为强学习算法,通过调整单个样本的权重可以产生不同的训练集,用这些训练集训练同一个弱分类器,然后把这些分类器联合起来,成为一个强分类器。如果每个弱分类器的分类效果比随机分类的效果更好,那么当其数量非常大时,强分类器基本不会产生错误。图9-8为二叉决策树,展示了分类器进行人脸判断的过程。

图9-8 二叉决策树

9.2.2.2 人脸识别

人脸识别是基于人的脸部特征,对输入的人脸图像进行识别的一种生物识别技术。随着计算机及各学科领域技术的发展,诞生了各种各样的人脸识别算法,目前较为主流的算法有特征脸法、Fisher Face(渔夫脸法)、EGM(弹性图匹配)、基于几何特征的方法、基于神经网络的方法等。本书使用百度人脸识别算法。

本书的人脸识别通过百度提供的软件开发工具包(Software Development Kit,SDK)完成基本功能。百度人脸识别算法的主要核心是特征脸法,主要方法是将图片和人脸库的人脸特征值作比较,如果这两个值接近一定阈值即识别成功,阈值可以由用户通过参数设定。百度AI开放平台的人脸识别精度可达99.77%。

特征脸法的主要方式是将图片从像素空间转换到另一个空间,消除相关性带来的影响,通过对训练集进行训练可以得到对应的特征向量,任意一张人脸图像都可以被认为是“标准脸”的组合。特征脸法被认为是第一种有效的人脸识别算法,在之后出现的人脸识别算法中都有涉及。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈