使用adaboost级联分类方法检测人脸的原理..doc

使用adaboost级联分类方法检测人脸的原理..doc

  1. 1、本文档共8页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
使用adaboost级联分类方法检测人脸的原理.

使用adaboost级联分类方法检测人脸的原理 陈悦 200920112641 摘 要: 本文详细的介绍了adaboost算法应用在学习人脸检测分类器的过程以及人脸识别的主要应用,第1节讲述使用adaboost算法检测人脸的一些准备知识,包括haar特征、积分图像等;第2节讲述adaboost算法训练人脸检测分类器的流程;第3节讲述如何通过级联的分类器加快分类检测速度;第4节讲述人脸检测的过程;第5节介绍人脸检测的应用. 关键词: adaboost算法;人脸检测;haar特征; Adaboost算法和人脸haar特征 Adaboost算法 Adaboost算法是Freund和Schapire在1995年提出的,2001年Paul Viola和Michael J. Jones使用基于人脸haar特征的Adaboost算法加上积分图像和级联技术创造了一种快速人脸检测方法[1],其速度之快准确率之高是之前的人脸检测方法所不能比拟的。Adaboost是一种迭代算法,其核心思想是针对同一个训练集训练不同的分类器(弱分类器),然后把这些弱分类器集合起来,构成一个更强的最终分类器(强分类器)。其算法本身是通过改变数据分布来实现的,它根据每次训练集之中每个样本的分类是否正确,以及上次的总体分类的准确率,来确定每个样本的权值。将修改过权值的新数据集送给下层分类器进行训练,最后将每次训练得到的分类器最后融合起来,作为最后的决策分类器。使用adaboost分类器可以排除一些不必要的训练数据特征,并将关键放在关键的训练数据上面。该算法其实是一个简单的弱分类算法提升过程,这个过程通过不断的训练,可以提高对数据的分类能力。 人脸haar特征 Haar特征就是图像的一些矩形模板内像素和的差,简单可以说成是矩形特征,如图1,把图中的模板可以以任何的尺寸套在图像的任何位置,然后此模板的haar特征值就定义为灰色区域内的像素总和减去白色区域的像素总和,为什么要这样定义呢,难道人脸图像就由这么简单的特征构成? 图1 haar特征模板 的确,其实不仅是人脸,其他许多物体图像也可以同样使用这些特征,或者我们再增加一些模板特征,这些特征和物体的关系正如砖瓦和楼房,回想一下微积分中求定积分的过程不也是把复杂的曲线用一个个简单的矩形去填充的吗?图2展示了人脸的haar特征, 图2 人脸haar特征 可以看到人脸的灰度图像确实具有这样的结构特征,眼睛区域比上下区域要深色,然后左眼鼻梁右眼也构成一组矩形特征,那么自然会有这样的疑问,对于不同的人脸图像,同一位置的矩形模板内的像素灰度和的差值即haar特征几乎都是不同的,这样的特征有什么意义?确实不可能完全相同,但只要是人脸中特定位置的haar特征值就基本上会维持在某个范围内,后面我们会看到,正是利用这样的特性通过adaboost算法训练出一个合适的阈值来保证几乎所有人脸的这个区域的haar特征都会落在阈值内,反过来说一幅图像某个区域内的haar特征落在一个阈值内,就是这副图像中可能存在人脸,当然不会是必然存在,还要通过更多不同位置的haar特征去印证是否真的存在人脸。 一幅图像中的haar特征究竟有多少,就拿24×24大小的图像来说,对于每一种模板的haar特征用组合公式可以推导出平均大概有3万多个,5种模板就有16万个,当然这些只是穷举得到的结果,我们并不关心所有位置的haar特征,后面会看到使用adaboost算法去自动筛选出合适的人脸特征。 积分图像 坐标A( x, y) 的积分图定义为其左上角矩形所有像素之和,用公式表示为: 图3 点A(x,y)处的积分图像 当我们把一幅图像的所有坐标点的积分图像都求出并保存起来,通过它来求haar特征的速度非常快,因为其复杂度与尺寸大小无关,可以看到图4,如果要求第1种模板类型的haar特征,见图1,即C+D-(A+B),C+D用点4减去点2的积分图像得到,A+B就是点2的积分图像,于是C+D-(A+B)就是点4减去两倍的点2的积分图像,由于各点处的积分图像事先已经求出,所以只需要执行简单的加减操作,同时也看到计算复杂度确实与区域的大小无关。 图4 Adaboost算法训练人脸检测分类器 算法描述 下提到的人脸训练图像都是指经过裁切的仅保留人脸的图像。首先给出一堆训练用的图像,分别有m张人脸图像和l张非人脸图像,一开始分别赋予它们1/2m和1/2l的权重,接下来要从所有的矩形特征中选出最符合条件的T个特征,算法描述如下图7: 图7 adaboost算法训练人脸分类器步骤 算法分析 整个算法的思想是,首选假定图像中某个一位置的haar特征是一个突出的人脸特征,然后分别在所有人脸和非人脸训练图像的这个位置

文档评论(0)

tiangou + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档