当前位置:文档之家› 基于opencv的人脸检测界面开发

基于opencv的人脸检测界面开发

摘要人脸检测(Face Detection)是一种在任意数字图像中找到人脸的位置和大小的计算机技术。

它可以检测出面部特征,并忽略诸如建筑物、身体和其他任何东西。

人脸检测技术不仅仅是人脸跟踪、人脸识别、表情识别等技术的重要条件,同时在人机交互、模式识别、视频检索、智能监控等领域也引起了广泛的重视。

在通过对人脸检测相关知识进行学习的基础上,本文首先对国内外的人脸检测发展进行了相关分析,阐述了本课题的研究背景及意义;第二章介绍基于Opencv实现人脸检测的相关方法和检测原理;第三章指出了基于QT平台,人脸检测界面如何开发,需要用到的相关技术知识和操作流程。

第四章设计了基于opencv的人脸检测程序,采用了QT开发工具并结合opencv技术对程序界面进行设计实现。

关键词:人脸检测;QT开发;Opencv;AbstractFace detection is a computer technology that identifies human faces in digital images. It can detect facial features and ignore something like buildings,bodies and any other things.Face detection technology is not just an important condition for face recognition, also attracting wide attention in the human-computer interaction, pattern recognition, video retrieval, intelligent monitoring and other fields.Firstly in this paper, through the study of relevant technology of face detection recognition, and face detection to identify relevant experience in the domestic and abroad are analyzed,indicating the background and the significance of the topic.Based on opencv,the second chapter introduces how to realize the design.Then the third chapter points out how to develop face detection’s interface based on the QT platform; The fourth chapter based on opencv face detection procedures, using opencv, the QT development tools,achieve the design.Key Words:Face detection; QT development; Opencv;目录摘要 (I)Abstract (II)目录 (III)1 绪论 (1)1.1 课题背景及意义 (1)1.1.1 课题的背景 (1)1.1.2 课题的意义 (1)1.2 人脸检测的发展现状 (1)1.2.1 国内外现状 (1)1.2.2 研究难点 (2)1.3 本文安排 (2)1.4 本章小结 (2)2 Opencv与人脸检测 (3)2.1 人脸检测的方法 (3)2.1.1 几何特征法 (3)2.1.2 特征脸法 (3)2.1.3 弹性图匹配法 (5)2.1.4 神经网络法 (5)2.2 Opencv的应用领域 (5)2.3 Opencv的基本结构 (6)2.4 Opencv检测原理 (6)2.5 本章小结 (6)3 QT平台人脸检测界面的开发 (7)3.1 QT 的简介 (7)3.2 QT平台的搭建 (8)3.2.1 构建QT应用程序的流程 (8)3.2.2 编译QT应用程序的方法 (10)3.3 开发QT程序的基本流程 (11)3.4 本章小结 (13)4 人脸检测的实现 (14)4.1 通过Cmake编译Opencv (14)4.2 配置Qt Creator的Opencv开发环境 (16)4.3 人脸检测的实验过程 (17)4.4 本章小结 (20)5 总结与展望 (21)参考文献 (22)附录人脸检测源程序 (23)1 绪论1.1 课题背景及意义1.1.1 课题的背景人脸检测早期的时候是用来检测人脸中特征点之间的距离、比例等参数作为特征数据参数,建立具备半自动化的人脸检测程式。

而早期检测有两个主要研究:基于几何绘制任何脸型之间的距离和角度,以及一些容貌上,眼角、嘴角、鼻尖和部位构成平面拓扑;其次,模板方法模式和利用电脑图像细微的相关性来实现检测功能。

在1993年Berto对两类方法进行对分分析后发现,模板匹配法和几何特征方法中前者较为优秀[1]。

对人脸的特征提取与识别可看成是一个3D物体的2D投影图像进行匹配。

而人脸实际是个非刚性模型,在不同情况下可能存在一定的弹性形变,如表情、姿势位创造变化与模型检测问题相似。

环境因素对提取某种特征识别和有效的。

例如,在不同照明条件下的个人特征也可能发生一些变化。

因此在个人特征提取和识别图像识别前将进行某些预处理(标准化)。

删除背景,服装及冗余无用甚至有干扰到位置和校准目标灰度可以提高脸部检测效率,面部检测准确率得以提升。

1.1.2 课题的意义研究人脸检测在理论和技术上都有重要的意义:一是可以推进对人类视觉系统的认识;二是需要满足人工智能的应用。

使用面部检测技术,建立人脸自动检测系统,利用计算机实现自动检测人脸图像具有广泛的应用领域。

与其他作为标志识别的方法(如指纹,虹膜,和检测等)相比具有以下优点[2]:①不显眼,图像采集接口需要检测没有身体接触的人,你不能打扰检测人类;②成本低,安装方便,只需使用面部识别系统内置的摄像头,摄像设备可以是普通摄像头,数码相机和手机,对用户没有特殊安装要求;③无需人工干预,整个识别过程不要求用户主动参,计算机可以自动通过预先用户设置。

由于具有以上优点,近几年来,人脸识别技术引起了越来越多科研人员的关注。

