基于adaboost算法的人脸检测方法综述_第1页
基于adaboost算法的人脸检测方法综述_第2页
基于adaboost算法的人脸检测方法综述_第3页
基于adaboost算法的人脸检测方法综述_第4页
基于adaboost算法的人脸检测方法综述_第5页
已阅读5页,还剩52页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

中国矿业大学本科生毕业设计姓名杨腾蛟学号08073590学院计算机科学与技术专业电子信息科学与技术设计题目基于ADABOOST算法的人脸检测方法综述专题人脸检测与定位指导教师梁志贞职称副教授2011年6月徐州中国矿业大学毕业设计任务书学院计算机科学与技术专业年级信科072学生姓名杨腾蛟任务下达日期2011年1月10日毕业设计日期2011年2月21日至2011年6月15日毕业设计题目基于ADABOOST算法的人脸检测方法综述毕业设计专题题目人脸检测与定位毕业设计主要内容和要求毕业设计(论文)的目的是对毕业生所学的专业基础知识和研究能力、自学能力以及各种综合能力的检验,要进一步巩固和加强学生基本知识的掌握和基本技能的训练,加强对学生的多学科理论、培养刻苦钻研、勇于探索的精神。人脸检测(FACEDETECTION)是指在输入图像中确定所有人脸(如存在)位置与大小。人脸检测系统的输入是可能包含人脸的图像,是关于图像中是否存在人脸以及人脸的数目、位置、尺度、姿态等信息参数化描述。检测任务的完成涉及从复杂的背景中分割、抽取、验证人脸区域和可能要用到的人脸特征(如眼角、嘴角等),成功的人脸检测系统应能处理实际存在的光线、人脸方向和离照相机距离变化等各种不同情况。人脸检测作为人脸信息处理中的一项关键技术,近年来成为模识别与计算机视觉领域内一项受到普遍重视、研究十分活跃的课题。本课题首先要介绍了人脸检测方面发展的状况和常用的人脸检测和识别的基本理论,然后根据所学知识对已有的算法编程实现,初步实现一个人脸检测系统。院长签字指导教师签字中国矿业大学毕业设计指导教师评阅书指导教师评语(基础理论及基本技能的掌握;独立解决实际问题的能力;研究内容的理论依据和技术方法;取得的主要成果及创新点;工作态度及工作量;总体评价及建议成绩;存在问题;是否同意答辩等)成绩指导教师签字年月日中国矿业大学毕业设计评阅教师评阅书评阅教师评语(选题的意义;基础理论及基本技能的掌握;综合运用所学知识解决实际问题的能力;工作量的大小;取得的主要成果及创新点;写作的规范程度;总体评价及建议成绩;存在问题;是否同意答辩等)成绩评阅教师签字年月日中国矿业大学毕业设计答辩及综合成绩答辩情况回答问题提出问题正确基本正确有一般性错误有原则性错误没有回答答辩委员会评语及建议成绩答辩委员会主任签字年月日学院领导小组综合评定成绩学院领导小组负责人年月日摘要人脸识别是当今模式识别领域的热门研究课题,是辨识身份的重要手段。而人脸检测是人脸识别的前提和基础,只有先将图像和视频中的人脸准确定位出来才能对其进行有效识别。人脸检测问题在通用目标检测领域有其重要的研究意义。在本文的前三章中,我们重点介绍了基于学习的人脸检测流程,并以此引出了基于学习的人脸检测算法的代表基于ADABOOST人脸检测方法,ADABOOST算法是1995年提出的一种快速人脸检测算法,是人脸检测领域里程碑式的进步,这种算法根据弱学习的反馈,适应性地调整假设的错误率,使在效率不降低的情况下,检测正确率得到了很大的提高。在第四章,我们介绍了影响ADABOOST训练算法的两个重要因素HAAR矩形特征与积分图,同时,我们还对HAAR矩形特征进行了扩展,由原先的5个扩展到15个,使其更加完备,能够应对更广范围内的人脸检测问题。在第五章,我们介绍了分类器训练级联的方法和ADABOOST算法的详细流程。对传统的弱分类器构造方法提出了改进,将原先的一个适应性阈值上升为上下限两个阈值。在第六章,我们介绍了基于OPENCVADABOOST人脸检测方法的实现,重点阐述了基于OPENCV人脸分类器的训练方法。在文章的最后,我们对该设计方案做出了总结,并对未来人脸检测的研究方向做出了展望。关键词人脸检测;积分图;HAAR特征;ADABOOST;分类器级联ABSTRACTFACERECOGNITIONISTHEHOTRESEARCHTOPICINTODAYSFIELDOFPATTERNRECOGNITION,WHICHISTHEIMPORTANTMETHODOFTHEIDENTIFICATIONIDENTITYBECAUSEFACEDETECTIONISTHEPREMISEANDBASISOFFACERECOGNITION,WEHAVETOCORRECTLYPOSITIONOUTTHEPLACEOFFACESINIMAGESORVIDEOSFIRSTLY,ANDTHENTHEEFFECTIVERECOGNITIONCANBEACCOMPLISHEDFACEDETECTIONINTHEGENERALTARGETDETECTIONFIELDHASITSIMPORTANTRESEARCHSIGNIFICANCEINTHEFIRSTTHREECHAPTERSOFTHISPAPER,WEMAINLYINTRODUCEDTHEFACEDETECTIONBASEDONLEARNINGPROCESS,ANDTHISRAISEDTHEFACEDETECTIONALGORITHMBASEDONSTUDYOFTHEREPRESENTATIVEFACEDETECTIONMETHODBASEDONADABOOSTADABOOSTALGORITHMWASPUTFORWARDIN1995,ARAPIDFACEDETECTIONALGORITHM,WHICHWASAMILESTONEINTHEPROCESSOFFACEDETECTIONFIELDTHISALGORITHMACCORDINGTOTHEFEEDBACKOFTHEWEAKLEARNER,ADAPTIVELYADJUSTSTHEASSUMPTIONOFTHEERRORRATE,ANDFROMTHIS,DETECTIONACCURACYCANGETIMPROVEDALOTWITHOUTTHEDECREASEOFEFFICIENCYINTHEFOURTHCHAPTER,WEINTRODUCEDTWOIMPORTANTFACTORSINFLUENCINGADABOOSTTRAININGALGORITHMHAARRECTANGLEFEATUREANDINTEGRALIMAGESATTHESAMETIME,WEEXPANDEDHAARRECTANGLEFEATUREFROM5TO15,WHICHMADEITTENDTOBEPERFECTINCHAPTER5,WEINTRODUCEDTHETRAININGANDCASCADEOFCLASSIFIERANDTHEDETAILEDPROCESSOFADABOOSTALGORITHMWEIMPROVEDTHETRADITIONALWEAKLEARNER,ANDMADEAWEAKCLASSIFIERCOMPOSEDOFABIGTHRESHOLDANDASMALLTHRESHOLDSUCHTHATTHEMINIMUMNUMBERSOFSAMPLESWEREMISCLASSIFIEDINCHAPTER6,WEINTRODUCEDTHEREALIZATIONOFADABOOSTALGORITHMBASEDONOPENCV,ANDITFOCUSEDONTHETRAININGMETHODOFFACECLASSIFIERSATTHEENDOFTHEPAPER,WESUMMARIZEDTHEDESIGNPLAN,ANDMADEPROSPECTOFTHEFUTURERESEARCHDIRECTIONOFFACEDETECTIONKEYWORDSFACEDETECTIONINTEGRALIMAGEHAARFEATUREADABOOSTCASCADECLASSIFIERS目录1人脸检测概述111人脸检测概念112人脸检测的发展历史113人脸检测的难点与研究方法32基于学习的人脸检测流程521分类器的离线学习6211图像对齐6212预处理7213特征提取8214分类器的学习822目标的在线检测923人脸检测方法的性能评价10231人脸图像数据库10232性能评价方法113基于ADABOOST的人脸检测方法概述144矩形特征与积分图1541引言1542HAAR矩形特征16421概述16422特征模板与模板特征值16423HAAR特征的扩展1743积分图INTEGRALIMAGES18431积分图的概念18432基于积分图的像素值计算20433基于积分图的特征值计算205分类器训练及ADABOOST算法2151弱分类器WEAKCLASSIFIER2252ADABOOST算法训练强分类器22521算法描述23522算法流程图2453级联强分类器结构256基于OPENCV的程序实现2661OPENCV简介2662训练样本集与测试集2663基于OPENCV的分类器实现27631样本描述文件创建27632训练分类器2864检测结果28641检测结果对比28642基于ADABOOST算法的更多检测结果30643基于ADABOOST算法的视频检测结果327结论与对未来的展望33参考文献34英文原文35中文译文42致谢48图像目录图11人脸的遮挡、不同表情和图像的旋转会影响到人脸的检测4图12不同角度人脸带来的检测结果也有可能不同4图21基于学习的人脸检测流程6图22目标检测的金字塔9图23检测结果的融合9图24典型的正面人脸图像数据库中的人脸图像11图25左侧为测试图像,右侧为检测结果。12图26MITCMU测试集的人脸检测ROC曲线13图31ADABOOST人脸检测器结构14图32人脸检测系统流程15图33分类器级联结构15图41矩形特征在人脸上的特征匹配16图42竖直和倾斜的矩形的例子1745图43扩展的HAAR特征集合18图45灰度图像积分图算法示意图19图44“积分图”与积分的类比19图46区域D的像素和可以用积分图计算20图47矩形特征的特征值计算21图51人脸检测中强弱分类器与ADABOOST算法22图52弱分类器中的阈值选取22图53算法流程图24图61MIT部分人脸样本26图62MIT部分非人脸样本27图63测试结果对比129图64测试结果对比229图65测试结果对比329图66一张人脸检出1漏检0虚警230图67一张有遮挡的人脸检出1漏检0虚警030图68四张有遮挡的人脸检出4漏检0虚警230图69五张人脸检出5漏检0虚警031图610五张远近不同的人脸检出5漏检0虚警331图611三张人群中模糊的人脸检出3漏检0虚警131图612八张人脸检出8漏检0虚警132图613一张人脸检出1漏检0虚警032图614四张人脸检出3漏检1虚警232图615光线昏暗且有遮挡的两张人脸检出2漏检0虚警1331人脸检测概述11人脸检测概念长期以来,计算机就好像一个盲人,需要被动地接受由键盘、文件输入的信息,而不能主动从这个世界获取信息并自主处理。人们为了让计算机看到这个世界并主动从这个世界寻找信息,发展了机器视觉;为了让计算机自主处理和判断所得到的信息,发展了人工智能科学。人们梦想,终有一天,人机之间的交流可以像人与人之间的交流一样畅通和友好。迄今为止,机器视觉的发展已经历了一个漫长的过程。经过研究者们的不懈努力,新的信息技术和媒体手段的出现,使得更加有效和友好的人机交互方式得到了发展,新型的人机交互将不再依赖传统的输入设备。而且,计算性价比的提高和视频获取成本的降低,使得计算机视觉系统能够向桌面级和嵌入式系统发展,这意味着计算机视觉系统能够安装在一切电子系统之中。相信在不久的将来,拥有高级视觉系统的智能电子产品会给我们的生活带来更大的方便。人脸检测FACEDETECTION,FD,也称自动人脸检测AUTOMATEDFACEDETECTION,AFD,是近年来得到广泛关注的研究热点,其相关技术的应用范围也在不断扩展,人脸检测技术的出现与飞跃,为机器视觉在人机交互领域的长足进步奠定了坚实的基础。人脸检测是指在输入图像中判断是否存在人脸区域,并进一步确定人脸的位置、大小和姿态等信息。人脸检测是人脸识别、表情检测和性别检测等人脸信息处理问题中涉及的一项关键技术,同时也是通用目标检测问题最具代表性的特例,近年来在模式检测与计算机视觉领域受到普遍重视。12人脸检测的发展历史人脸检测是一个被广泛研究着的热门领域,大量的研究论文层出不穷。为了更好地对人脸检测研究的历史和现状进行介绍,我们将按照研究内容、技术方法等方面的特点大体划分为三个时间阶段来做介绍。第一阶段(19641990年)这一阶段人脸检测通常只是作为一个一般性的模式识别问题被研究,所采用的主要技术方案是基于人脸几何结构特征(GEOMETRICFEATUREBASED)的方法,这集中体现在人们对于剪影(PROFILE)的研究上,人们对面部剪影曲线的结构特征提取与分析方面进行了大量研究。人工神经网络也一度曾经被研究人员用于人脸检测问题中。较早从事AFR研究的研究人员除了BLEDSOE外还有GOLDSTEIN,HARMON以及KANADE等。KANADE博士于1973年在京都大学完成了第一篇AFR方面的博士论文,直到现在,作为卡内基梅隆大学(CMU)机器人研究院的一名教授,KANADE博士仍然是人脸检测领域的活跃人物之一,他所在的研究组也是人脸检测领域的一支重要力量。总体而言,这一阶段是人脸检测研究的初级阶段,非常重要的成果不是很多,也基本没有获得实际应用。第二阶段(19911997年)这一阶段尽管时间相对短暂,但却是人脸检测研究的高潮期,可谓硕果累累不但诞生了若干代表性的人脸检测算法,美国军方还组织了著名的FERET人脸检测算法测试,并出现了若干商业化运作的人脸检测系统,比如最为著名的VISIONICS(现为IDENTIX)的FACEIT系统。麻省理工学院媒体实验室的TURK和PENTLAND提出的“EIGENFACE”方法无疑是这一时期内最负盛名的人脸检测方法。其后的很多人脸检测技术都或多或少与EIGENFACE有关系,现在EIGENFACE已经与归一化的协相关量NORMALIZEDCORRELATION方法一道成为人脸检测的性能测试基准算法。这一时期的另一个重要工作是麻省理工学院AI实验室的BRUNELLI和POGGIO于1992年左右做的一个对比实验,他们对比了基于结构特征的方法与基于模板匹配的方法的检测性能,并给出了一个比较确定的结论模板匹配的方法优于基于特征的方法。这一导向性的结论与EIGENFACE共同作用,基本中止了纯粹的基于结构特征的人脸检测方法研究,并在很大程度上促进了基于表观(APPEARANCEBASED)的线性子空间建模和基于统计模式检测技术的人脸检测方法的发展他们逐渐成为主流的人脸检测技术。BELHUMEUR等提出的FISHERFACE人脸检测方法1是这一时期的另一重要成果。该方法首先采用主成分分析(PRINCIPALCOMPONENTANALYSIS,PCA,亦即EIGENFACE)对图像表观特征进行降维,在此基础上,采用线性判别分析(LINEARDISCRIMINANTANALYSIS,LDA)的方法变换降维后的主成分,以期获得“尽量大的类间散度和尽量小的类内散度”。该方法目前仍然是主流的人脸检测方法之一,产生了很多不同的变种。MIT的MOGHADDAM则在EIGENFACE的基础上,提出了基于双子空间进行贝叶斯概率估计的人脸检测方法。人脸检测中的另一种重要方法弹性图匹配技术ELASTICGRAPHMATCHING,EGM也是在这一阶段提出的。由美国国防部反毒品技术发展计划办公室资助的FERETFACERECOGNITIONTECHNOLOGYTEST项目无疑是该阶段内的一个至关重要的事件。FERET项目的目标是要开发能够为安全、情报和执法部门使用的AFR技术。该项目包括三部分内容资助若干项人脸检测研究、创建FERET人脸图像数据库、组织FERET人脸检测性能评测。该项目分别于1994年、1995年和1996年组织了3次人脸检测评测,几种最知名的人脸检测算法都参加了测试,极大促进了这些算法的改进和实用化。该测试的另一个重要贡献是给出了人脸检测的进一步发展方向光照、姿态等非理想采集条件下的人脸检测问题逐渐成为热点的研究方向。第三阶段(1998年现在)FERET96人脸检测算法评估表明主流的人脸检测技术对光照、姿态等由于非理想采集条件或者用户不配合造成的变化鲁棒性比较差。因此,光照、姿态问题逐渐成为研究热点。与此同时,人脸检测的商业系统进一步发展,为此,美国军方在FERET测试的基础上分别于2000年和2002年组织了两次商业系统评测。以支持向量机(SUPPORTVECTORMACHINE,SVM)2为代表的统计学习理论也在这一时期内被应用到了人脸检测与确认中来。SVM是一个两类分类器,而人脸检测则是一个多类问题,通常有三种策略解决这个问题,即类内差/类间差法、一对多法(ONETOREST)和一对一法(ONETOONE)。BLANZ和VETTER等提出的基于3D变形3DMORPHABLEMODEL模型的多姿态、多光照条件人脸图像分析与检测方法是这一阶段内一项开创性的工作。该方法在本质上属于基于合成的分析技术,可以使得人脸形状和纹理等人脸内部属性与摄像机配置、光照情况等外部参数完全分开,更加有利于人脸图像的分析与检测。实验表明,该方法在CMUPIE(多姿态、光照和表情)人脸库和FERET多姿态人脸库上都达到了相当高的检测率,证明了该方法的有效性。SHASHUA等在2001年提出了一种基于商图像的人脸图像检测与绘制技术。BASRI和JACOBS则利用球面谐波(SPHERICALHARMONICS)表示光照、用卷积过程描述朗博反射的方法解析地证明了一个重要的结论由任意远点光源获得的所有朗博反射函数的集合形成一个线性子空间。这为光照问题的解决提供了重要思路。FERET项目之后,涌现了若干人脸检测商业系统,美国国防部有关部门进一步组织了针对人脸检测商业系统的评测FACERECOGNITIONVENDORTESTFRVT,至今已经举办了两次FRVT2000以及FRVT2002测试。这两次测试一方面对知名的人脸检测系统进行了性能比较,例如FRVT2002测试就表明COGNITEC、IDENTIX和EYEMATIC三个商业产品遥遥领先于其他系统,而它们之间的差别不大。另一方面则全面总结了人脸检测技术发展的现状较理想条件下(正面签证照),针对37437人121589幅图像的人脸检测IDENTIFICATION最高首选检测率为73,人脸验证VERIFICATION的等错误率大约为6。FRVT测试的另一个重要贡献是还进一步指出了目前的人脸检测算法亟待解决的若干问题。总体而言,目前非理想成像条件下的人脸检测问题逐渐成为研究的热点问题。而非线性建模方法、统计学习理论、基于BOOSTING的学习技术、基于3D模型的人脸建模与检测方法等逐渐成为备受重视的技术发展趋势。13人脸检测的难点与研究方法人脸检测需要考虑较多方面的因素,既要保证较高的检出率(HIGHDETECTIONRATE),又要保证较低的误检率(LOWFALSEPOSITIVERATE)。人脸检测的主要难点包括(1)人脸的多样性。人脸中包含很多细节和特性,比如人的发型、肤色、眼睛的大小和睁闭等,都可能给人脸检测带来困难。(2)人脸的遮挡,如眼镜、额前的长发,还有外界环境引起的遮挡等。(3)人脸的视角变化。人脸的视角变化包括平面内旋转和平面外旋转,拍摄到的可能是侧面人脸或倾斜人脸。(4)复杂的背景。如果人脸隐藏在与肤色相似难以分离的背景中,可能会出现误检的情况。(5)多变的成像条件。主要有光照、阴影、成像设备的限制等方面的影响。图11人脸的遮挡、不同表情和图像的旋转会影响到人脸的检测图12不同角度人脸带来的检测结果也有可能不同利用图像技术的人脸检测研究已经有20多年的历史,现有的人脸检测方法可以分为两类,一类是基于知识的方法(KNOWLEDGEBASEDAPPROACH),另一类是基于学习的方法(LEARNINGBASEDAPPROACH)3。基于知识的方法是基于特定的规则进行人脸检测,而规则来源于关于人脸模式的先验知识。例如人脸一般包括位置互相对称的两只眼睛、一个鼻子和一张嘴等特征,而且它们具有相对固定的位置关系。检测过程一般首先提取这些面部特征,然后再根据它们的位置关系进行组合。这种方法出现于早期的人脸检测工作中,具有简单、可行和易用的特点。该方法的主要缺点是很难将人脸模式的所有知识转换为可计算的规则表达式。如果规则过于严格,则容易出现漏检的情况;过于简单时又容易出现误检的情况。同时由于人脸模式的复杂性,该方法很难枚举所有人脸的情况,限制了其应用范围。基于学习的方法收集大量人脸和非人脸样本,然后利用机器学习算法,通过学习得到一个分类器,最后利用该分类器进行人脸检测。基于学习的方法性能取决于学习机器(LEARNINGMACHINE)的学习能力以及训练样本对实际目标模型的表达能力。与基于知识的方法相比,基于学习的方法能够处理复杂环境下的人脸检测问题,是当前的主流研究方向。根据学习方法的不同,主要研究成果包括基于贝叶斯准则的方法,基于人工神经元网络(ARTIFICIALNEURALNETWORK,ANN)的方法,基于支持向量机(SUPPORTVECTORMACHINE,SVM)的方法,基于ADABOOST的方法。这4种方法在检测器的精度上没有本质的差别,但速度上借助HAAR矩形特征和ADABOOST算法的级联检测器结构的计算效率却远远超越了其他方法4。由于该方法的巨大成功,近几年的人脸检测方法通常是该方法的变形或者扩展,同时该方法还被推广到行人目标的快速检测5,所以本篇论文主要介绍该类方法和相关拓展,以及其借助于OPENCV的实现方法。2基于学习的人脸检测流程ADABOOST算法是基于学习的人脸检测的典型方法,所以有必要在介绍ADABOOST算法之前详细讲解一下基于学习的人脸检测方法的一般流程。基于学习的人脸检测流程如图21所示,有两个部分组成检测器的离线学习(OFFLINELEARNING)和在线检测(ONLINEDETECTION)。离线学习指利用收集的训练样本结合机器学习算法学习得到表示目标模型的分类器结构,在线检测指利用学习得到的分类器模型扫描输入图片从而得到人脸在图像中的位置。下面分别介绍这两个组成部分以及相关的性能评价方法。NONFACESETFACESETINPUTIMAGES对齐预处理特征提取分类器训练抽取所有分类窗口预处理特征提取分类器分类窗口合并图21基于学习的人脸检测流程(左半部分为离线学习,右半部分为在线检测)21分类器的离线学习如图21所示,分类器的离线学习包括图像对齐、预处理、特征提取和分类器训练四个基本模块,下面对这四个模块的具体操作做出详细讲解。211图像对齐分类器离线学习的第一步是收集训练样本,并且将所有人脸图像进行对齐(配准)。对齐的目的是降低训练样本在尺度、形状、旋转和平移等几何特性方面的模式变化。假定图形采集时获取设备与人体的距离足够大,则可以将人脸看作一个平面。训练图像中不同尺度、形状和倾斜角度的人脸被认为是由一个“标准人脸”经平移、旋转或缩放得到。对齐的目的是求得“标准人脸”,并将各个训练样本映射到“标准人脸”图像上。为了对齐人脸,可首先手工标注各个图像上人脸的一些特征点的位置,如眼角、嘴角等。假定是“标准人脸”上的一个特征点,是任意一幅训练图像上对应的特征点,,XY,XY两者的关系可以用仿射变换来表示6,即(21)COSINI1XXYYTTXABY给定一组对应点后,式(21)可以进一步写为(22)11220XYXYABT当两个图像有两个以上对应点时,上述线性方程组可以通过“伪逆”的方法求解。假定式(22)等号左边的矩阵为A,求解变量,等号右边的向量为B,则有,TXYTABT(23)1A通过式(21)的逆变换,任意一个训练图像上的特征点可以变换到“标准人脸”坐标。给定一组标注了特征点的人脸图像,需要同时求取“标准人脸”上特征点的位置与每个训练图像和“标准人脸”之间的变换参数。这个迭代过程包括以下步骤7(1)初始化所有训练样本上的对应样本点的平均位置作为“标准人脸”上的特征F点。(2)对任意一个训练人脸I,计算该人脸的特征点位置和平均位置之间的映射关I系,利用将映射到标准人脸坐标。ITIIFIF(3)利用更新平均位置。(4)如果的改变较小则停止迭代,否则转向步骤(2)。得到标准人脸的坐标位置和每个训练图像的映射参数后,可以通过插值的方法8剪裁得到对齐的固定大小的人脸训练图像。非人脸可以从不包含人脸的背景图片中随机抽取得到,或者通过“自举(BOOTSTRAP)”方法利用学习得到的分类器在背景图片上检测出一些虚警得到。212预处理预处理的目的是降低光照不均匀的影响。首先考虑对样本图像进行照度梯度修正(ILLUMINATIONGRADIENTCORRECTION),即用图像的灰度值拟合出一个校正平面,然后减去这个平面。假设待处理的图像中包含N个像素,灰度为,需要拟合的,IFXY1,2IN平面为,此平面应该使与Z间的均方误差最小,即123ZAXY,IFXY(24)1232123123,ARGMN,NIIIIAF式(24)可以用最小二乘法求解。求得平面后,将图像中的各个像素与其上相应位置的Z值相减,即(25)123,IIIIFXYFAXY照度梯度修正消除了图像的一阶变化量,能很大程度上减弱脸部的阴影,但该方法并不能完全消除脸部的阴影。这些阴影可以看作是人脸模式中固有的干扰分量,需采用统计学习的方法使分类器适应这些变化。为了进一步增强人脸模式的一致性,可以对样本图片的统计特性进行标准化(归一化)。考虑最基本的统计量灰度的均值和方差,将它们调整到给定值。令大小为像素的图像灰度矩阵为,则该图像的灰度均值和方差WH,FXY0,WYH分别为(26)10,HYXF(27)1220,WYXF不失一般性,将图像的灰度均值和方差调整到给定值0和1,则需要对每个像素点的灰度值进行如下变换(28),FXYF变换后的图像可以部分地消除训练样本与测试样本光照变化。213特征提取特征提取的目的是将训练图像的像素值映射到特征空间,以降低类内距离,提高类间距离,方便分类。常用的特征包括原始像素特征、HAAR特征和GABOR特征9等。特征提取要同时考虑特征的鉴别能力和计算复杂度。例如当直接采用图像灰度值作为特征时,虽然省略了特征提取这一计算过程,但由于原始像素特征本身的鉴别性比较低,往往需要采用分类器将特征提取这一过程隐含在分类结构中,使得分类器结构变得非常复杂,分类速度下降,GABOR特征对目标的描述比较有效,但该特征的计算复杂度较高,不便于人脸检测的实时应用。HAAR特征的定义简单,同时计算复杂度较低,是现有人脸检测算法中广泛采用的特征表示形式,将在第4章详细介绍。214分类器的学习分类器的学习是模式识别和机器学习研究的主要内容,现在常用的方法包括神经网络、SVM和ADABOOST集成分类器等。神经网络在20世纪90年代早期应用较多;随着SVM的发展,目前可以采用神经网络的地方已大多由SVM替代。采用SVM的优点是避免了反复选取神经网络的隐藏层节点数目且推广性较好。ADABOOST集成分类器的优点是可以从一个特征池中选择出对分类最有用的特征,其设计方法将在下文第5章有详细介绍。在分类器训练过程中可以通过“自举”(BOOTSTRAP)的方法提高分类器的性能。自举的意思是利用已经训练好的分类器对背景图片上的窗口进行分类,将得到的虚警加入到非人脸样本中,然后重新训练分类器。自举的目的是将最容易混淆的非人脸样本逐渐加入到训练集中,以提高分类器的鉴别能力。自举的方法可以反复进行直到所得到的分类器在测试集合或者验证数据集合上的性能没有明显改善为止。22目标的在线检测在训练过程中得到的目标模型具有固定的宽度和高度,而在待检测图像中目标可能出现在任何位置,具有任意的大小,所以检测过程中一般采用金字塔式的穷尽搜索法。如图22所示。图22目标检测的金字塔原始图像按照预定尺度步长逐步缩小,直到达到预先设定的尺度或者小于模板为止。在每一尺度下分别以固定的步长抽取和标准模板同样大小的窗口,经过和训练过程中相同的预处理和特征提取过程得到该窗口的特征向量,最后利用预先训练好的分类器对该特征向量进行分类。由于目标的长宽比是固定的,所以目标在尺度上只有一个自由度,目标在图像上的位置退化为3个自由度,可以用3D空间中的一个点表示。假设目标模板的高度为H、宽度为W、模板的中心位置为、每个模板对应的位置设为3D空间中的0,坐标点,那么目标在3D空间中点对应的中心为,宽度为SW,0,112YXS12,X高度为SH。某一尺度下任意一个窗口对应3D空间中的一个固定点Y,对应的分类器的响应值为,概率大于预先设定阈值的窗口可以加入候选目标集合Y。C一般在目标附近,会有好几个窗口被判断为候选目标,如图23所示。图23检测结果的融合需要对这些对应同一个目标的窗口进行融合,找到分类器相应的局部极值,然后用这个3D空间中的极值点作为目标出现的真实位置。检测结果融合有以下3条原则10局部极值点对应的概率值越大,说明该位置出现目标的可能性越大;局部极值点附近对应的窗口越多,说明该极值点是目标的概率越大;临近的检测结果应该融合在一起,但在各个尺度上都临近的检测目标可能是对应相邻的两个目标,不应该被融合。目前满足这3条原则的较好的融合方法是变带宽的均值漂移算法(VARIABLEBANDWIDTHMEANSHIFT)11。23人脸检测方法的性能评价对于人脸检测方法的性能评价,一般来讲会关注于两个方面,一是运用怎样的人脸数据库来检测,该人脸数据库必须尽可能多的包括实际生活中人脸出现的情况;二是需要运用怎样的性能评价方法以及产生的评价指标。231人脸图像数据库人脸图像数据库可用于人脸检测的训练和测试。大部分的人脸检测方法都需要人脸训练图像数据,原先用于人脸识别实验的数据库现在都可以用来进行人脸检测的训练。通常人脸识别实验所采用的人脸库不大,一般仅包括100幅左右的人脸图像,如MIT库、YALE库、CMU库等都是小型库。下表列出了常见的一些人脸检测图像数据库12数据库描述位置MIT共有16个人的脸,每个人有27幅在不同光线、不同尺度、不同头部角度情况下的图像FTP/WHITECHAPELMEDIAMITEDU/PUB/IMAGESFERET收集了大量的男性、女性人脸,每张图像包含了一张特定表情的人脸HTTP/WWWNISTGOV/HUMANID/FERETUMIST分为20个主题,共564张图像,每个主题包括从侧面到正面的不同人脸姿态HTTP/IMAGESEEUMISTACUK/DANNY/DATABASEHTMLUNIVOFBERN30个人的300张正面人脸(每人10张)和150张侧面人脸(每人5张)FTP/IANFTPUNIBECH/PUB/IMAGES/FACEIMAGES/YALE在不同光照条件下,戴眼镜的表情人脸HTTP/CVCYALEEDUAT0,0,XWYHWWH分类窗口WHHWWH假设矩形R内所有像素之和为RECSUMR,扩展的HAAR特征定义为所有的矩形框的像素之和的组合,即(41)1,IIIINFEATURWRECSUMR其中,矩形框和N可以任意选取。式(41)表示的特征集合极大,为了便于实际IWRIR应用,可进行下述简化每次只考虑两个矩形框,即N2,;两个矩形框的权值的符号相反,且绝对值与各自的矩形面积成反比,即。不失一般性,假0011WAREAREA设1于是;这些特征模仿了HAAR特征和其他的视觉响应,如中心0101/AREAR周围响应和对角响应。如此可得到如图43所示的扩展HAAR特征,共包括下面3种形式4个边缘特征,8个线性特征,2个中心周围特征。加上特殊的对角线特征,共得到15个特征模板。图42竖直和倾斜的矩形的例子451、边缘特征2、线状特征3、中心周围特征4、对角线特征图43扩展的HAAR特征集合这些特征模板可以在水平和垂直两个方向上任意缩放,在目标模板窗口里任意平移,从而得到一个完备的特征集合。43积分图INTEGRALIMAGES通过将原图像转化为积分图的方法我们可以用很快的速度计算出系统的特征,在这一章节,我们将介绍在图像处理领域非常著名的积分图,和使用积分图来计算特征值的方法。431积分图的概念我们可以微积分与积分图做一个简单的类比对于定积分,我们一般会先计BAFXD算不定积分的多项式表达形式,再计算。FXFDXBAFF用图像表示如图44,积分图的原理与定积分的计算类似,而引入积分图的目的在于从图像繁杂的像素级运算处理中摆脱出来,在积分图的形式下处理图像。积分图能够在多种尺度下,使用相同的时间来计算不同的特征,因此大大提高了检测速度。YXAB对于图像内一点,定义其积分图为为,AXY,IXY(42),XYII其中是处的原始图像,代表该点的颜色值,对于灰度图像,其值为,IXY,0255,对于彩色图像,可以先按照人脸彩色空间将其转化为灰度取值。如图45,我们以的灰度图形举例来说明积分图的计算方法。其中AX,Y的积分图定义为其左上20角矩形所有像素之和(即灰度值之和),SX,Y为AX,Y及其Y方向向上所有像素之和。图45灰度图像积分图算法示意图也可以通过下式迭代求出,IXY1,1XYXYAX,YSX,Y图44“积分图”与积分的类比(43),1,IXYIYSXSI其中SX,Y为点X,Y及其Y方向向上所有像素之和,称为列积分和,可以定义为(44),YSXIX并定义。,0,0SXIY432基于积分图的像素值计算如图46,区域D的像素值,可以用1、2、3、4点的积分图来计算。图46区域D的像素和可以用积分图计算计算方法为(45),推导过程如下1423SUMII1234ABCCDII区域的像素值区域的像素值区域的像素值区域的像素值区域的像素值区域的像素值区域的像素值区域的像素值区域的像素值显然从上述方程组中容易推导得出区域D的像素值。1423SUMII433基于积分图的特征值计算以图47所示矩形特征模板,此矩形特征模板的特征值C为C区域A的像素值区域B的像素值图47矩形特征的特征值计算由刚才的推导可知41236345ABII区域的像素值区域的像素值所以此特征模板的特征值C为(46)43214365CIIII由此可见,矩形特征的特征值计算,只与此特征端点的积分图有关,而与图像坐标值无关。因此,不管此矩形特征的尺度如何,特征值的计算所耗费的时间都是常量(TIMECONSTANT),而且只是简单的加减运算。正因如此,积分图的引入,大大地提高了检测速度。5分类器训练及ADABOOST算法BOOSTING算法可以作为一个基础的学习算法去训练一个强分类器。FREUND和SCHAPIRE提出了BOOSTING算法和它的具体应用ADABOOST算法,ADABOOST算法是ADAPTIVEBOOSTING的缩写。ADABOOST在特征选取和强分类器训练中都有具体的应用。VIOLAANDJONES最先在解决人脸检测问题中使用ADABOOST。在下文中我们将详细介绍弱分类器、强分类器和由弱分类器训练成为强分类器的ADABOOST训练算法。它们在人脸检测过程中扮演的角色如图51所示。特征集训练集1、人脸2、非人脸LEARNINGPROCESSADABOOST算法处理弱分类器1弱分类器2弱分类器3强分类器强分类器人脸非人脸图51人脸检测中强弱分类器与ADABOOST算法51弱分类器WEAKCLASSIFIER强分类器中包含若干个弱分类器。一个弱分类器需要能够以稍高于50的正确率来区别人脸和非人脸。弱分类器包括特征、权重和两个阈值。对于每一个特征,为了使得最少的样本被误分类,弱分类器采用了上限阈值与下限阈值14。下限阈值上限阈值人脸图像特征值正如图52所示,所有人脸样本的特征值都关联于两个特定的阈值,上限阈值是这些样本特征值的最大值,下限阈值是这些样本特征值的最小值。一个能够鉴别人脸图像的弱分类器如果它计算人脸的特征值处于上限阈值JHX(BIG_THRESHOLD)与下限阈值(SMALL_THRESHOLD)之间,那它就是可以被训练成强分类器的最佳弱分类器。(51)OTHERWISTHRESOLDBGXFTRSLDSMALXHJJ,0_1本文采用上下限阈值的方法来选取弱分类器,与以往只选取一个阈值的方法不同,我们尝试用这种方法来提高检测率与降低虚警率。52ADABOOST算法训练强分类器ADABOOST算法通过重新赋予样本权重来增强学习过程。样本的权重代表了该样本被图52弱分类器中的阈值选取误分类的可能性。在重新赋予权重的过程中,被误分类的样本的权重将会变得比原先更大;如果样本被错误分类很多次,它的权重将会变得越来越大;我们就可以认为这一样本属于困难样本集。521算法描述ADABOOST训练强分类器的算法描述如下15,(算法流程图见下节)给定一系列训练样本,其中表示其为负样本(非人12,NXYXY0I脸),表示其为正样本(人脸)。为所有的训练样本数量。1IY初始化权重,在这里提供一种初始化权重的方法(对1,IWDDI12IM负样本)或(对正样本)。其中分别是负样本和正样本的数量,。2IL,MLLN,FORTT为弱分类器的最大编号1、归一化权重(52),1TITINTJJWQ这样可以使得呈现概率分布。,TIQ2、对每个特征,训练一个只关联于单个特征的弱分类器。计算对应所有特JFJH征的弱分类器的加权()错误率,TIF(53)FIJIIQHXY3、选取最佳的弱分类器(拥有最小错误率)JXT(54)MINTIJIIITIIQHYQHXY由此可得最佳弱分类器为。TX4、按照这个最佳弱分类器,调整权重(55)11,IETITIW其中表示被正确地分类,表示被错误地分类;0IEIXIIX1TT最后的强分类器为(56)1120TTTTTTHXCXOERWIS其中。1LOGTT522算法流程图开始给定一系列训练样本X1,Y1,X2,Y2XN,YN初始化权重FORT1,2,T获得强分类器结束归一化权重计算每个特征FJ的弱分类器HJ的加权错误率选择最小错误率的弱分类器HT调整权重NEXTT图53算法流程图53级联强分类器结构人脸检测问题是一个非对称的分类问题,背景中非人脸样本占大多数,且大部分可以用很简单的判别规则去掉,为此,可以采用如上图33所示的分类器级联结构。该结构将一系列单级强分类器级联起来,任何一个被判断为负面样本的窗口都会被马上舍弃,只有被所有分类器判断为正面样本的窗口,才会被当作目标保留。每个单级分类器在训练时有较高的检测率和中等的虚警率,将这些分类器级联起来后就可以达到极低的虚警率和较高的检测率。假设第级分类器的检测率为,虚警率为,级联的级数为K,KKHKF那么整个级联结构的分类器16的检测率和虚警率分别为(57)11KKKHFF例如,如果每级的检测率为0995,虚警率为05,级联结构的级数为20,那么整个级联分类器的检测率约为099,虚警率约为。60采用级联结构,有两个明显的好处首先是大大增加了样本分类的平均速度,由于在目标检测时大部分样本是较为简单的背景图片,可以通过十分简单的分类器在级联结构的前几级去掉,所以大大提高了估值的速度;其次是在每次训练新的单级分类器时,需要利用已经训练得到的分类器在背景图片上检测出的虚警图片来作为下一级的负面样本,这样使用的负面样本越来越多,并且它们之间具有相对的独立性,使得使用的负面样本空间也越来越大,从而提高了分类器的精度。级联结构的训练过程包括如下步骤输入正面样本,背景样本图片,分类器级数K循环如果,用所有正面样本作为正面样本,在背景图片上抽取指定数目的1K负面样本;如果,利用已经得到的级级联分类器通过“自举”的方法得到训练用1K的正面样本和负面样本。利用该级的训练样本,训练满足指定检测率和虚警率的分KHKF类器。输出K级级联分类器。级联分类器结构对于每级的分类器结构没有限制,可以采用SVM分类器,也可以采用ADABOOST分类器,只要每级分类器训练时满足预先指定的检测率与虚警率即可。在满足一定检测率前提下,ADABOOST算法可以通过增加弱分类器的方式,逐步降低虚警率,所以目前的实际系统一般采用ADABOOST算法来训练单级分类器。ADABOOST算法用来训练具有预定检测率和虚警率的单级分类器的步骤如下(1)输入训练样本,指定检测率和虚警率,弱分类器学习算法。HF(2)令初始分类器的检测率,虚警率。1CUR1CUR(3)当时执行CURFA利用ADABOOST算法增加一弱分类器,得到当前的强分类器(58)1SGNTTTFXFXBAB调节强分类器的阈值B,使得当前的强分类器在训练集正面样本上的检测率,估算当前分类器在训练集负面样本上的虚警率,如果,返CURHCURFCURF回。(4)输出满足指定条件的ADABOOST分类器。6基于OPENCV的程序实现61OPENCV简介OPENCV是INTEL资助的开源计算机视觉库17。它由一系列C函数和少量C类构成,实现了图像处理和计算机视觉方面的很多通用算法。OPENCV拥有包括300多个C/C函数的跨平台的中、高层API。它不依赖与其它的外部库,尽管也可以使用某些外部库。OPENCV对非商业应用和商业应用都是免费(FREE)的。另外OPENCV也为INTEL公司的INTEGRATEDPERFORMANCEPRIMITIVESIPP提供了透明接口。这意味着如果有为特定处理器优化了的IPP库,OPENCV将在运行时自动加载这些库。OPENCV的代码都经过优化,可用于实时处理图像,这是其在图像处理领域得到广泛应用的主要原因。它可以实现图像数据操作、图像/视频的输入输出、矩阵/向量数据操作及线性代数运算、基本的图像处理,以及支持多种动态数据结构。62训练样本集与测试集在这次的毕业设计中本人基于OPENCV编写的人脸检测应用程序共实现了两个功能,一是基于静态图片的人脸检测,二是基于动态视频的人脸检测。这两个功能都是基于一个人脸分类器实现,该人脸分类器的训练样本集来自于表21常用的人脸图像数据库中的MIT人脸样本集,该样本中有2706个大小的人脸,4381个大小的非人脸,2020该数据库将倾斜的人脸也当作非人脸。部分样本如图61和62所示。图61MIT部分人脸样本图62MIT部分非人脸样本本文使用的测试集是MITCMU测试集中的部分图像、日常生活图像以及日常摄像头采集的视频,由于时间与精力有限,无法做到对程序进行完备测试和实际应用测试。63基于OPENCV的分类器实现631样本描述文件创建在OPENCV20/DATA/HAARCASCADES文件夹下,已经有用ADABOOST算法训练好的基于HAAR特性的人脸检测分类器,HAAR

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论