人脸识别系统中人脸检测模块的研究与实现
内容摘要:人脸检测是计算机视觉与模式识别领域非常活跃的研究课题,在身份验证、
人机界面、可视通信、虚拟现实、公安档案管理、基于内容的图像检索等很多方面都有着广泛的应用。
作为人脸识别的重要的第一步,人脸检测所做的工作是将人脸从图像背景中检测出来,它是人脸识别、视点跟踪和人脸图像压缩等应用中的重要环节。由于受图像背景、亮度变化及人的头部姿势等因素的影响,使得人脸检测成为一项复杂的、具有挑战性的研究课题。
本文论述了人脸检测技术的基本概念,分析和探讨了多种人脸检测方法的基本理论,对人脸检测方法进行了深入的研究和讨论,实验表明本文研究的人脸检测方法是合理的,具有一定的理论价值与实用价值。本文的研究工作主要包括:
基于AdaBoost学习算法,从一个较大的特征集中选择少量关键的haar-like特征,产生一个高效的强分类器。再用级联方式将单个的强分类器级联成为一个更加复杂的级联分类器。针对AdaBoost算法在训练过程中出现的退化问题及样本权重扭曲的现象,本文对样本权重的更新规则作出了适当的调整,在一定程度上避免了退化现象,提高了分类器的性能。实验结果表明,新的人脸检测器检测效果显著加强。
关键词:人脸检测 AdaBoost算法 Haar特征
Research and implementation of face detection module in face
recognition system
Abstract:Human face recognition and detection are the most active and
chaallenging tasks for computer vision and pattern recognition.It can be widely applied to such fields as personal identification,human-computer interface,visual communication,criminal archive administration,content-based image retrieval,etc.
As the first step of face recognition,the task of face detection is to detect human faces from background of image.However,face detection result is usually affected by the background,brightness or head posture of image and so on,which makes the process of detection more complicated.
A great amount of literatures,surveys and research papers concerning up-to-date techniques of face detection and face recognition are and analyzed.Some hot issues about face detection are discussed in this paper.The experiments indicate that the methods of face detection proposed in this paper are reasonable,showing a certain degree of theoretical and practical value.The research work of this paper mainly about:
Using face detection method based on AdaBoost learning algorithm,which selects few key haar-like features from a large set of features,to build a robust cascade classifier.Focusing on the disadvantages of classical AdaBoost algorthm,this paper analyses the issues of overfitting and distortion of sample weights in training process and come up with a new method to avoid the phenomenon of overfitting.The experimental results show that the new method will not lead to overfitting like classical AdaBoost often does,and it will reduce false alarm rate while holding a high detection rate.
Keywords: face detection adaboost algorithm haar feature
目 录
前言 ..................................................................... 5 一、人脸检测知识介绍 ..................................................... 5 (一)人脸检测基本概念 .................................................. 5 (二)人脸检测技术的发展背景 ............................................ 6 (三)人脸检测的分类 .................................................... 7 (四)人脸检测方法 ...................................................... 7 1.基于统计模型的方法 ................................................. 7 2.基于范本匹配的方法 ................................................ 10 3.基于特征的方法 .................................................... 11 二、AdaBoost算法相关知识概述 ............................................ 12 (一)Boosting算法简介 ................................................ 12 (二)AdaBoost算法简介 ................................................ 12 三、Haar型特征和积分图像 ................................................ 13 (一)Haar型特征 ...................................................... 13 (二)一种组合式新型特征 ............................................... 15 (三)检测器内特征数计算 ............................................... 17 四、基于AdaBoost算法的人脸检测 ......................................... 20 (一)AdaBoost算法 .................................................... 20 (二)AdaBoost算法举例 ................................................ 21 1.弱分类器 .......................................................... 21 2.强分类器 .......................................................... 22 五、系统的设计与实现 .................................................... 24 (一)VC++环境的安装与配置 ............................................. 24 1.步骤 .............................................................. 24 2.配置 .............................................................. 24 (二)OpenCV的介绍安装和配置 .......................................... 24 1.介绍 ............................................................... 24 2.安装 ............................................................... 25 3.配置 ............................................................... 25
(三)总体设计 ......................................................... 26 1.人脸识别模块的主要功能 ............................................. 26 2.系统体系结构分析 ................................................... 26 (四)训练部分的设计 ................................................... 27 (五)识别部分设计 ..................................................... 29 (六)其他功能模块的设计 ............................................... 29 (七)系统截图 ......................................................... 30 六、结束语 .............................................................. 32 (一)工作总结 ......................................................... 32 (二)展望 ............................................................. 33 七、致谢 ................................................ 错误!未定义书签。 附录 .................................................... 错误!未定义书签。 参考文献 ................................................................ 34
人脸识别系统中人脸检测模块的研究与实现
前言
人脸检测是作为人脸识别的一部分进行研究的,是近些年研究的难点。人脸是一类具有相当复杂的细节变化的自然结构目标,对于这类目标的检测是一个极富挑战性的课题。人脸检测问题的难度在于,主要在于图像或视频中人脸模式的广泛差异性:某些局部特征具有随机性(如眼镜、胡须、发型等),这些都给人脸检测带来难度。来自身份、光照、观察角度等的变化,以及装饰物和部分遮挡等影响,有时使人脸与背景区别不大,给检测带来一定的难度。因此,如果能够找到解决这些问题的方法,成功构造出人脸的检测系统,将会为其它具有类似特征和模式的检测问题提供重要的提示。然而,对于机器来讲,人脸又是一个有其艰巨而又困难的问题。因为人脸检测技术在检测过程中计算量在,算法复杂,即使一台高性能的计算机也往往无法负担一个大规模的人脸库的检测需求,更何况检测后的识别等其它工作了。
经过不断的研究和发展,目前已经实现了很多算法解决了一些计算量问题。迄今为止,人脸检测的方法不断的被提出。大体上可以分为如下几大类:若干统计模型的方法、基于范本匹配的方法、基于器官特征的方法等。但目前最流行的是Viola等提出的基于积分图像的Adaboost算法,它是目前效率最高的一种算法。
目前对人脸检测研究的成果是:不但能对静态图像中的人脸进行单个人脸、多个人脸、人脸的多态检测,而且能够对动态(视频文件或录像)图像的人脸进行检测和跟踪。但对动态检测还是初级阶段,还有很多问题有待解决。本文主要研究静态的人脸检测,若输入图像为动态图像序列,则可以利用与人脸或人脸的器官相对于背景的运动来检测人脸,比如利用眨眼或说话等动作的探测来实现人脸与背景的分离。
本文主要研究基于Haar特征的AdaBoost算法,改进这种算法中的特征来进行人脸检测。
一、人脸检测知识介绍
(一)人脸检测基本概念
人脸检测(Face Detection)是指在输入图像中确定所有人脸(如果存在)的位置、大小和姿态的过程。人脸检测系统输入的是可能包含人脸的图像,输出的是图像中是否存在人脸和人脸数目、位置、尺度等信息的参数化描述。人脸检测其实只是目标检测的一个典型的应用实例。而目标检测的目的是为了目标识别,目标识别的其它应用包括:手写或印刷体文字的分割和、图文表混合信息的分类和识别、在躁声环境中检测和识别特定