基于AdaBoost算法的人脸检测——赵楠 北京大学 下载本文

内容发布更新时间 : 2024/4/28 1:52:55星期一 下面是文章的全部内容请认真阅读。

北京大学本科生毕业论文 一个理想化完美的人脸检测算法,应该有 100%的人脸检测率和 0 错误检测数。现阶段也许只有人的大脑有这个能力。

虽然现在有很多检测算法,但是它们中的大部分还没有经过大量的图像数据集测试。而且,这些方法的实验结果大都是用不同的测试集得出的。

即使采用了相同的训练集和测试集,由于研究者对“ 检测成功” 的看法不尽相同,使得检测率的标准不唯一,也会导致对不同检测算法评测的困难。如图 4,假设右图中的所有子图像都被检测器认为是人脸,那么一个宽泛的标准会认为检测到的这所有的人脸都是成功的,但是一个严格标准可能认为这些检测到的人脸有很多是错误的。

为了公平地比较和评价这些方法,也有必要像 FERET 一样定义一套标准的测试数据集和测试方法。

基于 AdaBoost 算法的人脸检测 赵楠 9

北京大学本科生毕业论文

2 检测方法分类

可以将人脸检测的方法分为四类[1]: 1. 基于知识的方法(Knowledge-based) 2. 特征不变量方法(Feature invariant) 3. 模板匹配的方法(Template matching) 4. 基于表象的方法(Appearance-based)

当然,有许多人脸检测的方法并不能简单地归于上述中的某一类,而是几类 的组合。也可以将人脸检测的方法简单地分为两类[2]:基于特征的和基于图像的。基于特征的方法指以某种特征为最小处理单元的方法;基于图像的方法指以图像中的像素为处理单元的方法。

2.1 基于知识的方法

这个方法将人类有关典型的脸的知识编码成一些规则。通常这些规则包括了脸部特征之间关系的知识。这个方法主要用于人脸的定位。

一些关于人脸的知识,可以归纳成下面几个简单的规则[3]:一、轮廓规则: 人脸的轮廓可近似地被看成一个椭圆,则人脸检测可以通过检测椭圆来完成。对任意一幅图像,首先进行边缘检测,并对细化后的边缘提取曲线特征,然后计算各曲线组合成人脸的评估函数来检测人脸。

基于 AdaBoost 算法的人脸检测 赵楠

10

北京大学本科生毕业论文

二、器官分布规则:

虽然人脸因人而异,但都遵循一些普遍适用的规则,即五官分布的几何规则。检测图像中是否有人脸,即是否存在满足这些规则的图像块。这种方法一般是先对人脸的器官或器官的组合建立模板,然后检测图像中几个器官可能分布的位置,对这些位置点分别组合,用器官分布的知识规则进行筛选,从而找到可能存在的人脸。

三、对称性规则:

人脸具有一定的轴对称性,各器官也具有一定的对称性。

四、运动规则:

若输入图像为动态图像序列,则可以利用与人脸或人脸的器官相对于背景的运动来检测人脸,比如利用眨眼或说话等动作的探测来实现人脸与背景的分离。

基于知识的方法是一种自上而下的方式。它其中一个困难是如何将人类知识转化成为有效的规则:如果规则制定得太细,那么可能有许多人脸无法通过规则的验证;如果规则制定得太宽泛,那么可能许多非人脸会被误判为人脸。

基于 AdaBoost 算法的人脸检测 赵楠 11

北京大学本科生毕业论文

图 5 基于知识的人脸检测方法抽象出人脸的基本特征规则

2.2 特征不变量方法

这个方法的目标是寻找那些即使当姿势、视角和光线条件变化时仍然存在的结构特征,并利用这些特征来定位人脸。由于人类能够毫不费劲地“ 看到” 在不同光线和姿态下的人脸和物体,因此研究人员认为有一个潜在的假设:存在一些关于人脸的不依赖于外在条件的属性或者特征。有许多方法就是按照这个潜在假设,首先去寻找这种脸部特征(通过大量样本学习的方法),然后用寻找到的特征去检测人脸。对比基于知识的自上而下的方法,这种基于特征的方法是自下而上的。

人的肤色被证明是人脸检测的一个有效特征。人脸肤色聚集在颜色空间中一个较小的区域,因此可利用肤色特征能够有效地检测出图像中的人脸。利用肤色特征检测出的人脸区域可能不够准确,但如果在整个系统实现中作为人脸检测的

基于 AdaBoost 算法的人脸检测 赵楠 12

北京大学本科生毕业论文 粗定位环节,它具有直观、实现简单、快速等特点,可以为后面进一步进行精确定位创造良好的条件,以达到最优的系统性能。

本论文的 AdaBoost 方法就是基于人脸特征的方法。在后面的章节里面,可以通过 AdaBoost 来看到基于特征方法的主要处理过程。

2.3 模板匹配的方法

模板匹配法是一种经典的模式识别方法。其处理过程如下:

1. 进行预处理手动地预定义或者参数化一个标准人脸图案。预处理要做尺度归一化和灰度归一化的工作。最简单的模板将人脸看成椭圆,更复杂的人脸模板参见图 6;

2. 计算输入图像与标准人脸图案的相关值,这个相关值大都是独立计算脸部轮廓、眼镜、鼻子和嘴各自的匹配程度后得出的综合描述。对于图 6 的模板,则是按照划分的 16 个区域和这些区域间的 23 种关系来计算这个相关值;

3. 根据相关值和预先设定的阈值来确定图像中是否有人脸。

13

基于 AdaBoost 算法的人脸检测 赵楠