《毕业论文基于matlab的人脸识别系统设计与仿真含matlab源程序.docx》由会员分享,可在线阅读,更多相关《毕业论文基于matlab的人脸识别系统设计与仿真含matlab源程序.docx(41页珍藏版)》请在优知文库上搜索。
1、基于matlab的人脸识别系统设计及仿真第一章绪论本章提出了本文的探讨背景及应用前景。首先阐述了人脸图像识别意义;然后介绍了人脸图像识别探讨中存在的问题;接着介绍了自动人脸识别系统的一般框架构成;最终简要地介绍了本文的主要工作和章节结构。1.1 探讨背景自70年头以来,随着人工智能技术的兴起.以及人类视觉探讨的进展.人们渐渐对人脸图像的机器识别投入很大的热忱,并形成了一个人脸图像识别探讨领域,.这一领域除了它的重大理论价值外,也极具好用价值。在进行人工智能的探讨中,人们始终想做的事情就是让机器具有像人类一样的思索实力,以及识别事物、处理事物的实力,因此从解剖学、心理学、行为感知学等各个角度来探
2、求人类的思维机制、以及感知事物、处理事物的机制,并努力将这些机制用于实践,如各种智能机器人的研制。人脸图像的机器识别探讨就是在这种背景下兴起的,因为人们发觉很多对于人类而言可以轻易做到的事情,而让机器来实现却很难,如人脸图像的识别,语音识别,自然语言理解等。假如能够开发出具有像人类一样的机器识别机制,就能够逐步地了解人类是如何存储信息,并进行处理的,从而最终了解人类的思维机制。同时,进行人脸图像识别探讨也具有很大的运用价依。犹如人的指纹一样,人脸也具有唯一性,也可用来鉴别一个人的身份。现在己有好用的计算机自动指纹识别系统面世,并在安检等部门得到应用,但还没有通用成熟的人脸自动识别系统出现。人脸
3、图像的自动识别系统较之指纹识别系统、DNA鉴定等更具便利性,因为它取样便利,可以不接触目标就进行识别,从而开发探讨的实际意义更大。并且及指纹图像不同的是,人脸图像受很多因素的干扰:人脸表情的多样性;以及外在的成像过程中的光照,图像尺寸,旋转,姿态变更等。使得同一个人,在不同的环境下拍摄所得到的人脸图像不同,有时更会有很大的差别,给识别带来很大难度。因此在各种干扰条件下实现人脸图像的识别,也就更具有挑战性。国外对于人脸图像识别的探讨较早,现己有好用系统面世,只是对于成像条件要求较苛刻,应用范围也就较窄,国内也有很多科研机构从事这方而的探讨,并己取得很多成果。1.2 人脸图像识别的应用前景人脸图像
4、识别除了具有重大的理论价值以及极富挑战性外,还其有很多潜在的应用前景,利用人脸图像来进行身份验证,可以不及目标相接触就取得样本图像,而其它的身份验证手段,如指纹、眼睛虹膜等必需通过及目标接触或相当接近来取得样木,在某些场合,这些识别手段就会有不便之处。就从目前和将来来看,可以预料到人脸图像识别将具有广袤的应用前景,如表中所列举就是其中已经实现或逐步完善的应用。表11人脸识别的应用应用优点存在问题信信用卡、汽车驾照、护照以及个人身份验证等图像摄取可控图像分割可控图像质量好须要建立浩大的数据库嫌疑犯照片匹配图像质量不统一多幅图像可用潜在的巨大图像库互联网应用视频信息价值高多人参及存在虚假银行/储蓄
5、平安监控效果好图像分割不行控图像质量较差人群监测图像质量高可利用摄像图像图像分割自由图像质量低、实时性1.3 本文探讨的问题本文介绍了人脸图像识别中所应用MATLAB对图像进行预处理,应用该工具箱对图像进行经典图像处理,通过实例来应用matlab图像处理功能,对某一特定的人脸图像处理,进而应用到人脸识别系统。本文在总结分析人脸识别系统中几种常用的图像预处理方法基础上,利用MATLAB实现了一个集多种预处理方法于一体的通用的人脸图像预处理仿真系统,将该系统作为图像预处理模块可嵌入在人脸识别系统中,并利用灰度图像的直方图比对来实现人脸图像的识别判定。其中涉及到图像的选取,脸部定位,特征提取,图像处
6、理和识别几个过程。1.4 识别系统构成人类好像具有“及生俱来”的人脸识别实力,赐予计算机同样的实力是人类的幻想之一,这就是所谓的“人脸识别”系统。假设我们把照相机、摄像头、扫描仪等看作计算机的“眼睛”,数字图像可以看作计算机视察到的“影像,那么AFR赐予计算机依据其所“看到”的人脸图片来推断人物身份的实力。广义的讲,自动人脸识别系统具有如图1.1所示的一般框架并完成相应功能的任务。人脸图像获得人脸检测特征提取人脸识别图1.1人脸识别系统一般框架(1)人脸图像的获得一般来说,图像的获得都是通过摄像头摄取,但摄取的图像可以是真人,也可以是人脸的图片或者为了相对简洁,可以不考虑通过摄像头来摄取头像,
7、而是干脆给定要识别的图像。(2)人脸的检测人脸检测的任务是推断静态图像中是否存在人脸。若存在人脸,给出其在图像中的坐标位置、人脸区域大小等信息。而人脸跟踪则须要进一步输出所检测到的人脸位置、大小等状态随时间的连续变更状况。(3)特征提取通过人脸特征点的检测及标定可以确定人脸图像中显著特征点的位置(如眼睛、眉毛、鼻子、嘴巴等器官),同时还可以得到这些器官及其面部轮廓的形态信息的描述。依据人脸特征点检测及标定的结果,通过某些运算得到人脸特征的描述(这些特征包括:全局特征和局部特征,显式特征和统计特征等)。(4)基于人脸图像比对的身份识别即人脸识别(FaCeIdentifiCatiOn)问题。通过将
8、输入人脸图像及人脸数据库中的全部已知原型人脸图像计算相像度并对其排序来给出输入人脸的身份信息。这包括两类识别问题:一类是闭集(CIOSeSet)人脸识别问题,即假定输入的人脸肯定是人脸库中的某个个体;另一类是开集(OPenSet)识别,即首先要对输入人脸是否在已知人脸库中做出推断,假如是,则给出其身份。(5)基于人脸图像比对的身份验证即人脸确认(FaCeVerifiCatiOn)问题。系统在输入人脸图像的同时输入一个用户宣称的该人脸的身份信息,系统要对该输入人脸图像的身份及宣称的身份是否相符作出推断。1.5 论文的内容及组织其次章主要介绍人脸识别系统中所用到的仿真软件Matlab,介绍了在人脸
9、图像识别过程中所须要的图像处理技术,包括:一些基本操作、格式转换、图像增加等。并做了一个Matlab图像处理功能的实例第三章主要始涉三个方面:首先是对人脸识别系统的构成做具体论述;其次就是对人脸识别过程中的关键环节人脸检测、特征提取和图像预处理做具体介绍;最终就是Matlab在人脸识别系统中的具体应用,即人脸图像识别的具体技术,并用MaHab进行仿真试验并得到结果。第四章是对人脸图像识别体系构架的设计,并给出了人脸识别用到的理论学问即直方图差异对比,并编写matlab代码实现人脸图像识别。第五章总结了全文的工作并对以后的须要进一步探讨的问题进行了展望。其次章图像处理的Matlab实现2.1 M
10、atlab简介由MathWork公司开发的Matlab语言语法限制不严格,程序设计自由度大,程序的可移植性好。Matlab还推出了功能强大的适应于图像分析和处理的工具箱,常用的有图像处理工具箱、小波分析工具箱及数字信号处理工具箱。利用这些工具箱,我们可以很便利的从各个方面对图像的性质进行深化的探讨。MatIab图像处理工具箱支持索引图像、RGB图像、灰度图像、二进制图像并能操作.bmp、.jpg、.tif等多种图像格式文件。2.2 数字图像处理及过程图像是人类获得信息、表达信息和传递信息的重要手段。利用计算机对图像进行去除噪声、增加、复原、分割、提取特征等的理论、方法和技术称为数字图像处理。数
11、字图像处理技术已经成为信息科学、计算机科学、工程科学、地球科学等诸多方面的学者探讨图像的有效工具。数字图像处理主要包括图像变换、图像增加、图像编码、图像复原、图像重建、图像识别以及图像理解等内容。2.2.1 图像处理的基本操作读取和显示图像可以通过imread()和imshow()来实现;图像的输出用imwrite()函数就可以很便利的把图像输出到硬盘上;另外还可以用imcropO、imrisize。、imrotate()等来实现图像的裁剪、缩放和旋转等功能。2.2.2 图像类型的转换Matlab支持多种图像类型,但在某些图像操作中,对图像的类型有要求,所以要涉及到对图像类型进行转换。Matl
12、ab7.0图像处理工具箱为我们供应了不同图像类型相互转换的大量函数,如mat2gray()函数可以将矩阵转换为灰度图像,rgb2gray()转换RGB图像或颜色映像表为灰度图像。在类型转换的时候,我们还常常遇到数据类型不匹配的状况,针对这种状况,Matlab7.0工具箱中,也给我们供应了各种数据类型之间的转换函数,如double。就是把数据转换为双精度类型的函数。2.2.3 图像增加图像增加的目的是为了改善图像的视觉效果,提高图像的清楚度和工艺的适应性,以及便于人及计算机的分析和处理,以满意图像复制或再现的要求。图像增加的方法分为空域法和频域法两大类,空域法主要是对图像中的各个像素点进行操作;
13、而频域法是在图像的某个变换域内对整个图像进行操作,并修变更换后的系数,如傅立叶变换、DCT变换等的系数,然后再进行反变换,便可得到处理后的图像。下面以空域增加法的几种方法加以说明。(1) .灰度变换增加有多种方法可以实现图像的灰度变换,其中最常用的就是直方图变换的方法,即直方图的均衡化。这种方法是一种使输出图像直方图近似听从匀称分布的变换算法。Matlab7.0图像处理工具箱中供应了图像直方图均衡化的具体函数histeq(),同时我们可以用函数imhist()函数来计算和显示图像的直方图。(2) .空域滤波增加空域滤波依据空域滤波器的功能又可分为平滑滤波器和锐化滤波器。平滑滤波器可以用低通滤波
14、实现,目的在于模糊图像或消退噪声;锐化滤波器是用高通滤波来实现,目的在于强调图像被模糊的细微环节。在Matlab中,各种滤波方法都是在空间域中通过不同的滤波算子实现,可用fspecial()函数来创建预定义的滤波算子,然后可以运用imfilter()或filter2()函数调用创建好的滤波器对图像进行滤波。2.2.4 边缘检测数字图像的边缘检测是图像分割、目标区域识别、区域形态提取等图像分析领域特别重要的基础,也是图像识别中提取图像特征的一个重要属性。边缘检测算子可以检查每个像素的邻域并对灰度变更率进行量化,也包括对方向的确定,其中大多数是基于方向导数掩模求卷积的方法。常用的有Sobel算子,
15、Prewitt算子,Roberts算子,Log算子等。Matlab7.0工具箱中供应的edge()函数可以进行边缘检测,在其参数里面,可以依据须要选择合适的算子及其参数。2. 3图像处理功能的Matlab实现实例本文通过运用图像处理工具箱的有关函数对一人脸的彩色图像进行处理。1)图像类型的转换因后面的图像增加,边缘检测都是针对灰度图像进行的,而我们的原图是RGB图像,所以首先我们要对原图类型进行转换。实现过程代码如下:i=imread(,ffacel.jg,)j=rgb2gray(i);imshow(j);imwrite(j,f:facel.tif)效果图2.1图2.12)图像增加(1)灰度图像直方图均衡化通过比较原图和直方图均衡化后的图像可见,图像变得更清楚,而且均衡化后的直方图比原直方图的形态更志向。该部分的程序代码如F:i=imread(,ffacel.tif);j=histeq(i);imshow(j);figure,subplot(1,2,1),imhist(i);subplot(l,2,2),imhist(j)执行后的效果图如图2.2和图2.3:像图2.2均衡化后的灰度图图2.3均衡化前后的直方图对比图