1.2 人脸检测的发展现状1.2.1 国内外现状随着图像处理、生物特征、模式识别和各种分类算法等技术的发展而逐步的完善,为我们的生活和工作带来各种各样的便利和安全。

近年来,反国内和国际恐怖主义,国家安全和社会稳定的需求,世界各国都加大了对安全,生物验证和识别领域的重视。

美国军方研究机构建立人脸检测算法FERET评估标准,统一各种人脸检测和识别标准[3]。

国内在人脸自动识别技术研究相对起步较晚,开始于上世纪90年代末。

有国家自然科学基金会、863计划,还有许多当地的大学,研究机构和IT企业都建立了人脸检测研究小组。

主要研究机构有:上海交通大学、西北大学、西安交通大学、同济大学、复旦大学、南京理工大学、南京大学、北京工业大学、武汉大学、华中科技大学、微软亚洲研究院、上海银晨智能识别科技有限公司等[4]。

他们在人脸检测、与特征抽取和人脸检测算法等做了大量有意义的工作,也积累了丰富的经验。

我国在此领域的研究和相关系统的开发正进一步跻身世界先进行列。

1.2.2 研究难点人脸检测是一个复杂的具有挑战性的模式检测问题,其主要的难点有两方面,一方面是由于人脸内在的变化所引起:人脸具有相当复杂的细节变化,不同的外貌如脸形、肤色等,不同的面目特征如眼、嘴的张闭等;人脸有无遮挡遮挡,如眼镜、头发以及其它外部物体等。

另外由于外在条件变化所引起:由于成像角度的不同造成人脸的多姿态,如平面内旋转、深度旋转以及上下旋转,其中深度旋转影响较大;光照的影响,如图像中的亮度、对比度的变化和阴影等。

图像的成像条件,如摄像设备的焦距、成像距离,图像获得的途径等等[5]。

1.3 本文安排本文一共有五个章节。

第一章为绪论介绍课题背景及意义,并对人脸检测的发展现状进行分析。

第二章介绍Opencv与人脸检测内容。

第三章介绍QT平台人脸检测界面的开发需要用到的相关技术。

第四章介绍人脸检测的实现。

第五章是总结与展望。

1.4 本文小结本章是绪论,主要内容包括课题研究背景及意义以及人脸检测的发展现状。

2 Opencv 与人脸检测2.1 人脸检测的方法高精度的检测工作一般需要复杂的处理过程,如将图象映射到表面,恢复为三维模型,进行模型匹配等,但基于二维的图象处理也可进行人脸检测,下面介绍常用的几种方法。

2.1.1 几何特征法很多人采用几何特征法。

例如:一些常见的几何特征,例如人脸形状的局部特性有眼睛,鼻子,嘴等,并在该面的分布函数的面部特征有几何特性。

基于检测这些几何特征,鉴定特征向量之间的对应关系,通过欧几里得距离的识别是最常用的方法。

眼睛,鼻子,嘴,下巴,不同之处是由于各种形状、尺寸和这些组件的结构,所以通过对形状和结构之间的几何描述,可以作为检测的重要特征。

几何特征通常通过提取人眼,口,鼻和其它重要的特征点的位置作为分类功能的重要器官[6]。

基于少量的存储器几何特征的检测方法也有一些问题:①提取物防抖更为困难;②改变可能剧烈;③导致一些信息丢失,适合于粗略的分类。

一种方法是处理一组独立的小模型,如眼睛,嘴巴,鼻子,眉毛和下巴。

这些模型必须用于获得每个特征的轮廓,而基于边缘检测的传统方法很难获得一个连续的上边缘。

为此,提取特征弹性的方法有其独特的优势。

在灵活识别设计特征的形状的基础上,可调节的参数。

为了找到这组参数,需要使用图像的边缘,先用来设计一个高峰,山谷的形状及强度的信息和能量。

当能量达到最小,这组对应的最适合的形状模型的形状特征参数调节能量减小。

其基本思路是:设计一个可调节的部件模型(即变形模型,如图2-1所示),能量通过调整模型参数定义,使得能量函数最小化,然后将模型参数作为一个实体的几何特性[7]。

ac图2-1可变形模板方法的眼模型 2.1.2 特征脸法这种方法的原理是LDA (Principal Component Analysis 主分量分析法)用于特征选择和降低图象维数,是一种通用方法。

因此可以用K-L 变换获取其正交K-L 基底,对应其中较大特征值的基底具有与人脸相似的形状,因此,又称之为特征脸,得到人脸重要特征之后,要对其进行主成份分析,其具体的算法思想如下[8]:若抽样参加训练的人脸图像有M 张,每张图像的维数是N*N,则可以分别表示为:x1、x2、x3、…、x M ,那么平均脸可以表示为:1/(12)i F M x i M ==∑、(2-1) 每张人脸和平均人脸的距离可以表示为:i i d x F =-(2-2) 假设矩阵A={d1,d2,d2,…,d M},特征脸需要做的就是找出矩阵 AA T 的前Z 个 较大特征值中的特征向量,但AA T 是一个N 2*N 2维的大矩阵,求这个矩阵的特征值的计算量是很大的。

相关主题