




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、WORD版本WORD版本WORD版本.人脸识别系统的研究与实现毕业设计目录TOC o 1-5 h z HYPERLINK l bookmark0 第1章绪论1 HYPERLINK l bookmark2 1.1人脸识别的研究背景和意义1 HYPERLINK l bookmark4 1.1.1研究背景1 HYPERLINK l bookmark6 1.1.2研究意义2 HYPERLINK l bookmark8 1.2国外人脸识别技术研究现状2 HYPERLINK l bookmark10 1.3本文所做的主要工作及论文容安排31.3.1本文所做的主要工作3 HYPERLINK l bookma
2、rk12 1.3.2论文容安排4 HYPERLINK l bookmark14 第2章人脸识别技术的综述5 HYPERLINK l bookmark16 2.1人脸识别技术的基本原理5 HYPERLINK l bookmark18 2.2人脸识别技术包含的容5 HYPERLINK l bookmark20 2.2.1人脸检测5 HYPERLINK l bookmark22 2.2.2人脸识别72.2.3人脸图像的预处理82.2.4人脸跟踪定位11 HYPERLINK l bookmark24 2.2.5人脸特征提取12 HYPERLINK l bookmark26 2.3基于Adaboost算
3、法的人脸细检测13 HYPERLINK l bookmark28 Adaboost算法描述13 HYPERLINK l bookmark30 Haar特征与积分图15 HYPERLINK l bookmark32 2.3.3基于Haar特征的Adaboost算法描述16 HYPERLINK l bookmark38 2.4基于隐马尔可夫模型的人脸识别方法17隐马尔可夫模型介绍17 HYPERLINK l bookmark40 HMM的三个基本问题18 HYPERLINK l bookmark42 HMM人脸模型20隐马尔可夫模型训练21 HYPERLINK l bookmark46 2.5基于
4、嵌入式隐马尔可夫模型的人脸识别方法23嵌入式隐马尔可夫模型24 HYPERLINK l bookmark50 最佳状态链的确定25 HYPERLINK l bookmark52 2.5.3概率pG|九)的计算25 HYPERLINK l bookmark56 EHMM人脸识另U26 HYPERLINK l bookmark58 EHMM模型训练27 HYPERLINK l bookmark60 2.6人脸识另的技术难点与发展方向28 HYPERLINK l bookmark62 2.6.1技术难点28 HYPERLINK l bookmark64 2.6.2发展方向29 HYPERLINK l
5、 bookmark66 3章人脸识另系统的需求分析301可行性分析30 HYPERLINK l bookmark68 3.1.1技术可行性30 HYPERLINK l bookmark70 3.1.2操作可行性30 HYPERLINK l bookmark72 2需求分析31 HYPERLINK l bookmark74 3.2.1功能需求分析31 HYPERLINK l bookmark76 3.2.2算法需求分析31 HYPERLINK l bookmark78 第4章系统的方案设计和实现331结构设计334.1.1人脸实时检测跟踪系统334.1.2人脸识另系统344.2功能设计34人脸实
6、时检测跟踪系统设计34人脸识另系统设计36 HYPERLINK l bookmark80 4.3人脸实时跟踪系统功能的实现37 HYPERLINK l bookmark82 VS2010与0penCV库简介37 HYPERLINK l bookmark84 OpenCV环境配置38 HYPERLINK l bookmark86 4.3.30penCV中用于图像处理的函数38 HYPERLINK l bookmark88 4.3.4基于OpenCV的目标检测算法394.3.5人脸检测跟踪的核心算法40 HYPERLINK l bookmark90 4人脸识别系统功能实现41人脸数据库简介41 H
7、YPERLINK l bookmark92 系统框架42具体的实验函数分析44 HYPERLINK l bookmark94 第5章系统的测试与分析46 HYPERLINK l bookmark96 1人脸实时检测跟踪系统46 HYPERLINK l bookmark98 系统测试46 HYPERLINK l bookmark100 结果分析47 HYPERLINK l bookmark102 2人脸识别系统47 HYPERLINK l bookmark104 系统测试47 HYPERLINK l bookmark106 结果分析51 HYPERLINK l bookmark108 第6章总结
8、与展望521总结526.2展望53 HYPERLINK l bookmark110 参考文献54 HYPERLINK l bookmark112 附录56 HYPERLINK l bookmark114 附录A人脸实时检测跟踪算法程序。56 HYPERLINK l bookmark116 附录B人脸识别算法程序。60附录B1人员管理窗口程序60附录B2参数设置窗口程序68附录B3人脸识别窗口程序74附录B4类行为管理程序82附录B5人脸识别主程序84 HYPERLINK l bookmark118 致谢106第1章绪论人脸识别的研究背景和意义1.1.1研究背景早在古埃及时人们就开始通过人体生物
9、特征的测量(如人脸、人手等)来鉴别人的身份,在刑侦领域,人们也早已使用最有效的人体生物特征之一,指纹,来确定罪犯。随着计算机技术的出现,人们开始凭借计算机的强大功能来研究和实现自动的身份鉴别系统。近年来,在美国、欧洲、香港等许多国家和地区的大学都成立了以人体生物识别技术为主要研究方向的实验室或研究中心,同时许多公司也相继先后开发出许多产品,并不断地推向市场,逐步形成一个新兴的、很有希望的产业。在我国,已经涌现出很多专门机构广泛开展人体生物识别技术方面的研究工作,有许多研究人员投身到这一新兴研究领域,开展用于身份鉴别的人脸识别、话者识别、联机签名识别、指纹识别等多项研究工作,并取得了一定的成果。
10、目前,用于个人身份鉴别主要依靠ID卡(如身份证、工作证、储蓄卡等)、密码(如进入计算机系统、取款)等手段,而这些手段存在携带不便、密码被窃等诸多问题。例如,信用卡问题:美国每年的信用卡欺诈损失超过数百万美金;在失业救济、健康保险、福利发放等领域,由于冒别人之名而损失极大;使用伪造证件非法移民等。人们希望有一种更加方便可靠的办法来进行身份鉴别,生物特征识别技术给这一愿望带来了实现的可能,人们可能会遗忘或丢失他们的卡片或密码,但绝对不会遗忘或者丢失自己的生物特征,如人脸、指纹、虹膜、掌纹等。因此,基于生物特征识别技术的个人身份识别系统具有更好的安全性、可靠性和有效性,正越来越受到人们的重视,并开始
11、进入我们社会生活的各个领域,迎接新时代的挑战。虽然与指纹识别技术、虹膜识别技术等相比,人脸识别技术更容易受到各种因素的干扰,比如光照、装扮或者是人的表情等,但是人脸识别技术的发展空间和发展前景依然是非常巨大的。可以从以下的三个方面了解人脸识别技术的优势所在:(1)无侵犯性所谓无侵犯性是指在使用人脸识别技术进行识别的过程当中,不需要被识别者的主动参与、积极配合,从而避免了被识别者产生反感、拒绝等逆反心理,使得识别过程可以有效、迅速的执行。(2)自然性好人脸识别技术具有良好的自然性。在这里,自然性是指我们使用的人脸识别技术是否WORD版本.WORD版本WORD版本与人类用来互相识别区分的方法相似。
12、在日常生活当中,识别一个人最简单最直接的方法就是识别他的脸部。(3)性价比高人脸识别技术所需求的硬件设备,相对于其他生物特征识别技术如指纹识别技术较为简单,不需要其他特殊的外接设备,只需要采用高分辨率摄像头即可。1.1.2研究意义人脸识别技术的研究无论在理论上还是在实践中都有很大的意义,它涵盖了数字图像处理、神经网络、心理学、生理学、模式识别、计算机视觉以及人工智能等各方面的知识容,对推动各个学科领域的发展具有重要的理论意义。在公安、金融、网络安全、物业管理以及考勤等各种领域也都有着巨大的应用价值。如人脸识别技术可以快速地计算出实时采集到脸部数据与人脸图像数据库中已知人员的脸部数据之间的相似度
13、,返回鉴别结果和相对应的可信度。如应用面像捕捉,人脸识别技术可以在监控围中跟踪一个人并确定他的位置。如在商场、银行、交易所等和金融相关场所,加以人脸识别智能监控,排除不法分子的侵入。利用人脸识别技术,可以进行计算机的登录控制,可以进行应用程序安全使用、数据库安全访问和文件加密,可以实现局域网和广域网的安全控制,可以保护电子商务的安全性。如门禁控制,通过摄像机动态捕获人脸,将人脸信息同数据库中的人脸信息进行检索对比,只有图像信息符合的人才可以进入,否则拒绝进入。在日常生活中,人们识别周围的人用的最多的是人脸。由于人脸识别的非侵犯性,具有直接、友好、方便的特点,是人们最容易接受的身份鉴别方式。国外
14、人脸识别技术研究现状模式识别技术5早在上个世纪60年代就已经有人提出,由于当时计算机处理速度的限制,只能从理论上证明是可行的。20世纪90年代以来,随着高速度高性能计算机的出现,人脸识别方法有了重大突破,进入了真正的机器自动识别阶段,人脸识别研究也得到了前所未有的重视。欧美等各高校都建立了人脸识别的实验室,其中著名的大学包括麻省理工学院(MIT)、卡基梅隆大学(CMU)等。在美国主要有麻神理工学院等研究实验室提出的特征人脸对特征空间的投影来实现;在法国已经把人脸识别身份认证技术应用到自助取款机上,在实际使用时需要用一台3D摄像机,采集人的立体影像来鉴定身份。目前,美国许多研究小组相继投入到人脸
15、识别方面的研究工作,他们的研究工作得到了美国军方、警方和大公司的资助,进展迅速。美国军方更是在每年组织人脸识别大赛(FERT),以促进人脸识别的研究。日本sony公司最新推出的数码相机已经整合了人脸自动识别功能,在拍照时,可以自动检测出人脸区域并进行对焦,并且还具有识别笑脸的功能,能够自动检测出笑脸。2007年3月,美国NIST报告了2006年人脸识别供应商评测(FRVT2006)结果,对控制光照条件下的极高分辨率正面人脸图像,最小错误接受率为0.001时,最小错误拒绝率已达到0.01,对高分辨率、低分辨率下的正面人脸图像的识别,这个数据也分别达到了0.与0.。在一定条件,有些技术甚至超过了人
16、类的人脸识别力。国对于人脸识别的研究较之国外稍晚一些,但是发展速度很快,同时,国家对人脸识别技术的研究也给予了高度的重视。九十年代中后期以来,国众多研究机构的研究组在国家自然科学基金、863计划等资助下开始对人脸识别进行了研究。其中,具有代表性的人脸识别系统有:清华大学电子系丁晓青教授研究小组开发的THfacelD系统;中国科技大电子科学与技术系庄镇泉教授研究小组开发的人脸识别考勤系统(KD-Face2.0);中科院计算所高文研究组开发的GodEye系统;清华大学电子系苏光大教授研究小组开发的大型人脸综合识别系统;中科院自动化所子青研究小组开发的人脸识别系统等。2008年,在北京奥运会及残奥会
17、开闭幕式,使用了由CBSR研制的人脸识别技术进行实名制门票查验。在奥运会及残奥会开闭幕式中,约36万人次经过了人脸识别系统的验证后进入开闭幕式现场。为奥运会的安保工作做出了巨大的贡献,该技术拥有完全独立自主的知识产权,人脸识别系统的性能优良,在国际上亦处于领先地位。2011年1月,由政府资助开发出了新型的人脸识别自动售货机,该机器可以应用在某些特殊商品的销售领域中,如保健产品、面膜、剃须刀等,该人脸识别自动售货机可以根据消费者面部的特征向其推荐特定的商品。同时,人脸识别技术也可以帮助解决很多社会问题,比如,目前的解救乞讨儿童的公益活动。其中,以中科院自动化所免费提供人脸识别相关的技术支持,并与
18、多个网络平台合作尽快的付诸于实践。本文所做的主要工作及论文容安排1.3.1本文所做的主要工作本文针对实时视频的人脸检测跟踪与静态图像的人脸识别展开研究,介绍了一种开放源代码的计算机视觉类库OpenCV,阐述了该软件的特点及结构,并对其在VS2010开发环境下的配置作了详细的说明,然后提出了一个基于OpenCV的人脸检测算法血和基于隐马尔可夫模型的人脸识别方法24。对人脸识别技术做了详细综述,着重讨论了人脸识别过程中的几个关键性问题,如图像预处理、识别和检测算法等。在分析和借鉴了国外人脸识别领域研究成果的基础上,结合实际应用的目的,对人脸识别关键技术进行了深入研究,主要工作包含以下几个方面:(1
19、)介绍了基于人脸识别的研究背景和意义,总结了现有的人脸识别的方法,分析比较了它们的特点以及存在的问题。(2)对人脸检测和识别过程中的静态图像预处理技术和特征提取技术展开讨论,重点分析了图像的灰度变换、直方图均衡化、边缘检测等问题。(3)对国外人脸检测的Adaboost算法和人脸识别的隐马尔可夫算法的研究进行了跟踪,提出了一种基于Adaboost的人脸检测算法,和一种基于嵌入式隐马尔可夫模型的人脸识别算法,并对算法进行的实验测试进行分析,实验结果表明文章中提出的算法具有较好的人脸检测和识别的准确率。(4)从应用的角度出发,结合前面两章的研究成果,设计并实现了一个人脸检测跟踪系统和一个静态人脸图像
20、识别的人脸识别系统。基本思想是:利用文章中提出的的Adaboost算法先检测出候选的人脸区域,再根据特定的算法提取出面部的人脸特征,确定并标示出人脸的位置;另外利用嵌入式隐马尔可夫模型算法开发了一个人脸识别系统进行人脸识别。文章进行了大量的实验测试,并对测试结果进行了分析。论文容安排针对研究容,本文的结构安排如下:第一章为绪论,介绍了人脸识别技术研究的背景及意义和国外的研究现状。第二章为人脸识别技术的综述,分析了人脸识别的基本原理和方法,重点讨论了人脸识别中的关键算法,指出了现在人脸识别技术的研究难点。第三章为人脸识别系统的需求分析,分析了算法需求和功能需求,为系统的方案设计做好准备。第四章为
21、人脸识别系统的方案设计和实现,给出了系统的总体设计方案和各个功能模块的设计,详细阐述了整个系统和各个模块的实现过程。第五章为人脸识别系统的系统测试,阐述了系统的功能测试和测试结果。第六章为总结与展望,阐述了自己论文的主要成果和仍需要做的改进。第2章人脸识别技术的综述人体生物特征识别技术是依靠人体的生物特征来进行人的身份验证的一种高科技识别技术。而人脸识别技术具有比其他生物特征识别技术更直观、简便、准确、可靠及可扩展性良好等众多优势,因而应用广泛。人脸识别技术的基本原理人脸识别技术是基于人的脸部特征,对输入的人脸图象或者视频流,首先判断其是否存在人脸,如果存在人脸,则进一步给出每个脸的位置、大小
22、和各个主要面部器官的位置信息。并依据这些信息,进一步提取每个人脸中所蕴涵的身份特征,并将其与已知的人脸进行对比,从而识别每个人脸的身份。广义的人脸识别实际包括构建人脸识别系统的一系列相关技术,包括人脸图像采集、人脸定位、人脸识别预处理、身份确认以及身份查找等;而狭义的人脸识别特指通过人脸进行身份确认或者身份查找的技术或系统。人脸识别技术包含的容2.2.1人脸检测人脸检测是指在动态的场景与复杂的背景10中判断是否存在面像,并分离出这种面像。下面是几个主要的人脸检测方法:(1)基于知识的方法:这种方法是基于规则的人脸检测方法,规则来源于研究者关于人脸的先验知识,将典型的人脸形成规则库对人脸进行编码
23、,通过面部特征之间的关系进行人脸定位。一般比较容易提出简单的规则来描述人脸特征和它们的相互关系,如在一幅图像中出现的人脸,通常具有互相对称的两只眼睛、一个鼻子和一嘴。特征之间的相互关系可以通过它们的相对距离和位置来描述,在输入图像中首先提取面部特征,确定基于编码规则的人脸候选区域。基于知识的方法存在的问题是很难将人类知识转换为明确定义的规则。如果规则太详细(严格),由于不能通过所有的规则可能使得检测失败;如果规则太概括(通用),可能会有较高的错误接收率。此外,很难将这种方法扩展到在不同的位姿下检测人脸,因为列举所有的情况是一项很困难的工作。(2)基于特征不变性的方法:在姿态、视角或光照条件改变
24、的情况下找到存在的结构特征,然后使用这些特征确定人脸。这类方法主要有采用人脸特征检测、基于皮肤颜色纹理特征检测以及基于多个特征综合检测。不仅可以从已有的面部特征而且可以从它们的几何关系进行人脸检测。与基于知识的方法相反,它是寻找人脸的不变特征用于人脸检测。人们已经提出了许多先检测人脸面部特征,后推断人脸是否存在的方法。一般利用边缘检测器提取面部特征(如眉毛、眼睛、鼻子、嘴和发际等),根据提取的特征,建立统计模型描述特征之间的关系并确定存在的人脸。这类方法的缺点在于这些特征会由于照明、噪声以及遮挡情况被破坏,人脸的特征边界会被弱化,在这种情况下很多方法都会失效;同时由人脸阴影所形成的边缘可能对几
25、何特征的边缘带来不良影响。(3)基于模版匹配的方法:这类方法首先人工定义或者参数化的建立一个函数来描述标准人脸模式(通常是正面人脸),然后根据输入的人脸和定义的标准人脸的相关性来进行检测。但是实际上,我们的人脸模式变化太大,人脸模板的构建是相当难的,如果是固定的模板,很难做出准确的判断。也有人提出了带参变量的曲线函数,即变形模板。变形模板可以根据人脸模式的变化自适应地调节匹配模板,提高了模板的适应性和检测精度。最近提出了多分辨率模版、多比例模版、子模版等方法来适应比例及形状的变化。基于模板的方法较为直观,但是固定模板对位姿、表情和尺度变化敏感;可变形模板虽然对非刚性模式具有较好的适应性,但是可
26、变形模板的选择和参数的确定困难,受人脸各种因素的影响比较大,尤其是在图像背景比较复杂的情况下,模板匹配鲁棒性差,如果待测图像中有多个人脸的话,要实现图像中多个人脸的检测特别困难。(4)基于外观的方法:这类方法主要依赖于统计分析和机器学习理论,对应于模版匹配的预先定义模版的方法,通过从样本图像学习中获得“模版”进行人脸检测。通过将人脸图像视为一个高维向量,从而将人脸检测问题转化为高维空间中分布信号的检测问题。通常,基于外观的方法依靠统计分析和机器学习技术找到相应的人脸和非人脸图像的特征。学习的特征由分布模型或判别函数形成,同时,由于计算效率和检测有效性的原因通常需要降维。该类方法主要有,特征脸(
27、Eigenfaces)方法:将KL变换21引入了人脸检测,在人脸识别中采用的是主元子空间(特征脸),而人脸检测利用是次元子空间(特征脸空间的补空间),用待检测区域在次元子空间上的投影能量,也即待检测区域到特征脸子空间的距离作为检测统计量,距离越小,表明越象人脸。神经网络方法:人脸检测可以看作是只有人脸样本和非人脸样本两个分类的模式识别问题,通过对人脸样本集和非人脸样本集进行学习可以产生分类器。由于人脸模式的多样性和图像获取过程的不确定性,人脸在图像空间中分布非常复杂,建立人脸在高维图像空间的精确分布模型是一件非常困难是工作。建立一个统计可靠的估计不仅需要大量的正例样本,而且还需要充分多的有效反
28、例样本。2.2.2人脸识别人脸识别的主要任务不仅包括从照片和图像序列中识别某个人脸图像,而且还涉及到对面孔图像的分析或合成。主要有以下几种方法:(1)基于面部特征20的方法:将人脸用一个几何特征矢量表示,进而用模式识别中的层次聚类思想设计分类器对人脸进行识别。具体的实现过程如下:首先检测出面部的明显特征点(通常为眼睛、鼻子、嘴等部位):然后测量出这些面部特征点之间的距离,并把这些距离作为几何特征矢量(眼睛、鼻子、嘴的位置和宽度,眉毛的厚度和弯曲程度等都可以作为我们描述一人脸的几何特征矢量);最后将待测图像和训练好的人脸库的几何特征矢量进行比较,就可以判断是否为人脸,如果是人脸,可以找出与已知人
29、脸库的最佳匹配人脸。这种方法存在的问题有:检测率不高,会受到很多外界条件的影响,尤其对强烈的表情变化不敏感,稳定性较差,如果背景区域中存在类人脸区域,则必然导致误检。(2)基于统计特征脸(PCA)19的方法:该方法是基于KL变换的人脸识别方法,KL变换是图像压缩的一种最优正交变换。高维的图像空间经过KL变换后得到一组新的正交基,保留其中重要的正交基,由这些基可以成低维线性空间。如果假设人脸在这些低维线性空间的投影具有可分性,就可以将这些投影用作识别的特征矢量,这就是特征脸方法的基本思想。这些方法需要较多的训练样本,而且完全是基于图像灰度的统计特性的。(3)基于模板匹配的方法:静态模板匹配直接对
30、两幅图像进行比较,其中一幅作为模板,而另一幅是被识别图像。通过计算得出两幅图像的特征值,从而比较两幅图像的相似程度。在模板匹配方法当中,即可以把整脸当作一个模板,也可以把人脸分成几个相互独立的小模板,每个小模板可包含眼部、嘴部、眼眉、鼻子、额头、脸颊等部位。弹性模板匹配是根据待检测人脸特征的先验的形状信息(通常利用小波特征)定义一个参数描述的形状模型,该模型的参数反映了对应特征形状的可变部分,如位置、大小、角度等,它们最终通过模型与图像的边缘、峰、谷和灰度分布特性的动态交互适应来得以修正。由于模板变形利用了特征区域的全局信息,因此可以较好地检测出相应的特征形状。(4)基于隐马尔科夫模型的方法:
31、隐马尔科夫模型(HMM)是用于描述信号统计特性的统计模型。基于人脸从上到下、从左到右的结构特征,Samaria等首先采用1-DHMM和2-DPseudoHMM用于人脸识别。基于I-DHMM,Kohir等采用低频DCT系数作为观察矢量获得了较好的识别效果。Eickeler等采用2-DPseudoHMM识别DCT压缩的JPEG图像中的人脸图像。WORD版本.WORD版本WORD版本(5)基于神经网络的方法:人工神经网络方法同人类神经功能一样具有记忆功能,对于一个模式的训练样本比较丰富时,利用神经网络人脸检测方法可以应用到处理比较复杂的检测。神经网络的输入可以是降低分辨率的人脸图像、局部区域的自相关
32、函数、局部纹理的二阶矩等。神经网络方法在人脸识别上比其他类型的方法有其独到的优势,它避免了复杂的特征提取工作,可以通过学习的过程获得其他方法难以实现的关于人脸识别的规律和规则的隐性表达。(6)基于支持向量机的方法:支持向量机(SVM)主要解决的是一个2分类问题,它的思想是试图把一个低维的线性不可分的问题转化成一个高维的线性可分的问题。在解决小样本、非线性及高维模式识别问题中表现出许多特有的优势。通常的实验结果表明SVM有较好的识别率,但是它需要大量的训练样本(每类300个),这在实际应用中往往是不现实的。而且支持向量机训练时间长,方法实现复杂,函数的取法没有统一的理论。2.2.3人脸图像的预处
33、理通常情况下,我们在采集图像时,由于成像设备、光照条件、被检测的人脸状态等诸多因素的影响,另外还有噪声的存在,使得我们得到的初始图像效果是很差的,对特征的提取是不利的。因此,对初始图像进行相应的预处理是很必要的。人脸图像预处理的主要目的是消除与人脸图像无关的信息,滤除干扰、噪声、恢复真实有用的信息,最大程度地增强有关信息和简化数据,从而给后续的特征抽取、图像分割、匹配和识别创造条件,给系统的稳定作保障。本文所研究的图像预处理主要包括图像增强与平滑、图像分割两个方面,具体包括:灰度化、图像二值化、边缘检测、尺度归一化和直方图均衡化等。(1)图像灰度变换为了使实验拥有比较好的效果,尤其是更加满足实
34、际应用的要求,文章对采集到的图像,首先要进行灰度变化,然后才能方便于后续的处理,适用于Adaboost人脸检测算法。灰度变换18是图像增强的一种重要手段,属于空域处理法。它可以使图像动态围加大,使图像的对比度扩展,图像更加清晰,特征更加明显。这些特征都更加有利于人脸特征的提取与识别。灰度变换的实质就是按一定的规则修改图像的每一个像素的灰度,从而改变图像灰度的动态围,灰度变换按照其变换的方法可以分为:线性、分段线性、非线性以及其他的灰度变换。通常实验中采集到的人脸图像是彩色图像。彩色图像中的像素点是由R(红色)、G(绿色)、B(蓝色)三种颜色混合而成的,不同含量的RGB混合组成不同的颜色。而灰度
35、图像是只含有亮度信息,不含有色彩信息,而且是亮度是连续变化的,灰度图像的表示是把图像的亮度值进行量化来表示的。灰度图像通常划分为0255共256个级别,0表示全黑(最暗),255表示全白(最亮)。在人脸识别中,利用彩色图像,往往会受到复杂背景(尤其是肤色)16的影响,存在很多缺陷;而灰度图像则比较容易处理,不存在复杂背景的问题,而且很多经典的人脸检测和识别的算法都是采用灰度图像来进行的,像本文会采用的Adaboost人脸检测算法。所以,本文首先对采集的人脸彩色图像进行灰度化。彩色图像中像素点RGB分量是不相等的,而灰度像素点的RGB分量是相等的。也就是说(0,0,0)是全黑色,而(255,25
36、5,255)是全白色,中间的即为灰色。灰度化就是使彩色分量相等的过程。彩色图像和灰度图像间的RGB分量之间的对应关系为_R0.2990.5780.114RG=0.2990.5780.114GBgray0.2990.5780.114Bcolor2.1)也就是说,根据这公式,我们可以将一幅彩色图像变换为灰度图像。直方图均衡化直方图均衡化又称为灰度均衡化18,是通过某种灰度映射使输入图像转化为在每一灰度级上都有近似相同像素点数的输出图像,使之演变成一幅具有均匀灰度概率分布的新图像。在经过均衡化处理的图像中,像素占有尽可能多的灰度级并且分布均匀。其结果是扩展了像素取值的动态围,从而达到了增强图像整体对
37、比度的效果,从而部分地消除光照对灰度图像影响。直方图是一种点操作,它逐点改变图像的灰度值,尽量使各个灰度级别都具有相同数量的像素点,使直方图趋于平衡。若考虑图像的灰度围为b,1且连续。按照图像的概率密度函数(PDF,归一化带单位面积的直方图)的定义:P(x)=1/A0*H(x)(2.2)其中H(x)为直方图,A0为图像的面积,设转换前图像的概率密度函数为Pr(r),转换后图像的概率密度函数为Ps(S),转换函数为s=f(r),由概率论的知识,我们可以得到:drPs(S)=Pr(r)*-ds(2.3)如果想使转换后图像的概率密度函数为1(即直方图是平的),则必须满足:dsPr(r)=字(2.4)
38、dr等式两边积分得:S二f(r)二JrP(u)du二1/AOrH(u)du(2.5)020该转换式被称为图像的累积分布函数。上面的公式是被归一化后推导的,对于没有归一化的情况,只要求以最大的灰度值(Dmax,对于灰度图就是255)即可,灰度均衡的转换式为:WORD版本D=f(D)=Dmax/Ao*H(u)duBA(2.6)对于离散图像转换式为:D二f(D)二Dma处AO*AHBAii=0式中H为第i级灰度的像素个数。i尺度归一化处理假设样本图像为F(x,y)MxN,图像的宽度和高度分别为M和N,大小归一化后为G(x,y)WxH,实验中人脸样本取W=92,H=112;使用反向投影和线性插值从原始
39、图像得到归一化后的样本图像,则输入图像与归一化后图像之间的对应关系有:G(x,y)=F(x/r,y/r)xy2.8)其中r和r分别是x和y方向的尺度变换因子:r=N/H,r=M/W;由于xyxyx/r、y/r的取值一般不为整数,故需要根据附近已知离散点处的值来估计F(x/rx,y/r)xyxy的取值,这里采用线性插值法;对于给定(x,y),令:x/r=x/r,x/r-xTOC o 1-5 h zxxx0y/r=y/r,y/r-yyyy02.9)G(x,y)=F(xo+心,yo+Ay)=F(xo,儿)3+F(xo+1,yo)d-Z2.10)可以得到公式:+F(x,y+1)Ax(1-A)+F(x+
40、1,y+1)(1-Ax)(1-Ay)ooyoo(4)边缘检测图像边缘是图像最基本的特征,边缘在图像分析中起着非常重要的作用。所谓边缘是指图像局部特征的不连续性,比如:灰度级的突变、颜色的突变和纹理结构的突变等。边缘广泛存在于目标与目标、物体与背景、区域与区域(包含不同色彩)中之间,它是图像分割所依赖的重要特征。本文中主要讨论Canny算法,Canny边缘检测算法20是由Canny提出的,是一种多尺度边缘检测算子。它是高斯函数的一阶导数,是对信噪比与定位之乘积的最优化逼近算子。其基本思想是先将图像使用高斯函数进行平滑,然后计算平滑后图像的梯度,梯度最大的位置就是物体的边缘,然后利用非最大值抑制来
41、处理梯度图像,以细化边缘,最后再利用滞后算法对图像进行阈值化处理,以检测并连接图像的边缘。该算法的主要实现步骤WORD版本.如下:1)用二维高斯滤波模板进行卷积运算,以消除噪声;dx二I(x+1,y)2)利用2x2领域一阶偏导的差分来计算滤波后的数据阵列I(x,y)的梯度幅值大小和方向。其中,x方向和y方向的偏导数分别为:2.11)2.12)2.13)dy二I(x,y+1)-I(x,y-1)/2则梯度的幅值大小为:D二r根据Harr特征位置参数求出各弱分类器阀值参数记录当前最优弱分类器及其迭代权重T个强分类器图2.3Adaboost算法训练示意图Adaboost算法22训练过程就是挑选最优弱分
42、类器,并赋予权重的过程。Adaboost算法训练示意图如图2.3所示。基于隐马尔可夫模型的人脸识别方法一种人脸识别方法的效果如何,取决于它在多大程度上利用了图像的原始信息。我们在看一个人的时候,可以明显地观察到他面部的各个器官和脸庞。无疑地,我们可以利用一组数值特征来描述各个器官包括脸庞,并且利用这种数值特征来对人脸进行识别。但是模式识别研究的经验表明,简单地利用一组数值特征不能满意地解决人脸识别问题。另一方面,视觉识别人脸的机制是十分微妙的,人们对此的认识还非常肤浅。我们理解,人脸应当作为一个整体来描述,不仅仅包括各个器官的数值特征,还应当包括各个器官的不同表象和相互关联。然而,怎样描述不同
43、表象和相互关联又成了问题。隐马尔可夫模型(HMM)提供了描述复杂现象的一种可能机制。按照这种模型,观测到的一列特征(例如描述各个器官和脸庞的一组数值特征)被看成是另一组不可观测的(因此是隐的)“状态”产生出的一列实现。状态既然是不可观测的,它的个数是未知的,但可以假定。选择状态个数的多少必须在模型的复杂性和描述复杂现象准确度之间进行折衷。在隐马尔可夫模型中包含了产生观测的两层概率。一层是选择状态的概率。假定有N个状态,从当前的状态出发选择下一个状态也有N个可能性。于是,状态选择概率必须用一个NxN的状态转移矩阵来描述。另一层是每个状态产生出一种实现的概率。如果实现只在一个离散集合中取值,产生实
44、现的概率就可用概率分布来描述。如果实现取连续值,产生实现的概率就应该用概率密度函数来描述。一个合理的或好的隐马尔可夫模型应该是这样的:给定一组观测序列,从关于状态的适当的一组初始分布出发,能够产生出一组实现序列,它非常好地逼近给定的观测序列。利用隐马尔可夫模型对人脸进行描述和识别,我们就不是孤立地利用各个器官的数值特征,而是把这些特征和一个状态转移模型联系起来。2.4.1隐马尔可夫模型介绍隐马尔可夫模型21是一种用参数表示的,用于描述随机过程统计特性的概率模型。隐马尔可夫过程是一个双重的随机过程:一个潜在的过程称为“状态”,另一个可观测过程称为“观察序列”,观察序列是由隐含的状态过程决定的。我
45、们以一阶离散马尔可夫过程为例,介绍隐马尔可夫模型的组成。(1)N,隐含状态数。S表示隐含状态,则S=,S。时亥“t时,模型的状12N态用qt表示,1tT,其中T表示观察序列的长度(帧数)。V二V,v,.,v12(3)A2)M,是不同观察符号的总数。如果V是所有的观察符号集,则有。“。约束条件为:M,状态转移概率分布或转移矩阵,A二0a1,ija二1其中a二Pq二S|qijijttt+1j=1(4)B,观察概率矩阵或称为发射矩阵B=(),其中1jN,1kM,b(k)=Pjj=v|q=S,其中O是在时刻t的观测符号。tktjt(5)口初始状态分布口=.其中兀=pL=S,1iN。使用简iitj写的记
46、法HMM可表示为下面的三参数形式九=C,B,口)。对于离散HMM,观察是有限符号集中的一个离散符号;对于连续HMM,观察只能用一个概率密度函数来刻画。最常用的概率密度函数模型是一个混合高斯概率密度函2.18)bC)=丈CbC)jjmjmm=1上式中的M表示混合高斯概率密度函数混合的数目,有别于离散型HMM中的观察符号总数“M”。其中混合系数满足:SC=1jmm=12.19)气C)为第j状态第m个分量的单高斯概率密度函数。2.4.2HMM的三个基本问题建立一个HMM模型后,主要存在以及需要解决三个方面的问题:(1)估值问题。对于给定的隐马尔可夫模型参数九=C,B,口),求观察值序列,0,.,0)
47、产生概率的模型相似度pG|九)设产生0的隐状态序列12T,X)则由矩阵A,B的定义有:12TpC|九)=工pC,X=工pCIxl九|=SkbG).a1XX兀bXX11X|九)九)b(0)fT-1XTT2.20)在实践中,通常采用向前算法(也称s-pass算法),其定义如下:)=P6,0,.,0,x=q|九)i12tti(2.21)则有:aC)=兀bG)i=0,1,.,N1oiio(2.22)a(l)=b6Pa(l丄tittijj=0(2.23)其中,t=1,2,.,T1,i=0,1,.,N-1。可得到:P(O|九)二aG)T(2.24)i=0(2)解码问题。对于给定的隐马尔可夫模型参数九=Ca
48、,b,口),和观察值序列o=G,o),在最佳的意义上确定一个状态序列s=C,q,.,口丁)。12T12T求解最优的隐状态序列通常使用动态编程的方法。该方法不仅考虑到了局部的最优解,而且考虑到了前后两个状态可达到的制约关系,这种基于可达路径的最优算法中最著名的是ViterbiAlgorithm,它的定义如下:d(1)=兀bG),i二0,1,.,N-10ii02.25)8C)=tmax8tab-1iji2.26)其中,t=1,2,.,T-1,i=0,1,.,N1。路径跟踪:argmaxj2.27)输出最优解:=argmaxi(2.28)i),t=T一2,T一1,.,0t-1tt2.29)(3)训练
49、问题。对于给定的一个观察值序列0二G,。?,.,0丿,确定一个隐马尔可夫模型九二G,B,口),使pG|Q最大。解决这个问题,通常采用向前一向后算法(或称为Baum-Welch算法),但该算法只是能够得到一个近似满意的结果。向前向后算法是广义期望最大化算法的一种具体实现,它的核心是通过递归的方式调整权重,已得到更好的模型参。这三个问题是隐马尔可夫模型中最重要的三个问题,这三个问题的解决方法是把隐马尔可夫模型应用到实际中去的基础。2.4.3HMM人脸模型人脸图像受到不同因素的影响而表现出的不同外观,这些都可以表示为HMM中的一组状态序列产生的一系列实现,可以用模型中的概率矩阵15来描述,如图2.4
50、所示。讪獭抽佛鼻子嘴巴卜巴alla22a33a44a55图2.4人脸的HMM模型F.Samaria的HMM人脸模型采用如下一种思想:由于人脸的空间结构具有稳定的共性,如自上到下可以直观的分割成前额、眼睛、鼻子、嘴巴和下巴五个部分。即使头部有一些倾斜或偏转,它们自上到下的次序也是保持不变的,我们可以将这五个显著地人脸特征区域成为5种状态。由于再求状态的初始参数时,我们也是按这种方法进行划分的。因此,由这5个状态产生的序列是我们真正观察的序列,而且,这五个状态是抽象的,因而也就不具有具体的意义,我们只能通过观察序列来对它进行估计。本文中采用的特征抽取方法0如图2.5所示,人脸图像的宽度为W、高度为
51、H,我们用宽度为W,高度为L的采样窗对图像在垂直方向上从上至下进行采样,被分成了五个WxL图像区域部分,连续的两个采样窗之间存在P行的交叠。采样数也就是序列的长度T可以通过下式计算出:T=H_i+1L-p2.30)参数L和P的选择在很大程度上影响着识别率。一般情况下,重叠部分越大,识别率也越高,因为这样可以得到更长的观察序列。根据Samaria和Nefian的经验,在P足够大的情况下(PimageData,false,true);if(frame)/检测并且标识人脸detect_and_draw(frame);charc=cvWaitKey(1);if(c=27)break;/按ESC退出cv
52、NamedWindow(Video,CV_WINDOW_AUTOSIZE);cvShowImage(Video,frame);/创建了一个名为video的窗口显示图像(2)图像预处理模块图像预处理4就是对获取得来的图像进行适当的处理,使它具有的特征能够在图像中明显的表现出來,本文主要使用OpenCV库函数3对捕捉到的图像进行了缩放、灰度化、直方图均衡化等预处理。下面为使用到的图像处理函数代码:cvCvtColor(img,gray,CV_BGR2GRAY);/把输入的彩色图像转化为灰度图像cvResize(gray,small_img,CV_INTER_LINEAR);/图像大小变换cvEqu
53、alizeHist(small_img,small_img);/灰度图象直方图均衡化(3)人脸检测模块OpenCV的人脸检测主要是调用训练好的cascade(Haar分类器)来进行模式匹配。先使用检测图像中目标的函数cvHaarDetectObjects,将图像灰度化,根据传入参数判断是否进行canny边缘处理(默认不使用),再进行匹配。匹配后收集找出的匹配块,过滤噪声,计算相邻个数如果超过了规定值(传入的min_neighbors)就当成输出结果,否则删去。匹配循环:将匹配分类器放大scale(传入值)倍,同时原图缩小scale倍,进行匹配,直到匹配分类器的大小大于原图,则返回匹配结果。匹配
54、的时候调用cvRunHaarClassifierCascade来进行匹配,将所有结果存入CvSeq*Seq(可动态增长元素序列),将结果传给cvHaarDetectObjects。cvRunHaarClassifierCascade函数整体是根据传入的图像和cascade来进行匹配。并且可以根据传入的cascade类型不同(树型、stump(不完整的树)或其他的),进行不同的匹配方式。函数cvRunHaarClassifierCascade用于对单幅图片的检测。在函数调用前首先利用cvSetlmagesForHaarClassifierCascade设定积分图和合适的比例系数(窗口尺寸)。当分
55、析的矩形框全部通过级联分类器每一层的时返回正值则这是一个候选目标,否则返回0或负值。(4)人脸定位模块函数cvHaarDetectObjects使用指针对某目标物体(如人脸)训练的级联分类器在图象中找到包含目标物体13的矩形区域,据此我们可以画出圆形标出人脸所在位置12。具体代码如下:for(i=0;itotal:0);i+)/总共有faces-total个人脸,把他们圈出来CvRect*r=(CvRect*)cvGetSeqElem(faces,i);/返回每个人脸对应的链表节点CvPointcenter;/圆形标出WORD版本.WORD版本WORD版本intradius;center.x=
56、cvRound(r-x+r-width*0.5)*scale);/圆心横坐标,注意scale,这里放大center.y=cvRound(r-y+r-height*0.5)*scale);/圆心纵坐标radius=cvRound(r-width+r-height)*0.25*scale);/圆半径cvCircle(img,center,radius,colorsi%8,3,8,0);/用圆圈出目标头像4.2.2人脸识别系统设计根据系统需要实现的功能要求,人脸识别系统的功能划分框图如图4.2所示。其中训练和识别部分是程序实现的核心部分,下面将分别介绍训练和识别部分的设计过程。图4.2人脸识别系统的
57、功能划分框图(1)训练部分的设计训练部分是指添加人脸数据库以后,提取人脸特征,生成每人的EHMM模型的过程。用户点击界面按钮向程序发出命令,通过主消息函数部分程序,系统调用相应的函数实现训练功能。添加人脸图片到人脸库以后,点击训练按钮,当前人的人脸图像将被训练,得到该人的EHMM模型。训练函数部分人脸数据库中,实现图片的读取然后调用人脸训练核心函数进行训练,得到EHMM模型数据,为识别人脸信息提供依据。(2)识别部分的设计人脸识别程序主要完成对待识别人脸图像与人脸库中图像的匹配识别,在程序的设计过程中,识别程序与用户的交互同样通过主消息函数来完成,我们在MFC的框架类CMainFrame中添加
58、消息响应函数,用户通过点击界面上的功能按钮启动识别程序,对各变量进行初始化,调用识别核心代码,并将识别出来的人的信息显示出来。人脸实时跟踪系统功能的实现本文所设计的人脸检测跟踪系统主要是基于VS2010环境和OpenCV库1实现的。VS2010与OpenCV库简介VisualStudio是微软公司推出的开发环境。是目前最流行的Windows平台应用程序开发环境。我用的是其高级版(Premium),拥有创建可扩展、高质量程序的完整工具包,相比专业版增加了数据库开发、TeamFoundationServer(TFS)、调试与诊断、MSDN订阅、程序生命周期管理(ALM)。OpenCV的全称是:Op
59、enSoureeComputerVisionLibrary,是由Intel公司发布的开源计算机视觉库。它是由一系列C函数和少量的C+类构成的,它易用而高效,实现了图像处理和计算机视觉方面的多种通用算法。OpenCV主要用于对图像进行一些高级处理,比如说特征检测与跟踪、运动分析、目标分割与识别以及3D重建等。在用VisualC+开发的项目中,只要正确安装OpenCV库,并在自己开发的应用程序中正确设置和OPenCV的连接,就可以直接调用它的视频捕获和图像处理函数,使用方便、功能强大,且为开放式资源。使用OpenCV对开发者来说帮助最大的是:由于OpenCV的源代码完全开放,所以程序开发者可以仔细
60、地阅读很多关键算法的源代码来理解图像处理中很多算法的原理及整个实现过程,这对于一个程序开发者来说是非常重要的。OpenCV的出现,给学习和开发带来了极大的方便。在研究和学习上,可以有更多的时间和精力来研究算法本身,而不是把大量的时间和精力花费在如何编程实现这个算法上,降低了系统实现难度。OpenCV在图像处理中有类似于MATLAB的封装功能,比如对于图像二值化操作,只需调用cvCvtColor(src,dst,CV_RGB2YCrCb)个函数。在应用开发上,OpenCV为开发数字图像处理和计算机视觉领域的应用程序提供了功能完善、使用方便的接口。OpenCV环境配置本系统采用VS2010环境编程
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 急诊工作的方式计划
- 缔造良好工作氛围的策略计划
- 高中历史 第5课 美国独立战争教学实录2 岳麓版选修2
- 统编版小学语文二年级下册第15课《古诗二首》精美课件
- 爱卫知识培训课件社区
- 2025年濮阳货运从业资格证考试内容
- 2025年白山货运从业资格证模拟考试题库
- 2025年临汾道路货物运输从业资格证模拟考试
- 八年级政治下册 第五单元 我是中国公民 5.2《公民的权利和义务》情境探究型教学实录 粤教版
- 2025年天津货运从业资格证模拟考试下载
- 电风暴护理查房
- 2024-2025学年五年级(下)信息科技教学计划
- 2025年中国铸造行业市场前景预测及投资方向研究报告
- 食品采购员工工作计划
- CNAS-SC175:2024 基于ISO IEC 2000-1的服务管理体系认证机构认可方案
- 部门职责与工作流程手册
- 首检培训课件
- TSG 07-2019电梯安装修理维护质量保证手册程序文件制度文件表单一整套
- GB/T 44959.2-2024法庭科学第2部分:检验对象的识别、记录、收集、运输和保存
- 小学数学一年级下册期中试卷及答案-北师大版-2024-2025学年
- GB 4404.1-2024粮食作物种子第1部分:禾谷类
评论
0/150
提交评论