JournalofHenanUniversity(NaturalScience)
Vol.40 No.1Jan.2010
基于改进的AdaBoost算法的人脸检测
吕慧娟,武澎
(河南大学计算中心,河南开封475001)
摘 要:为了进一步减小系统误差,更加有效防止目标类权值分布扭曲现象的发生,针对传统AdaBoost人脸检测算法存在的不足,对算法的权值更新规则和权值归一化规则进行了综合改进,实验结果证明了改进算法的有效性.关键词:AdaBoost算法;人脸检测;权值更新;权值归一化中图分类号:TP391 文献标志码:A
文章编号:1003-4978(2010)01-0081-04
FaceDetectionBasedonImprovedAdaBoostAlgorithmLVHui2juan,WUPeng(ComputingCenter,HenanUniversity,HenanKaifeng475001,China)
Abstract:Inordertopreventtheoccurrenceofthephenomenonofthedistortionofthetargetvaluedistributionmoreeffectively,thispaperattemptstoimprovetheweightupdatingandtheweightnormalizationoftheAdaBoostalgorithm.Theexperimentalresultsshowtheeffectivenessoftheimprovedalgorithm.Keywords:FaceDetection;AdaBoostAlgorithm;WeightUpdating;WeightNormalization
0 引言
作为人脸信息处理过程中的一个关键技术,人脸检测已经发展成为一个相对独立的研究方向,研究方法
和研究手段也在逐步成熟.2001年PaulViola和MichaelJones率先将AdaBoost算法引入人脸检测问题[1],他们文章的发表是人脸检测研究的一个里程碑[2-3].AdaBoost算法有着众多优点,但也存在不足和改进之处.在前人研究工作的基础上,针对AdaBoost算法存在的不足,本文提出了一个改进的AdaBoost算法,对AdaBoost算法的权值更新规则和权值归一化规则进行了综合改进,以减小系统误差,有效防止了目标类权值分布扭曲现象的发生.
1 AdaBoost算法的改进
传统AdaBoost是一种自适应性Boosting算法[4],它通过动态调节各个样本的权值来对基本算法的训练错误率自动适应,当样本被正确分类时,样本权值减小;当样本被错误分类时,样本权值不变.在权值归一化以后,错误分类的样本权值增大,正确分类的样本权值减小.在下一轮的迭代中,算法将给予上轮迭代中错误分类的样本更多重视.
AdaBoost算法的核心思想是当分类器对某些样本正确分类时,则减少这些样本的权值;当分类器对某
些样本错误分类时,则增加这些样本的权值,让算法在后续的学习中集中对比较困难的样本进行学习.这一权重更新规则可以保证算法专注于处理较困难的样本,但这同时也是一个缺点,当训练样本集包含噪声样本和一些罕见的困难样本时,算法的重心将转移到难分类的样本上.如果困难样本具有较高的权重,算法每一次循环都对其进行重视,以试图正确分类,将会给这些样本分配过大的权值,最终可能导致权重分布严重扭曲的现象[5].随着迭代次数的增加,曾经生成过的较准确的分类规则将会逐渐被破坏或丢失,终而降低了算法性能.如何降低分类器对困难样本的过度重视,是解决问题的关键.
传统AdaBoost算法的权值更新规则仅仅依据某个样本是否被错误分类来对其更新权值,无法避免这
收稿日期:2009210201
基金项目:河南省基础与前沿技术研究计划项目(08210221000)
作者简介:吕慧娟(1973-),女,河南商丘人,讲师,研究方向为图像处理、教育技术.
82河南大学学报(自然科学版),2010年,第40卷第1期
种情况.本文对AdaBoost算法的权值更新规则加以改进,在每轮训练中,定义一个阈值TVt,结合样本是否被错误分类以及当前权值是否大于TVt来对样本进行三种不同方式的权值更新.
εtDt(i)×1-εt
dt+1=
12
,若ht(xi)=yi;
Dt(i),若ht(xi)≠yi,且Dt(i)≥TVt;
εtDt(i)×1-εt
1-2
,若ht(xi)≠yi,且Dt(i) ε其中,Dt(i)为样本当前权值,即更新前的权值;εt为在权值Dt下的分类错误率,t=∑Dt(i)|ht(xi)-yi|; i=1 dt+1(i)为未进行归一化的更新后的权值,即dt+1(i)进行归一化后便是Dt+1(i);TVt是第t轮训练中的权值 更新阈值,取该轮训练中所有样本权值的均值作为TVt,即TVt= i=1∑Dt(i) N (N为所有样本总数,N=m+n). N 因为弱分类器的分类错误率要好于随机猜测,即εt<0.5,所以εt=ht(xi)时,当前权值Dt(i)×1-εt 12 εt<1.于是,当样本被正确分类,即yi 1-εt 1>Dt(i),即样本权值增大了.这 样,在权值归一化以后,只有当某个样本被错误分类,且其当前权值Dt小于该轮阈值TVt时,这个样本的权值才会被增加.这样,即使困难样本在每轮都被错误分类,它们的权值也不会被过分增大,从而在一定程度上避免了分类器发生目标类权值分布扭曲的现象. 另外,一般在AdaBoost训练中,给出的正例样本数应当大于等于负例样本数,以保证让正例样本权值总和在所有样本权值总和中始终占有较大的比例,给予正例样本更多的重视.传统算法中,样本权值更新后的归一化系数是所有样本当前的权值总和.如果参与训练的正负例样本数目相当或悬殊不大,那么在多次迭代后就可能出现负例样本的权值总和大于正例样本的权值总和,即目标类权值分布扭曲,此时算法由原来的更重视正例样本转为更重视负例样本,这与我们的训练目标不符. 针对这一点,本文提出了在每次迭代权值更新以后的权值归一化中,将正负例样本分开进行权值归一化,使正例样本的权值总和在所有样本权值总和中所占的比例始终维持初始的比例,以保证算法能始终给予正例样本更多的重视.权值归一化公式为: dt+1(i)m ×Dt+1(i)= i=1 ∑d n t+1 (i) m,yi=+1; m+n n,yi=0. m+n dt+1(i)i=1 ×∑d t+1 (i) 其中,dt+1(i)为未进行归一化的更新后的权值,Dt+1(i)为更新后且归一化后的权值,m为人脸样本个数,n为非人脸样本个数. 在上述算法改进的基础上,给定样本集合L={(x1,y1),(x2,y2)…(xN,yN)},yi∈{+1,0},+1为正例(人脸)样本,0为负例(非人脸)样本,人脸样本个数m,非人脸样本个数n,样本总数N=m+n.初始化样本权值分布:D1= 1N ,开始T次循环(训练有T个弱分类器的强分类器): (1)在样本集合和分布Dt下挑选分类错误率最小的一个弱分类器ht,弱分类器的输出+1判为人脸,0 判为非人脸. (2)计算该弱分类器在权值Dt下的分类错误率εDt(i)|ht(xi)-yi|.t=∑ i=1N 吕慧娟,等:基于改进的AdaBoost算法的人脸检测 83 (3)计算αt= t11-εln. ε2t (4)样本权值更新, εtDt(i)×1-εt dt+1= 12 ,若ht(xi)=yi; Dt(i),若ht(xi)≠yi,且Dt(i)≥TVt; εtDt(i)×1-εt 1-2 ,若ht(xi)≠yi,且Dt(i) 其中,TVt是第t轮训练中的权值更新阈值,取该轮训练中所有样本权值的均值,即TVt=∑Dt(i)(N为所有 i=1 样本总数,N=m+n).样本权值归一化: dt+1(i)m ×Dt+1(i)= i=1 ∑d n t+1 (i) m,yi=+1; m+n n,yi=0. m+n dt+1(i)i=1 ×∑dt+1(i)T轮训练结束后,最终的预测函数为H(x)= 11,αtht(x)≥ 2t=1 TT ∑ t=1 α;∑ t 0,其他. 2 改进算法的有效性测试 测试样本集包括由美国卡耐基-梅隆大学VASC 提供的测试集CMU人脸库,以及从其他途径获取的图像,这些图像质量各异.CMU测试集经常在人脸检测中被使用,是一个比较公认的测试集,在它上面来做传统方法和改进后方法的性能比较,比较结果如表1所示,部分测试结果示例如图1所示. CMU测试集共有130幅灰度图像,包含507 表1 改进前后方法在CMU测试集上的性能比较Tab.1 Performancecomparisonoftwoalgorithms人脸检测方法传统算法改进算法检测率 91.8%94.1%误检子窗口数目 16775a.CMU人脸库检测结果 b.其他图像人脸检测结果 图1 人脸检测结果 Fig.1 Resultsoffacedetection 个不同大小的人脸.对其进行检测,检测出了477个人脸,检测率为(477/507)×100%≈94.1%,误检子窗口数目为75个.测试结果分析如下. (1)检测率和误检率:针对CMU测试集而言,94.1%的检测率基本上达到了主流方法的水平,同时误检 84河南大学学报(自然科学版),2010年,第40卷第1期 率相比传统方法要低.对于从其他途径收集的图片,检测率主要和图像质量、人脸是否旋转有较大关系.对于图片质量比较好而且人脸旋转角度不是特别大的图片,检测效果较好.(2)检测速度:对于分辨率为384×288的图像,本方法的检测时间约为0.095s,基本上达到了快速人脸检测的目的. 3 结语 针对AdaBoost算法存在的不足,本文提出了改进方法,测试结果表明,在检测率、误检率和检测速度等方面,改进算法优于传统的AdaBoost算法.人脸检测是一个富有挑战性的课题,从目前的发展以及本文工作中发现的一些问题来看,如何缩短训练时间、消除光照影响等方面仍然值得继续探索.参考文献: [1]YFreund,RESchapire.Adecision2theoreticgeneralizationofonlinelearningandanapplicationtoboosting[A]∥Proc. SecondEuropeanConferenceonComputationalLearningTheory[C],1995. [2]PaulViola,MichaelJones.Robustreal2timeobjectdetection[A]∥8thIEEEInternationalConferenceonComputerVision (ICCV)[C].Vancouver,BritishColumbia,2001. [3]PaulViola,MichaelJones.RapidObjectDetectionusingaBoostedCascadeofSimpleFeatures[A]∥Proceedingsofthe IEEECVPR[C].USA,2001. [4]RESchapire.TheStrengthofweaklearnability[J].MachineLearning,1990,5(2):197-227. [5]SamuelK,ParthaN.TheinteractionofstabilityandweaknessinAdaBoost[R].UniversityofChicagoDepartmentof ComputerScience,2001.责任编辑:党兰学 (上接第80页) 参考文献: [1]WaxM,ShanT,KailathT.Spatio-temporalspatialanalysisbyeigenstrueturemethods[J].IEEETrans.,1984,32(4): 817-827. [2]HWang,MKaveh.Coherentsignal-subspaceprocessingforthedetectionandestimationofanglesofarrivalofmultiple widebandsources[J].IEEETrans.,1985(33):823-831. [3]王永良,陈辉,彭应宁.等.空间谱估计理论与算法[M].北京:清华大学出版社,2004. [4]KMBuckley,LJGriffiths.Broad-bandsignal-subspacespatial-spectrum(BASS-ALE)estimation[J].IEEETrans., 1988,36(7):953-964. [5]YGrenier.Widebandsourcelocationthroughfrequency-dependentmodeling[J].IEEETrans.,1994,42(5):1087-1096. [6]陈建峰.水下高分辨定向关键技术研究[D].西安:西北工业大学,1999.[7]冯西安.水下目标高分辨方位估计技术研究[D].西安:西北工业大学,2004. 责任编辑:党兰学 因篇幅问题不能全部显示,请点此查看更多更全内容