资源描述
华北水利水电大学毕业设计
存档编号
华北水利水电大学
North China University of Water Resources and Electric Power
毕 业 设 计
题目 基于Matlab的人脸识别
学 院 信息工程学院
专 业 电子信息工程
姓 名
学 号
指导教师
完成时间 2016.5.20
教务处制
独立完成与诚信声明
本人郑重声明:所提交的毕业设计是本人在指导教师的指导下,独立工作所取得的成果并撰写完成的,郑重确认没有剽窃、抄袭等违反学术道德、学术规范的侵权行为。文中除已经标注引用的内容外,不包含其他人或集体已经发表或撰写过的研究成果。对本文的研究做出重要贡献的个人和集体,均已在文中作了明确的说明并表示了谢意。本人完全意识到本声明的法律后果由本人承担。
毕业设计作者签名: 指导导师签名:
签字日期: 签字日期:
华北水利水电大学毕业设计
毕业设计版权使用授权书
本人完全了解华北水利水电学院有关保管、使用毕业设计的规定。特授权华北水利水电学院可以将毕业设计的全部或部分内容公开和编入有关数据库提供检索,并采用影印、缩印或扫描等复制手段复制、保存、汇编以供查阅和借阅。同意学校向国家有关部门或机构送交毕业设计原件或复印件和电子文档(涉密的成果在解密后应遵守此规定)。
毕业设计作者签名: 导师签名:
签字日期: 签字日期:
华北水利水电大学毕业设计
目录
中文摘要 I
英文摘要 V
第1章 绪论 1
1.1 人脸识别技术的研究背景 7
1.2 人脸识别技术的简单介绍 2
1.3 人脸识别技术的广泛应用 3
1.4 人脸识别技术的难点 4
第2章 人脸识别系统的组成及MATLAB数字图像处理 9
2.1 人脸识别系统的组成 6
2.2 MATLAB数字图像处理及过程 10
2.2.1 Matlab数字图像处理工具箱 10
2.2.2 数字图像的灰度转换 10
2.2.3 图像增强 8
2.2.4 数字图像的边缘检测 9
2.2.5 数字图像的噪声处理 10
第3章 人脸识别的过程和方法 11
3.1 人脸识别的过程 12
3.2 人脸识别的方法 12
3.2.1 基于特征脸的方法 12
3.2.2 基于神经网络的方法 13
3.2.3 基于积分图像分析法 13
第4章 PCA人脸识别方法 155
4.1 主成分分析法的定义 16
4.1.1 主成分的定义 16
4.1.2 主成分的性质 16
4.1.3 主成分数目的选取 16
4.2 PCA算法的功能实现 17
4.2.1 人脸空间的建立 17
4.2.2 特征向量的选取 17
4.2.3 人脸识别 17
4.3 主成分分析法的计算 18
4.4 特征脸算法 20
第5章 图像的特征提取与分析 22
5.1 概述 22
5.1.1 特征提取 22
5.1.2 特征选择 22
5.2 颜色视觉和色度图 22
5.3 颜色模型 23
5.3.1 RGB模型 23
5.3.2 CMY模型 24
5.3.3 HSI模型 25
5.4 形状特征描述 25
5.4.1 像素的邻域 25
5.4.2 像素的连接 25
5.4.3 区域内部的空间域分析 26
5.5 图形的预处理 27
5.5.1 膨胀与腐蚀 27
5.5.2 骨架化和边缘检测 27
第6章 人脸识别 30
6.1 人脸库的建立 29
6.2 采集人脸特征的多元信息 30
6.3 人脸的识别 31
6.4 人脸识别的总结 33
总 结 34
参考文献 35
致 谢 36
附录 37
基于Matlab的人脸识别
摘要
计算机时代的到来,给各个领域带来了巨大的变革,人们的生活也日益进入到了数字编码时代。人工智能学的发展及其广泛的使用令图片处理和模式识别技术已显得尤为重要。人脸识别技术就是基于生物识别理论而发展而来的。人脸识别技术是生物识别中的典型,有着远大的发展前景,人脸识别技术已经广泛应用到了涉密部门的门禁系统,车站、机场的安检系统,智能家居防盗系统,国防与军事安全部门等众多领域。
人脸识别技术是模式识别领域的一个较为先前的课题,如今已日益成熟。人脸识别技术是根据已经建数据库中的人脸图像,以计算机技术为基础,从待识别的图像中分析、提取出图像特征并与已知图像库进行比较,从而达到辨识的目的。
人脸识别的主要流程为:人脸图像的获取、人脸特征的检测、人脸特征的提取、图形的预处理、人脸的识别及身份验证。
本文主要使用MATLAB上数字图像处理功能,对待识别的图像进行读图、存储和识别。MATLAB中带有有关数字图像处理的应用工具箱,可以实现人脸的简单特征识别与辨识,进而应用到人脸识别系统。本文主要采用基于主元分析(PCA)(也称为主成分分析)的人脸识别算法,抓住事物的主要方面分析,利用降维原理,进行人脸特征的提取、辨识。最后通过真人的人脸检测与辨识,取到一定的成果。
关键词: MATLAB,人脸辨识,人脸特征,主成分分析法
Matlab-Based Face Identification
Abstract
The advent of the computer era has brought about great changes in all fields. People's lives have entered into the era of digital coding. With the development and wide application of artificial intelligence, pattern recognition technology and image processing technology are becoming more and more important.
Face recognition technology is a more previous topic in the field of pattern recognition, and it has become more and more mature. Face recognition technology is according to the established database of face images, taking technology of the computer based, in recognition of image analysis, extract image features and compared to identify with the known image library.
This paper mainly uses the MATLAB digital image processing, image recognition, image to storage, identification. MATLAB with the application of digital image processing toolbox, you can achieve a simple face recognition and identification of human face. In this paper, based on the principal component analysis of face recognition algorithm, face feature extraction, identification. Finally, the human face detection and recognition, and achieved certain results.
Key words: MATLAB, face recognition, face feature, principal component analysis
V
- -
华北水利水电大学毕业设计
第1章 绪论
人脸识别是一种基于人脸特征进行识别的技术,在生物识别技术中已较为成熟。在众多的领域中,人脸识别技术已经得到了充分的利用,比如涉密部门的门禁系统,火车站、机场、地铁等的安检系统,智能家居的防盗系统,以及国防与军事安全部门等等。
人脸检测人脸表征和人脸识别的基础和前提。人脸识别技术是人工智能识别领域中的一个重要课题,如今已经逐渐成熟。人脸识别也是众多研究领域中必不缺少的一部分,有着它举足轻重、不可取代的地位。人脸识别是从已知人脸特征集合中查找并匹配出相似的脸型特征,对一张静态图像实现人脸轮廓的特征扫描以及辨识,从而获取该图像中的人脸特征信息。如今,人脸识别技术已经大量应用于视频监控、车站安检、办公门禁等系统,它的出现给身份鉴别体系提供了诸多的方便。然而,人脸识别是基于生物特征来识别的,相对来说,它是一个非常复杂的过程,因为即使是同一个人,在表现喜、怒、哀、乐等不同的面部表情时,都有着不同的脸型特征,况且当这些特征以不同的姿态表现时又有所不同,这些都给人脸识别带来了困难和麻烦。同时,拍摄角度、倾斜角度、拍摄背景、光线强度、图像的尺寸大小以及是否旋转、面部是否有遮挡物等等,也都成为了人脸识别中不可忽视的干扰因素,导致错误判别。
要想更准确的实现人脸识别,我们必须要先解决上述问题,克服种种干扰,以作出正确精准的判断。在最近十多年的研究中,研究者们对此问题,也提出了不少的解决方法,比如表面几何特征算法、内部积分特征算法、主成分分析法等等。
主成分分析法(PCA)方法是一种有效的特征提取方法,它主要基于降维原理,将含有图像特征信息的高维矩阵通过正交变换,变换成低维的特征矩阵。这样的正交变换,具有很高的相似度与关联性。变换后的特征矩阵仍然具备原特征矩阵的性质与特征,即遗传和保留了其原有的特征信息,并且能够克服人的姿态、面部表情和光照等因素所带来的干扰。降维后的特征矩阵,复杂度降低,可以很方便地应用于人工智能识别系统。以矩阵的形式将图像特征点表示出来,这样就把一幅图像的模拟信息转换成了数字信息。这个矩阵构成了一个含有图像信息的集合,图像中的每个局部特征都可以通过子集表示出来。在进行人脸识别时,也是基于这样的思想。从待检测的人脸图像中提取出信息构建特征子集,然后把这些特征子集与已知的人脸集合进行投影对比,以及经过各特征点距离、弧度、灰暗程度等计算,这样就可以确定出两张图像的相似度与相关性。
人脸像我们的指纹一样,具有着唯一性,能够对人的身份进行鉴定。相比指纹识别系统、DNA鉴定,人脸图像的自动识别系统以其特有的方便性,具有更加潜在的发展空间和研究价值。对于人脸图像识别的研究最早出现在国外,如今,国内也有很多科研机构涉足这个领域,并已经取得许多较好的成果。
1.1 人脸识别技术的研究背景
如今的社会,逐步实现自动化,各个领域的基础技术也已经很成熟。在新的环境、新的要求下,我们需要一个更便捷的方式来打开世界、面向世界。在各种生物识别中,人脸识别技术就是一个最佳典范。在人工智能的研究中,我们一直希望机器可以进行识别、思考和处理事物,如同人类一样。人类的思维机制和感知以及处理事物的机制可以从心理学、解剖学、行为感知学等等多种学科范畴来研究,还可应用于开发创造,例如研制智能机器人。在这样的背景下,人脸图像的机器识别的研究迅速兴起并发展,我们希望可以逐步地开发出一种能够像人类一样存储信息、处理信息的机器识别机制,最终实现让机器具有人类思维机制的目的。
1.2 人脸识别技术的简单介绍
总体来看,图像的获取、人脸的检测和定位、人脸的特征提取、图形的预处理、和人脸的识别(身份查找或者身份确认)构成了人脸识别系统的大体流程。人脸识别系统集图像采集、处理和分析等为一体。可以快速地采集图像,并判定该图像中是否含有人脸,以及系统中是否有此人脸特征的存档。我们用含有待检测身份的人脸图像作为系统的输入,或者用人脸数据库中一定数量的已确定身份的人脸图像或是他们的编码作为系统的输入,而把相似度得分作为系统的输出,表明待识别的人脸的身份。
1.3 人脸识别技术的广泛应用
人脸图像识别不仅充满着巨大的挑战性、有着其重要的的理论意义,还有许多潜在的发展空间。相比诸如眼睛虹膜、掌纹、指纹等其他验证身份的方法,人脸图像识别在获取样本图像时,可以不与目标相接触,带来了极大的方便。而其他验证身份的手段,例如眼睛虹膜、掌纹、指纹等,只能通过实体接触目标或近距离接近目标,才能使识别条件成立,显而易见,在很多情况下,这些检验方法带来了诸多的麻烦。
人脸识别技术可以与其他领域的技术相结合,以将它的功能最大化。早在20世纪,生物识别技术的研究就已经取得了一定的发展成果,尤其是指纹识别技术,已经占据着安检部门的大半市场,被大家所熟知并应用,但人脸识别技术的研究还并不成熟。只有在待检测人的配合下,掌纹、眼睛虹膜、指纹等生物识别技术才能得到使用。另外,部分生物识别技术还需要购买昂贵设备的经济支持,难以广泛的得到应用。而人脸识别则可以使用较为简单、价格低廉的设备,使用手机拍摄或者照相机拍摄,不需要有特殊的图像采集设备,有着成本低、辨别率高、实现快速、能够普及的特点。此外,人脸识别还可以与红外探测、光学探测、声学循迹等技术相结合,让人在毫无察觉的情况下,完成多种检测任务。这对于公安罪犯识别、反恐活动以及人群安检等都有着非常重要的意义。基于人脸识别的多技术混合模式有着诸多的优势与广阔的市场前景,它正一步一步面向未来,走近我们的生活。
表1-1中列举了其中部分已经实现或正在完善的应用。
表1-1 人脸识别的应用
应用
优点
存在问题
信信用卡、汽车驾照、护照以及个人身份验证等
图像的质量高
图像摄取可控
图像分割可控
要创建庞大的人脸数据库
匹配犯罪嫌疑人的照片
图像的质量相差大
多幅图像可用
潜在的巨大图像库
互联网
信息量巨大
不完全真实
储蓄/银行安全
可以很好地进行监控
不能自由的分割图像
图像的质量较差
人群监测
图像质量高
可利用摄像图像
图像分割自由
图像质量低
1.4 人脸识别技术的难点
在日常生活中,我们可以轻松快速地根据人脸来分辨一个人,但是用机器进行全自动的人脸识别依然存在诸多的难题。主要表现在如下几个方面:
1、人脸的表情极为丰富和复杂,人脸上布满了五十多块面部肌肉,肌肉的运动可以使得人脸出现各种各样的面部表情,导致其多样变化。当人的面部出现了多样的表情时,人脸的特征也会发生改变。同时,这些变化还具有不稳定性、无规律性和多样性。
2、随着我们年龄的增长,皱纹慢慢的出现,五官难免也有些微的变化,面部肌肉也会变的松弛,这些都改变了人脸的结构和纹理,间接增加了人脸识别的难度。
3、眼镜、帽子、头饰、胡须、头发等附加物或饰物,会导致人脸特征遮掩,人脸全部或部分的遮掩都可能造成错误的识别。
4、人脸图像的畸变,比如光线的强弱、人脸摄取角度的不同、倾斜程度的不同、曝光程度的不同等等,都可能导致图像的灰度,进而造成人脸特征的不同。
5、图像拍摄误差的引入,拍摄时因光照、背景、图像的尺寸、图像是否旋转、周边环境等因素的影响都会得到不同的图像,造成干扰。
6、一些女性酷爱化妆,妆容会改变人脸的五官、皮肤和发式,一些女性素颜和浓妆对比时,容貌相差巨大,甚至即便是身边熟悉的人,也难以看出是同一个人。
第2章 人脸识别系统的组成及MATLAB数字图像处理
2.1 人脸识别系统的组成
人脸识别技术是众多生物识别技术中的典范。如同人体的DNA、指纹等生物特征,这些特征都有着自己的特点,可以作为“身份证”来标记或辨识某个个体。一般来讲,人脸识别系统主要由以下几个部分组成,如图2-1所示。
预处理
特征提取
分类识别
人脸检测
人脸库
图2-1 人脸识别系统框架
1、人脸图像的获取
本文主要使用两种方法来获取人脸图像。第一种方法使用数码照相机来采集图像信息,并使用MATLAB图像处理工具箱来获取数字图像,此种方法简单、便捷,是最为常用的一种获取人脸的方法。第二种方法则直接调用MATLAB视频工具箱函数,通过调用与控制安装在电脑上的摄像头或者安装在监控区域的摄像头,来实现人脸图像的获取。
2、人脸特征的检测
人脸特征的检测是从已知的静态图像中,或者从计算机读取的视频中所截取的静态图像中,基于人脸特征算法,判断该静态图像中是否存在具有人脸特征的图像。若在待检测的静态图像中已经检测出具有人脸特征的图像,再调用边缘算法,将所识别出的具有人脸特征的图像或部位圈出,即把人脸从它的背景中分离出来,并进行定位。
3、人脸特征的提取
通过人脸图像的获取与人脸特征的检测这两个过程,可以根据边缘检测算法对已获得的人脸特征数据(眼睛、鼻子、嘴巴、眉毛等)进行坐标标定与数字编码,成为具有人脸数据特征的总集合。这些特征包含局部特征和整体特征。从总集合中能够提取人脸特征,并形成独立的人脸特征子集。在特征提取前,要先对其进行几何归一化以及灰度归一化处理。所谓几何归一化是指,以人脸定位的结果为依据,对画面中的人脸进行移动和放缩,使待测的人脸图像和人脸数据库中已知的人脸图像有相同的大小和位置,以便于比对。所谓灰度归一化,是指对图像补偿一定的光照,目的是减小光线强弱的改变所带来的误差干扰,使辨识的精准度提高。
4、人脸特征的识别
人脸特征的识别与身份标识(Face Identification),简称人脸识别问题。在经过人脸图像的获取、特征的检测以及特征的提取等过程后,就可以创建自己独有的人脸识别的总集合。包含于总集合中的每个子集都具备独立的特征以及相应的数字编码,提取出待检测的人脸特征之后,即可进行人脸的特征匹配与识别,并计算相似度得分,并将相似度得分由大到小进行排序,确定待测图像是已知图像库中的“谁”,便可以实现在安防、安检、公安、国防等部门的“身份标识”功能。它包含两种识别:第一种识别是假定系统输入的人脸在人脸库中已知存在,称为闭集人脸识别。第二种是不确定输入的人脸在人脸库中是否存在,要先进行判断,称为开集人脸识别。
5、对比人脸图像的身份验证
对比人脸图像的身份验证(Face Verification),简称人脸确认问题(Face Verification)。我们在将待检测的人脸图像输入到系统中时,还要将该用户自称的身份信息也输入到系统中,来判定系统检验出的身份与该用户自称的身份是否一致,身份是否属实。
在自动人脸识别系统中,最重要的两个过程就是人脸特征的检测和人脸特征的识别。
随着当今社会科技的不断进步,生物技术日益成熟,人脸特征的识别与身份标识技术也渐渐走在了生物识别技术的前列。
2.2 MATLAB数字图像处理及过程
2.2.1 Matlab数字图像处理工具箱
Matlab数字图像处理工具箱中包括显示图像、读取图像、存储图像文件、截取动态图像、输入图像、输出图像、统计图像像素值、对图像进行几何运算等多种应用函数。具有高效、强大的矩阵和数组运算功能、程序书写形式自由、语言紧凑简洁的优点。数字图像处理中,读取和显示图像可以通过imread()和imshow()来实现,图像的裁剪用imcrop()来实现,图像的旋转用imrotate()来实现,图像的缩放用imrisize()来实现。处理过的图像也可以即时保存到本地文件夹中,以实现快速的人机交互。
2.2.2 数字图像的灰度转换
MATLAB在进行数字图像的读取时,支持多种图像格式,如png、mbp、jpg。本文主要应用的是MATLAB2015a进行数字图像采集。因直接采集到的图像信息是三维RGB的真彩数字图像,需要将其装换成二维的灰度数字图像,这样才能方便后续数字图像中的增强、边缘检测与人脸特征提取等处理。转换示例如下:
I=imread(path) I1= im2bw(I, graythresh(I))
其中,graythresh表示寻找图片一个恰当的阈值,把该阈值作为将真彩图像转换为二维图像的标准。im2bw表示将三维的真彩图像转换为二维的数字图像。
图2-2 灰度转换
2.2.3 图像增强
从具有真彩特点的RGB原图到转换到简单的二维灰度图像,增加了图像的模糊性,图像的清晰度有所降低,大大影响了人眼的视觉效果。而图像增强的过程就是为了解决这一不良影响,改善数字图像的清晰度,降低模糊性,给人眼一个良好的视觉感,以便于实现数字图像的处理与辨识;另外图像增强对于已经破坏图像像素或失真的图像可以实现图像的简单修复并重现图像。
图像增强的方法有两种:频域法和空域法。频域法的操作对象是图像的整体,在变换域内,对变换后的系数作出修改,再进行反变换。而空域法操作的对象是图像的像素点,主要有空域滤波增强和灰度变换增强等等。
2.2.4 数字图像的边缘检测
人脸识别是建立在数字图像特征基础之上的,人脸图像特征是进行人脸识别的一个重要组成元素。而数字图像的边缘检测则是人脸特征获取中应用最广泛的一种方法,也是进行一些图像分析方法比如区域形状提取、目标区域识别以及图像分割的前提工作。目标的边缘是不同区域的分界。数字图像的边缘检测是待检测图像局部特征显著变化的结果,即待检测图像局部的灰度变化、亮度程度、色彩饱和度、特征间隔点突变、图像纹理结构跳跃等等,可以为每个区域建立独有的特征边界,具有边界清晰的特点。这对于数字图像的特征提取、特征检测、特征识别等都具有着重要的作用。
边缘检测算子的功能是对各个像素的邻域进行检查,并量化它的灰度变化率,确定它的方向。本文采用常用的Prewitt算子,Sobel算子,Log算子,Roberts算子等。如图2-2所示。
图2-2 算子法边缘检测
MATLAB2015a数字图像处理工具箱中给出的edge()函数可以对待检测图像进行边缘检测,相应的算法有Roberts算子法、Sobel算子法、Log算子、Prewitt算子法等。在进行图像边缘检测时,首先要计算各个像素的梯度变量,再计算它的绝对值,然后进行阈值操作即可。Roberts算子、Prewitt算子、Sobel算子都是利用了此原理。各算子法的检测结果如图2-2所示。
2.2.5 数字图像的噪声处理
在数字图像处理的过程中,会不可避免的引入我们不想要的信息,这些信息使图像清晰度降低、使图像变得模糊,这些不想要的信息就是图像数字噪声,是一种没有规律的随机信号源。数字图像作为一种光电信息,噪声来源有很多,常见的有数码摄像机的镜头污染、拍摄场地的环境噪声、照片的颗粒噪声、光道传输噪声、光电换能器的误差、天气的变化、脉冲干扰噪声、电磁风暴等等,这些都会对数字图像造成干扰,尤其是脉冲干扰噪声、光道传输噪声严重影响了数字图像的质量,对后期的图像处理与辨识带来了困难,甚至会淹没图像的特征。MATLAB数字图像处理中常用的噪声有颗粒噪声、泊松噪声和高斯噪声等。
J=imnoise(I,type)
J=imnoise(I,type,parameters)
图2-3 噪声引入
数字图像噪声的存在对后期的图像处理与辨识带来了困难。我们需要将这些无用的噪声信息滤除。而常见的去噪方法有线性平滑滤波器法和邻域平均值法,这两种方法都可以达到不错的结果。线性平滑滤波器法是基于数字图像特征卷积的思想,在对有噪声污染的图像四周进行采点卷积,进而平滑的滤掉那些特征变化大的数字点,达到去噪的目的。邻域平均法采用中心点向四周寻特征点的思想,通过四邻域或八邻域图像特征计算出特征平均值,再以特征平均值为参考特征,对周围突变特征进行过滤。邻域平均法具有计算速度快、算法简单易懂的优点,缺点是使边界变得模糊。
图2-4 噪声处理
第3章 人脸识别的过程和方法
3.1 人脸识别的过程
人脸识别是一个相对复杂的过程,概略地分,包括人脸特征提取、人脸边缘检测、备用人脸集查找与匹配等过程。
第一步,需要建立人脸特征集。我们打开一张图像或应用数码设备即时采集一张图像时,要判断出该图像中是否具有人脸特征,并进一步判断图像中是否存在人脸。这就需要我们建立人脸特征集。简单地讲,人脸的面部特征即眼睛、鼻子、嘴巴等器官的形状大小,以及它们的位置关系。在MATLAB中,我们可以表示出这些器官的特点,如1代表眼睛大、0代表眼睛小。当然,矩阵的维度也决定着人脸特征提取的精度。
第二步,识别人脸特征。人脸特征集已经建立,就可以进行人脸特征的提取与识别。调用MATLAB图像处理函数,根据已知的人脸特征集,对待检测图像进行人脸特征检测,并用红色圈或红色框标识出来。
第三步,多种姿态的人脸采集与身份辨识。若想实现最终的人脸识别与身份辨识,我们还需要建立一个自己的人脸特征总集。这个总集中包含同一个人不同姿态的人脸特征,即集合子集,不同姿态人脸特征子集越多,后期的人脸识别成功率就会越高。身份辨识也会获得很大的成功。
基本上,人脸识别都具有这些步骤。这些就是人脸识别的基础,只有将这些步骤做的更细更精密,人脸识别的结果才会更好。
3.2 人脸识别的方法
人脸识别的算法大体分为两种,第一种是基于人脸图像的全局特征(Holistic Approaches),关注图像的整体属性,对人脸图像的全局特征信息进行编码与分类,特征统计法、神经网络预测法等方法就是应用此算法的典型。第二种是基于人脸图像的局部特征(Feature-Based Approaches),对人脸的鼻子、眉毛、眼睛、嘴巴等器官进行特征提取与建模,提取人脸图像局部点之间的间距、弧度、曲线等特征,并将这些特征存储到多维矩阵中。
3.2.1 基于特征脸的方法
特征脸方法(eigenface)是一种基于主元分析(PCA)思想的人脸辨识方法,根据人脸特征矩阵集,建立特征脸模型即主元。人脸识别时,将待检测图像数字化并编码存储到新的矩阵中,然后与已知的人脸特征集进行匹配比较,识别效果较好。
特征脸方法过程简单、便于实现,将人脸一体化,避免了局部特征处理的复杂性,但与此同时,特征脸方法忽略了人脸存在的个体差异,理论并没有很完善,这也带来了一定的识别困难。
3.2.2 基于神经网络的方法
人脸识别的神经网络历史很长,最初用于人脸的“回忆”,即当输入的人脸图像部分缺损或受噪声污染时,可以完整的恢复出原来的人脸。现在的人工神经网络技术已经应用到了很多领域,有智能控制、人工智能、信息预测、语音识别、种族识别、性别识别等方面。人工神经网络就如同人工建立的“大脑”,具有自主学习、未来预测、错误修正、组合优化等功能。此外,神经网络具有处理信息速度快的优点。
人工神经网络是有大量的人工神经元相互连接组成的特征“神经节”,在人脸特征识别应用上主要分为两个阶段。第一个阶段是学习阶段,对人脸图像特征集合进行学习并“记忆”,同时在学习阶段对于含有噪声污染的图像特征点的各个权值,可以通过学习进行修改与去噪。第二个阶段是工作阶段,将”记忆“中的特征与待检测图像的人脸特征进行匹配与识别。
3.2.3 基于积分图像分析法
积分图像是对图像进行微积分处理后所得到的曲线图形。就是对人脸的特征点进行局部微积分,即实现小范围区域的特征点相加,这是人脸图像特征检测与识别常用的算法。对于一幅二维的灰度图像,某特征点的积分图像是从该图像的左上角到该特征点的矩形范围内所有的特征点的灰度值之和。检测效率高、速度快是基于积分图像分析法的优点。
表3-1 各方法优缺点
检测方法
优点
缺点与需要改进的地方
特征脸法
标准人脸模板能抽象人脸全部信息,运算不涉及迭代,耗费时间短
单模板检测效率低,多模板提高了效率也增加了检测时间
神经网络法
检测效率高,错误报警数目不多,训练成熟的网络监测速度快
多样本训练耗费时间多,但网络监测错误报警数目多
基于积分图像分析法
检测速度快,基本满足实时检测要求,检测效率可以与神经网络法比较
错误报警数目少时,检测率不高
第4章 PCA人脸识别方法
4.1 主成分分析法
在实际研究问题时,全面、系统的考虑众多因素,可以帮助我们更好的分析问题。但在多元问题的研究统计中,过多的变量会增大分析问题的复杂性,以及繁重的计算量,并且每个变量都是研究目标的某种表征和反映,各个变量彼此之间具有一定的相关性,因此它们所包含的信息在一定程度上是有重合的,在进行定量分析时,我们希望可以用较少的变量,来表示较多的信息,以提高检测效率。主成分分析法便是基于这种原理的一种数学变换方法。
主成分分析(principal component analysis,简称PCA),也被称作主分量分析或主元分析,主要基于降维原理,将含有图像特征信息的高维矩阵通过正交变换,变换成低维的特征矩阵。这样的正交变换,具有很高的相似度与关联性。变换后的特征矩阵仍然具备原特征矩阵的性质与特征,即遗传与保持了原有特征信息。降维后的特征矩阵,复杂度降低,可以很方便地应用于人工智能识别。
点构成线,线构成面。同样的道理,一幅图像也是由许多的像素点构成的,这些像素点可以根据计算机或数码设备的字长有255种或更多种的色彩值。以矩阵的形式将这些像素点表示出来,这样一幅图像的模拟信息就转换成了数字信息。这个矩阵构成了一个含有图像信息的集合,图像中的每个局部特征都可以通过子集表示出来。人脸识别时,也是基于这样的思想。从待检测的人脸图像中提取信息构建特征子集,再将这些子集与已知人脸集合进行投影对比,以及经过各特征点距离、弧度、灰暗程度等的计算,这样就可以确定出两张图像的相似度与相关性。
人脸识别图像特征提取时,会出现多个特征点相似程度或关联程度高的特点,这样就难以分割形成独立的特征子集。这样就需要舍弃一些特征,以主成分为主要特征描述那些分不清、模糊的特征。于是寻找主成分点就成为了我们分析中的重点,一张图像中要求主成分能够反应图像的特征,凸显图像的不同之处,并且是各个特征点变化较大的一个。图像中选择主成分点的成功与否将极大的影响我们的特征提取与后期的特征辨识。
4.1.1 主成分的定义
设有随机图像特征向量Y1,Y2,…,Yn, 其对应的样本均值为Q11,Q12,…,Q1n。寻找主成分,我们应用以下式子:
(1)若P1=Q11*Y1+Q11*Y2+ … +Q1n*Yn,…,并且可令P1的均值值最大,则称P1为第一主成分。
(2)若P2=Q21*Y1+Q21*Y2+…+Q2n*Yn,…,其中(Q21,Q22,…,Q2n)垂直于(Q11,Q12,…,Q1n),并且可令P2的均值值最大,则称P2为第二主成分。
(3)以此类推,我们可以得到n个主成分。
4.1.2 主成分的性质
主成分P1,P2,…,Pn的基本性质如下:
(1)主成分间不具有相关性,即任意两个主成分之间的相关系数为零
Corr(Pi,Pj)=0 (i,j任意)
(2) 各主成分的方差逐渐减小
Var(P1)≥Var(P2)≥…≥Var(Pn)
(3) 总方差不增不减, 即
Var(P1)+Var(P2)+ … +Var(Pn)
=Var(x1)+Var(x2)+ … +Var(xp) =p
即主成分只是对原变量进行线性组合(改组),不改变原来的总信息量。
4.1.3 主成分数目的选取
实际过程中,主成分的选取也有一定的规律。从n个图像特征向量中就可以选取n个主成分。在这个计算过程中,总的方差并没有发生变化,但前面几个主成分的方差变化较大,在数据队尾的主成分方差变化则较小。根据主成分具有标识图像特征、凸显特征变化的特点,我们选取数据队首的几个特征点为主成分,数据队尾的若干特征点则为辅助主成分或次主要成分。所以在分析中,我们总是保留前面的主要成分,忽略后面的次要成分。
主成分选取的个数取决于变化方差特征点占总特征点的比例,既不能过多,也不能过少,恰当的反映出图像的特征就是最佳的主成分数目。
4.2 PCA算法的功能实现
4.2.1 人脸空间的建立
构成图像的基本单位是像素,一幅图像的清晰程度、色彩程度、视觉感程度等完全取决于像素的大小。如果一幅图像含有n*n个像素点,那么它完全可以通过一个n维列向量表示出来。这幅图像中的每个特征点就可以以P(i,j)的形式表示出来,i、j是0到n的自然数。这些随机特征点的协方差正交变换向量就是含有人脸特征的基本特征空间,我们称之为特征脸。
通过特征空间子集映射也可凸显图像特征,待检测图像子空间的匹配映射,可以描述出不同图像特征子空间的相似程度与相关性。
4.2.2 特征向量的选取
图像特征协方差矩阵的非奇异特征解有M个,这个值远小于n个,与之对应的有M个特征向量。实际情况下,M会趋向于n,这并不利于特征子空间的投影运算。特征向量的解越多,投影运算的复杂程度越大,它们之间具有一定的正相关性。而且并非所有的特征向量对特征子空间的投影都有价值。所以,我们可以适当的去掉一些特征子空间,这样既不会对后期特征识别的投影运算带来误差,而且一定程度上还能提高运算效率,减少运算时间,提高辨识性能。
4.2.3 人脸识别
通过降维原理,得到了一个含有人脸特征的降维集合,这个集合反映着原图像的最基础的特征。这些特征被记录在二维矩阵空间之中,这也成为了后期人脸辨识的一个凭据。采用投影映射匹配思想,可以将待检测图像的特征与已知人脸的特征集合联系起来。已知人脸特征子集是辨识过程中的基准,待检测图像要与基准图像有一定的相关性或相似度才可以通过识别。对已经确认为人脸特征的子空间可以作为新的基准,自主学习与辨识下一个特征集。
待检测图像经过投影映射时,对于人脸空间与非人脸空间有着不同的变化,而这些变化在非人脸空间控体现的较为明显一些。因此,辨别待检测图像中是否含有人脸特征的核心是该图像任意子空间处的特征点与人脸空间特征点的距离。这也是检测一张图像是否含有人脸的判别数,通常用ε表示,任意给出图像上的一点(x,y),就可以得到对应的ε(x,y)。
图4-1 图4-2
4.3 主成分分析法的计算
主成分分析(即主元分析)算法是统计学理论应用于数据分析与研究中的一种常用方法。它的基本思想是数学上的降维理论,通过中间变换矩阵,将一个含有人脸特征的高维数据空间降维成低维的特征矩阵,这样可以更方便投影映射运算与特征辨识。
一幅像素为n*n的图像,可以通过列向量的形式
展开阅读全文