网站大量收购独家精品文档,联系QQ:2885784924

一、Adbbost算法基本思想和算法流程.doc

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

一、Adbbost算法基本思想和算法流程 Adaboost人脸检测是一种基于积分图、级联检测器和Adaboost算法的方法。Adaboost的基本思想是利用大量的分类能力一般的弱分类器通过一定方法叠加起来,构成一个分类能力很强的强分类器。理论证明,只要每个弱分类的分类能力比随机猜测好,当弱分类器的个数趋于无穷时,强分类器的错误率将趋于0.在人脸检测中,从人脸样本中抽取大量的一维简单特征,这些简单特征都有一定的人脸和非人脸区分性,最终系统将数千个一维弱分类器组合成一个级联的分类器对人脸进行检测。算法描述如下: 给定一系列训练样本Yi(0i=n),其中Yi=0表示负样本(非人脸),Yi=1表示正样本(人脸);n为总的训练样本数量。 初始化权重w1,i=D(i),对于非人脸样本,D(i)=1/2m;对于人脸样本,D(i)=1/2l,其中,m为非人脸样本数量,l为人脸样本数量; 对于t=1,2,…,T; 归一化权重:qt,i 对每个特征f训练一个弱分类器h(x,f,p,q),则第j个特征的简单分类器为 h 分类器由阈值θj和一个偏置pj决定,偏置 计算对应所有特征的弱分类器的加权(qt)错误率? ? 选取最佳的弱分类器hi(x)(即拥有最小错误率?t ? 按这个最佳弱分类器调整权重:wt+1,i=wt,iβt 最后的强分类器为 C 其中,at 二、Adboost算法中弱分类器的构成(即Harr-like特征) 目前常采用的是由Papageorgious等提出的Harry-Like特征来描述人脸,如下图所示: 上图中,A和B为2-矩形特征、C为3-矩形特征、D为4-矩形特征对于图中的A,B,和D这类特征,sum白表示白色区域像素和,sum黑表示黑色区域像素玫,特征数值计算公式为: V=sum白-sum黑 而对于C来说,计算公式如下: V=sum白-2*sum黑 之所以将黑色区域乘以2,是为了使两种矩形区域中像素数目一致。 Harr-Like特征之所以可以用来表示人脸,可以用下图来说明: 由于人脸肤色的原因,眼睛与其周围,鼻子与其周围,嘴巴与其周围,肤色是不同的,故我们可以改变以上Harr-Like特征模板在图像中的位置,以及矩形框的大小,形成不同的Harr-Like特征,并在成千上万个样本中,寻找一个合适的阈值,最大限度的区分人脸和非人脸,这样就得到了一个最佳弱分类器,将这些最佳弱分类器组合在一起,就是我们最终的强分类器; 三、弱分类器的确定: 对于一个特征模板,当确定了其在图像中的位置和大小后,也就确定一个特征。确定一个特征后,对所有样本计算对应该特征的特征值,然后在这些特征值中选择一个合适的阈值,得到该特征对应的弱分类器: h 然后按照前面Adboost算法的原理,选择错误率最小的,得到最佳弱分类器。 对于阈值的选取,最简单,也就是最笨的方法,是循环遍历,将所有的特征值分别做为阈值,选择分类错误率最低的那个特征值做为该特征最终的阈值。 四、积分图 由于训练样本通常有近万个,并且矩形特征的数量非常庞大,以20*20的图像为例,采用4个Harr-Like特征模板就有超过10万个矩形特征,如果每次计算特征值都要统计矩形内所有像素之和,将会大大影响训练和检测的速度,积分图像的出现,则很好的解决了这个问题。 在积分图中,像素点(x,y)处的值是原图像中点(x,y)左边和上边所有像素的和,即: ii 按照该定义,假设下图为某图像的积分图像示意图: 则积分图像在位置1的值是A区域内所有像素的和,积分图像2的值是A+B区域内所有像素的和。积分图像在位置3的值是A+C区域内所有像素的和。积分图像4的值是A+B+C+D区域内所有像素的和。 假设D区域是我们要求的矩形框的像素和,则其值为积分图像中位置1+4-2-3的值。 五、级联分类器 一般强分类器需要几百个弱分类器组成,才具有比较高的准确率,即对于每一个20*20的图像,需要计算几百个弱分类器的特征值,才能判断其是否为人脸,而对一幅待检测图像,需要扫描的20*20的子窗口数目无疑是巨大的,而这些子窗口中占绝大多数的往往是非人脸,这样,就会有很多的计算浪费在了这些非人脸的背景上,大大降低了检测速度,因此有人提出了级联分类器: 如上图所示,级联分类器由多层分类器构成,其中每一层都是一个由Adaboost算法训练得到的强分类器。通过调节阈值,使得每一层分类器可以让几乎所有的人脸窗口通过,而排除掉很大部分非人脸窗口。前面几级分类器只需要少量特征就能排除大部分非人脸窗口,越靠后面的几级分类器采用的特征越多,需要排除那些近似人脸的窗口。但由于前面几级分类器已经排除了大量的窗口,因此经过后面几级分类器的窗口数目很少,需要的计算时间也比较少,这样检测速度明显增加。 实际训练时,可以降低每一层的标准,使得

文档评论(0)

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

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

1亿VIP精品文档

相关文档