基于卷积神经网络的人脸识别方法研究毕业论文
2022-01-26 11:13:56
论文总字数:25797字
摘 要
人脸具有独特的生理特征,几乎不可能找到两张完全一样的脸,即便是双胞胎也具有细微的不同之处,人脸由于这种独特性而广泛应用于生物识别上。研究人脸技术对于人们的日常生活、公共场所安全、身份识别等等许多方面都具有非常重要的意义。卷积神经网络以其权值共享和局部感受野这两个特点而出名,由于卷积神经网络能够对图像直接进行处理,其卷积-池化的多次迭代的结构能够准确的提取图像的特征并且大幅降低了计算量。因此,卷积神经网络广泛应用于人脸识别上,这种通过构造多层神经网络不断抽取人脸的低级特征并组合成高级特征的方法使得识别的时间大大缩短,准确性也有很大的提高。本次研究采用首先检测一张图像中是否存在人脸;并将检测到的人脸进行包括尺寸归一化、光照补偿、灰度化等预处理;构建一个包含两层卷积、两层池化和一层全连接层的卷积神经网络模型,并通过梯度下降法训练网络模型;使用训练好的模型对预处理后的人脸图像进行特征提取,将提取到的人脸特征送入softmax层进行分类完成人脸识别。本次研究采用了LFW数据集和ORL数据集检验人脸识别率以评价性能。实验结果表明:本文所使用的网络模型通过选择合适的阈值在LFW数据库上的准确率能够达到90%,并且由于其较简单的结构使得它相对于传统的大型VGG网络识别速度也有所提高。
关键词:人脸识别,人脸检测,卷积神经网络
Research on face recognition based on convolution neural network
Abstract
Faces have unique physiological characteristics, and it is almost impossible to find two identical faces. Even twins have subtle differences. Faces are widely used in biometrics because of this uniqueness. Convolutional neural networks are known for their weight sharing and local receptive fields, and are widely used in face recognition. This method of constructing multi-layer neural networks to extract low-level features of faces and combine them into advanced features The recognition time is greatly shortened and the accuracy is greatly improved. and the detected face is preprocessed by including method of size normalization, illumination compensation, grayscale, etc. Construct a convolutional neural network consisting of two layers of convolution, pooling and one layer of fully connected layers, and use the gradient descent method to train the network model to converge; use the trained model to extract the pre-processed face images. The extracted facial features are sent to the softmax layer for classification to complete face recognition. This study used the LFW dataset and the ORL dataset to test the face recognition rate. The experimental results show that the network model used in this paper can achieve 90% accuracy on the LFW database by selecting the appropriate threshold, and its recognition speed is also improved compared with the traditional large VGG network due to its simple structure.
Keywords: face recognition, face detection, convolutional neural network
目录
摘 要 I
Abstract II
第一章 绪论 1
1.1 人脸识别的背景及其意义 1
1.2 人脸识别技术的国内外发展状况 1
第二章 基于Haar特征的人脸检测算法 4
2.1 人脸检测 4
2.2 基于Haar特征的Viola-Jones算法 4
2.3 其他人脸检测算法 7
2.4 实验结果 7
第三章 卷积神经网络 11
3.1 CNN基本原理 11
3.2 基本结构 11
3.2.1 卷积层 11
3.2.2 池化层 13
3.2.3 激活函数 14
3.2.4 目标函数 15
3.3 几个重要概念 16
3.3.1 局部感受野 16
3.3.2 权值共享 17
3.4 网络训练 18
3.4.1 训练原理 18
3.4.2 误差反向传播的过程 18
3.4.3 随机梯度下降法 19
第四章 基于CNN的人脸识别方法 21
4.1 基于CNN的人脸识别方法的设计流程 21
4.2 环境介绍 21
4.3 人脸图像采集 21
4.4 图像预处理 23
4.4.1 尺寸归一化 23
4.4.2 图像灰度化 24
4.4.3 光照补偿 25
4.4.4 高斯平滑 26
4.5 人脸特征提取 27
4.6 基于CNN的人脸识别方法 28
4.6.1 模型搭建 28
4.6.2 人脸识别模型训练 30
4.6.3 人脸识别模型检测 33
4.7 对比实验 37
4.8 本章小结 40
第五章 总结与展望 41
致 谢 42
第一章 绪论
1.1 人脸识别的背景及其意义
科学技术不断发展,人们的物质生活水平一直在上升,与此同时,人们在隐私安全和生命安全的需求也越来越高。人们希望自己的隐私得到足够的保护,在这样的背景下,生物识别技术逐渐发展起来了。生物识别的定义是指,通过各种方式提取人的某种生物特征,比如说指纹、人脸、声音和虹膜等等,对提取到的特征进行建模和训练,使得计算机能够识别一个人的身份。采用生物识别技术的优点在于:人体特征的独特性。指纹、虹膜这些特征具有无法复制、失窃或遗忘的特性的。人脸也具有显著的独特性来作为生物识别的标准,毕竟即便是双胞胎,他们在人脸上也不可能达到完全的一样,任一张人脸都具有其独特的特点。同时,人脸这一生物特征相比于其他生物特征有着一个非常重要的优点,那就是便采集性:获得一个人的人脸信息的难度要远远低于获得他或指纹或虹膜或声音等特征的难度,人脸识别这一过程是不需要被识别的人进行主动参与的。在当前这种视频监控飞速普及的环境下,在公共场合获得人脸信息变得非常简单。除此以外,人脸识别还有一大优势:成本低,易于安装。人们只需要一个普通法人摄像头或者手机自带的相机就可以进行人脸识别了,其他的无非是软件上的问题。在这种情况下,研究人脸识别技术就有了非常重要的意义了。面部区分技术的使用领域非常广阔,在公共安全方面:飞机场、地铁站的安检等等;在经济方面:银行用于身份验证、社保检查等等;在平时生活方面:现在随处可见的智能手机面部解锁、支付宝刷脸付款等等。随着人们对公共安全的愈发重视,人脸识别的研究也会越来越先进。
1.2 人脸识别技术的国内外发展状况
人脸识别技术经过几十年以来的发展,在识别速度、准确性、鲁棒性以及硬件设备的花费上取得了巨大的突破,国内和国外的相关研究机构都在这个领域上取得了不同程度的发展。
1.2.1 国外发展状况
人脸识别的研究最开始源于20世纪60年代Bledsoe[1]的工作,他提出了一种基于人脸的关键特征比如鼻子、嘴巴等等的距离来进行人脸识别。1993年,美国军方设立了专门的人脸识别研究小组,该小组采用VC 进行软件开发,但受困于当时的技术原因,准确率只有53%。1994年,以Brunelli和Poggioz为代表的研究小组[2],他们提出了一种基于几何特征的人脸识别方法,采用欧式距离计算鼻子的宽度和长度、下巴形状和嘴的位置来表征人脸特征用于模式分类,该算法的人脸识别率约为90%。1998年,Nefian和Hayes率先将隐马尔科夫模型(Hidden Markov Model,HMM)用于人脸识别和声音识别上[3]。2014年,Facebook的人工智能实验室提出了DeepFace算法[4],利用深度学习原理构建卷积神经网络(Convolution neural network,以下简称CNN)来进行人脸识别,该算法在LFW数据库上的人脸识别正确率可达97.3%。HMM算法的优点在于即便存在表情、姿态变化的扰动,仍然有较高的识别率。2015年,Google公司发布了一种面部识别分析算法——FaceNet算法,这种算法原理是直接选择任意一层的特征,采取了一种点到点的训练一张图片基于欧氏距离的编码方法,进行识别时是以该图片相对于欧式空间的数码进行识别的,该算法准确率可达95.12%。
随着人脸识别技术进步的同时,多种用于识别准确率的测试集也在不断发展。除了比较出名的LFW数据库和ORL数据库以外,华盛顿大学提出了MegaFace这一人脸数据集,这个数据集是个百万级别的大型测试标准。该数据集一共包含一百万张图片,代表690000个不同的人。目前这种标准广泛应用于国际人脸识别相关竞赛上。
1.2.2 国内发展状况
国内的人脸识别研究起步较晚,但最近几年来,相关方面的研究也取得了巨大的进步。2014年,来自中国香港中文大学的团队建立了DeepID项目[5],该项目的重点是人脸验证。同样是采用CNN结构,与DeepFace项目不同的是:DeepID是通过特征对比,比较两张图像上的人脸是否为同一个人。该团队的人脸识别算法在LFW数据库上的识别率达到98.52%,首次超越了人类的识别能力(97.53%)。随后,整个研究在这个项目的基础上对算法进行了改进,达到了99.5%的准确率,这就是DeepID2项目[6],深度学习逐渐在人脸识别领域占据主流。中科院院士陈煕霖和田世光等利用深度学习在计算机视觉领域取得了巨大的突破,其研究范围包括人脸识别、人脸检测和匹配、性别识别、老龄化建模与评价等等。进入2016年以后,各种相关研究小组和公司都对人脸识别提出了自己的设计,例如百度旗下的研究小组提出的人脸识别算法的识别率在LFW数据库上可达99.77%,腾讯旗下的AI开放平台腾讯优图公布自己系统的人脸识别达99.80%。国内在人脸识别方面上的研究在世界范围内的影响越来越大。
1.3 论文结构介绍和章节安排
本次设计主要是将卷积神经网络的方法与人脸识别结合起来。利用Python环境下的TensorFlow框架搭建网络模型结构,设定好网络的初始参数和学习率后,使用梯度下降法对网络模型训练。通过人脸检测算法检测一副图像中是否存在人脸,将检测到的人脸图像经过预处理后送入训练好的模型提取人脸特征,根据人脸特征完成分类输出,从而实现人脸识别。
第一章:绪论。本章简要介绍了为什么要研究人脸识别的同时给出了这个研究对于人们的生活的影响,同时简单叙述了一下这个领域的前沿研究。
第二章:基于Haar特征的人脸检测算法。本章详细给出了Haar特征的原理,并且基于各种情况下做出了人脸检测的实验,分析了算法的性能。
第三章:卷积神经网络(Convolutional Neural Networks,CNN)。本章着重通过分析CNN的网络结构来分析它的原理,同时介绍了CNN的训练算法原理。
第四章:基于CNN的人脸识别方法。本章给出了图像采集,图像预处理以及搭建卷积神经网络模型并训练,最终使用训练好的模型完成人脸识别的过程,,并将本文所采用的模型与经典的VGG-net进行了实验对比
第五章:总结与展望。总结全文工作。对人脸识别这一课题给出自己的理解和对人脸识别未来发展方向的看法。
第二章 基于Haar特征的人脸检测算法
2.1 人脸检测
人脸检测的定义是指对于任意一张给定的图像,根据某些算法来对一整张图片进行缝隙来确定这一张图片里是否包括有人脸,如果有的话就截取出人脸所在的区域。人脸检测算法检测一张图像中是否有包含人脸的区域,若存在人脸,则用矩形框将之框起来然后在这个矩形框内提取人脸特征。人脸检测实验结果如图2-1所示。
图2-1 人脸检测实验结果图
2.2 基于Haar特征的Viola-Jones算法
Viola和Jones设计出了一种人脸检测算法:它使用简单的类Haar特征作为人脸检测的特征和并且通过将多个弱分类器采用级联的方式构成强分类器组成检测器,检测速度相比于之前的方法有巨大的提高,达到了近实时的检测效果,并且达到了很高的精度[7]。
Haar特征值主要是应用于反应一张图像的灰度分布情况。它主要有三种类别:对角线特征、边缘特征、中心特征和边缘特征[9]。该算法的原理是使用黑色矩形框和白色矩形框构成特征模块,这个模块所代表的特征的值就是两种不同颜色的区域的像素的差值。举个例子:脸部的一些特征能由矩形模块差值特征简单的描述,比如说:嘴巴相对于它四周的颜色要深、鼻梁两侧的颜色要比鼻梁颜色深等。因此,通过Haar特征就可以将人脸代表的灰度值信息表示出来。如图2-3所示。
图2-2 A、B、C、D分别代表边缘特征、线性特征、中心特征和对角线特征
图2-3 采用Haar特征来表示人脸
在Haar特征的基础上,Viola针对它存在的缺点提出了Haar-like特征来表述人脸。Haar-like特征的类型有:三矩形特征(中心特征)、双矩形特征(线性特征、边缘特征)和四矩形特征(对角线特征)。如图2-4所示。Haar-like特征计算特征的方式与之前类似:通过黑白矩形框像素的差值来表示。
图2-4 A、B为双矩形特征,C为三矩形特征,D为四矩形特征
与此同时,Viola和Jones提出了一种非常经典的计算类Haar特征值的算法:积分图像法。已知图像中某一个点的积分图像计算表达式为:
(2.1)
为积分图像,为原始图像。
积分图法的原理:某一个区域的像素和可由该区域的某个点的积分图像值表示。如图2.5所示,区域A的全部像素的和可由点a的积分图象值表示,即;点b的积分图像值为区域A与区域B的像素和的和,即;同理可得,。所以,D区域的所有像素和为。该算法计算量较小、速度快,大大提高了提取Haar特征值的速度。
图2-5 矩形区域像素和的表示形式
Viola首先选择一个区分能力较强的特征对样本集进行训练得到一个分类器,该级分类器因为分类效果很差所以被称为弱分类器。对于每一层甲醛后的弱分类器,通过增加分类失误的分类器权重,减少分类正确的分类器权重,将调整过后的训练样本集传输给新的分类器,然后按此不断迭代。在最终的决策分类器中,分类误差较大的分类器在决策过程中占比重较小,而分类误差大的分类器对分类的作用更大。如果多个强分类器级联在一起,那么通过各级强分类器检测的对象是人脸的可能性也最大。这种级联分类器大大提高了被检测的效率,而且增强了检测的实时性,符合我们的需求。
2.3 实验结果
本次研究采用的人脸检测算法是基于Haar特征下的级联分类器算法。该算法采用的级联分类器原理是多组分类器级联,不同组分类器的级别不一样。第一组的级别最低,拒绝率最低,它既能使一些包含人脸的图像通过,同时也能使得一些不包含人脸的图像通过,第二组的分类器相对第一组有着更高的拒绝率[12]。以此类推,只有当一幅图像通过了所有组的分类器,才认为它里面包含人脸。这种算法能够大大提高人脸检测的准确性。
请支付后下载全文,论文总字数:25797字