基于直方图的人脸识别实现本科毕业设计论文.docx
《基于直方图的人脸识别实现本科毕业设计论文.docx》由会员分享,可在线阅读,更多相关《基于直方图的人脸识别实现本科毕业设计论文.docx(29页珍藏版)》请在冰豆网上搜索。
基于直方图的人脸识别实现本科毕业设计论文
基于直方图的人脸识别实现
本科毕业设计论文
毕业设计(论文)原创性声明和使用授权说明
原创性声明
本人郑重承诺:
所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。
尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得及其它教育机构的学位或学历而使用过的材料。
对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。
作者签名:
日 期:
指导教师签名:
日 期:
使用授权说明
本人完全了解大学关于收集、保存、使用毕业设计(论文)的规定,即:
按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。
作者签名:
日 期:
学位论文原创性声明
本人郑重声明:
所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。
除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。
对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。
本人完全意识到本声明的法律后果由本人承担。
作者签名:
日期:
年月日
学位论文版权使用授权书
本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。
本人授权 大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。
涉密论文按学校规定处理。
作者签名:
日期:
年月日
导师签名:
日期:
年月日
注意事项
1.设计(论文)的内容包括:
1)封面(按教务处制定的标准封面格式制作)
2)原创性声明
3)中文摘要(300字左右)、关键词
4)外文摘要、关键词
5)目次页(附件不统一编入)
6)论文主体部分:
引言(或绪论)、正文、结论
7)参考文献
8)致谢
9)附录(对论文支持必要时)
2.论文字数要求:
理工类设计(论文)正文字数不少于1万字(不包括图纸、程序清单等),文科类论文正文字数不少于1.2万字。
3.附件包括:
任务书、开题报告、外文译文、译文原文(复印件)。
4.文字、图表要求:
1)文字通顺,语言流畅,书写字迹工整,打印字体及大小符合要求,无错别字,不准请他人代写
2)工程设计类题目的图纸,要求部分用尺规绘制,部分用计算机绘制,所有图纸应符合国家技术标准规范。
图表整洁,布局合理,文字注释必须使用工程字书写,不准用徒手画
3)毕业论文须用A4单面打印,论文50页以上的双面打印
4)图表应绘制于无格子的页面上
5)软件工程类课题应有程序清单,并提供电子文档
5.装订顺序
1)设计(论文)
2)附件:
按照任务书、开题报告、外文译文、译文原文(复印件)次序装订
指导教师评阅书
指导教师评价:
一、撰写(设计)过程
1、学生在论文(设计)过程中的治学态度、工作精神
□优□良□中□及格□不及格
2、学生掌握专业知识、技能的扎实程度
□优□良□中□及格□不及格
3、学生综合运用所学知识和专业技能分析和解决问题的能力
□优□良□中□及格□不及格
4、研究方法的科学性;技术线路的可行性;设计方案的合理性
□优□良□中□及格□不及格
5、完成毕业论文(设计)期间的出勤情况
□优□良□中□及格□不及格
二、论文(设计)质量
1、论文(设计)的整体结构是否符合撰写规范?
□优□良□中□及格□不及格
2、是否完成指定的论文(设计)任务(包括装订及附件)?
□优□良□中□及格□不及格
三、论文(设计)水平
1、论文(设计)的理论意义或对解决实际问题的指导意义
□优□良□中□及格□不及格
2、论文的观念是否有新意?
设计是否有创意?
□优□良□中□及格□不及格
3、论文(设计说明书)所体现的整体水平
□优□良□中□及格□不及格
建议成绩:
□优□良□中□及格□不及格
(在所选等级前的□内画“√”)
指导教师:
(签名)单位:
(盖章)
年月日
评阅教师评阅书
评阅教师评价:
一、论文(设计)质量
1、论文(设计)的整体结构是否符合撰写规范?
□优□良□中□及格□不及格
2、是否完成指定的论文(设计)任务(包括装订及附件)?
□优□良□中□及格□不及格
二、论文(设计)水平
1、论文(设计)的理论意义或对解决实际问题的指导意义
□优□良□中□及格□不及格
2、论文的观念是否有新意?
设计是否有创意?
□优□良□中□及格□不及格
3、论文(设计说明书)所体现的整体水平
□优□良□中□及格□不及格
建议成绩:
□优□良□中□及格□不及格
(在所选等级前的□内画“√”)
评阅教师:
(签名)单位:
(盖章)
年月日
教研室(或答辩小组)及教学系意见
教研室(或答辩小组)评价:
一、答辩过程
1、毕业论文(设计)的基本要点和见解的叙述情况
□优□良□中□及格□不及格
2、对答辩问题的反应、理解、表达情况
□优□良□中□及格□不及格
3、学生答辩过程中的精神状态
□优□良□中□及格□不及格
二、论文(设计)质量
1、论文(设计)的整体结构是否符合撰写规范?
□优□良□中□及格□不及格
2、是否完成指定的论文(设计)任务(包括装订及附件)?
□优□良□中□及格□不及格
三、论文(设计)水平
1、论文(设计)的理论意义或对解决实际问题的指导意义
□优□良□中□及格□不及格
2、论文的观念是否有新意?
设计是否有创意?
□优□良□中□及格□不及格
3、论文(设计说明书)所体现的整体水平
□优□良□中□及格□不及格
评定成绩:
□优□良□中□及格□不及格
教研室主任(或答辩小组组长):
(签名)
年月日
教学系意见:
系主任:
(签名)
年月日
1绪论
本章提出了本文的研究背景及应用前景。
首先阐述了人脸图像识别意义;然后介绍了人脸图像识别研究中存在的问题;接着介绍了自动人脸识别系统的一般框架构成;最后简要地介绍了本文的主要工作和章节结构。
1.1研究背景
自70年代以来.随着人工智能技术的兴起.以及人类视觉研究的进展.人们逐渐对人脸图像的机器识别投入很大的热情,并形成了一个人脸图像识别研究领域,.这一领域除了它的重大理论价值外,也极具实用价值。
在进行人工智能的研究中,人们一自:
想做的事情就是让机器具有像人类一样的思考能力,以及识别事物、处理事物的能力,因此从解剖学、心理学、行为感知学等各个角度来探求人类的思维机制、以及感知事物、处理事物的机制,并努力将这些机制用于实践,如各种智能机器人的研制。
人脸图像的机器识别研究就是在这种背景下兴起的,因为人们发现许多对于人类而言可以轻易做到的事情,而让机器来实现却很难,如人脸图像的识别,语音识别,自然语言理解等。
如果能够开发出具有像人类一样的机器识别机制,就能够逐步地了解人类是如何存储信息,并进行处理的,从而最终了解人类的思维机制。
同时,进行人脸图像识别研究也具有很大的使用价依。
如同人的指纹一样,人脸也具有唯一性,也可用来鉴别一个人的身份。
现在己有实用的计算机自动指纹识别系统面世,并在安检等部门得到应用,但还没有通用成熟的人脸自动识别系统出现。
人脸图像的自动识别系统较之指纹识别系统、DNA鉴定等更具方便性,因为它取样方便,可以不接触目标就进行识别,从而开发研究的实际意义更大。
并且与图像不同的是,人脸图像受很多因素的干扰:
人脸表情的多样性;以及外在的成像过程中的光照,图像尺寸,旋转,姿势变化等。
使得同一个人,在不同的环境下拍摄所得到的人脸图像不同,有时更会有很大的差别,给识别带来很大难度。
因此在各种干扰条件下实现人脸图像的识别,也就更具有挑战性。
国外对于人脸图像识别的研究较早,现己有实用系统面世,只是对于成像条件要求较苛刻,构从事这方而的研究,应用范围也就较窄,己取得许多成果。
1.2人脸图像识别的应用前景
人脸图像识别除了具有重大的战性外,还其有许多潜在的应用前景,利用人脸图像来进行身份验证,可以不与目标相接触就取得样本图像,而其它的身份验证手段,如指纹、眼睛虹膜等必须通过与目标接触或相当接近来取得样木,在某些场合,这些识别手段就会有不便之处。
就从目前和将来来看,可以预测到人脸图像识别将具有广阔的应用前景,如表1-1中所列举就是其中已经实现或逐步完善的应用。
1.3本文研究的问题
本文介绍了人脸图像识别中所应用MATLAB对图像进行预处理,应用该工具箱对图像进行经典图像处理,通过实例来应用MATLAB图像处理功能,对某一特定的人脸图像处理进而应用到人脸识别系统。
本文在总结分析人脸识别系统中几种常用的图像预处理方法基础上,利用MATLAB实现了一个集多种预处理方法于一体的通用的人脸图像预处理仿真系统,将该系统作为图像预处理模块可嵌入在人脸识别系统中,并利用灰度图像的直方图比对来实现人脸图像的识别判定。
其中涉及到图像的选取,脸部定位,特征提取,图像处理和识别几个过程。
1.4系统识别的构成
人类似乎具有“与生俱来”的人脸识别能力,赋予计算机同样的能力是人类的梦想之一,这就是所谓的“人脸识别”系统。
假设我们把照相机、摄像头、扫描仪等看作计算机的“眼睛”,数字图像可以看作计算机观察到的影响。
(1)人脸图像的获取
一般来说,图像的获取都是通过摄像头摄取,但摄取的图像可以是真人,也可以是人脸的图片或者为了相对简单,可以不考虑通过摄像头来摄取头像,而是直接给定要识别的图像。
(2)人脸的检测
人脸检测的任务是判断静态图像中是否存在人脸。
若存在人脸,给出其在图像中的坐标位置、人脸区域大小等信息。
而人脸跟踪则需要进一步输出所检测到的人脸位置、大小等状态随时间的连续变化情况。
(3)特征提取
通过人脸特征点的检测与标定可以确定人脸图像中显著特征点的位置(如眼睛、眉毛、鼻子、嘴巴等器官),同时还可以得到这些器官信息的描述。
(4)基于人脸图像比对的身份验证
根据特征点的检测与标定的结果,通过某些运算得到人脸特征的描述。
即人脸确认(FaceVerification)问题。
系统在输入人脸图像的同时输入一个用户宣称的该人脸的身份信息,系统要对该输入人脸图像的身份与宣称的身份是否相符作出判断。
2图像处理的MATLAB实现
2.1MATLAB简介
由MathWork公司开发的MATLAB语言语法限制不严格,程序设计自由度大,程序的可移植性好。
MATLAB还推出了功能强大的适应于图像分析和处理的工具箱,常用的有图像处理工具箱、小波分析工具箱及数字信号处理工具箱。
利用这些工具箱,我们可以很方便的从各个方面对图像的性质进行深入的研究。
MATLAB图像处理工具箱支持索引图像、RGB图像、灰度图像、二进制图像并能操作.bmp,jpg,.tif等多种图像格式文件。
2.2数字图像处理及过程
图像是人类获取信息、表达信息和传递信息的重要手段。
利用计算计对图像复原、分割、提取特征等的理论、方法和技术成为数字图像处理。
图像处理技术己经成为信息科学、计算机科学、工程科学、地球科学等诸多方面的学者研究图像的有效工具。
数字图像处理主要包括图像变换、图像增强、图像编码、图像复原、图像重建、图像识别以及图像理解等内容。
2.2.1图像处理的基本操作
读取和显示图像可以通过imread()和imshow()来实现;图像的输出用imwrite()函数就可以很方便的把图像输出到硬盘上;另外还可以用imcrop(),imrisize(),imrotate()等来实现图像的裁剪、缩放和旋转等功能。
2.2.2图像类型的转换
MATLAB支持多种图像类型,但在某些图像操作中,对图像的类型有要求,所以要涉及到对图像类型进行转换。
MATLAB7.0图像处理工具箱为我们提供了不同图像类型相互转换的大量函数,如mat2gray()函数可以将矩阵转换为灰度图像,rgb2gray()转换RGB图像或颜色映像表为灰度图像。
在类型转换的时候,我们还经常遇到数据类型不匹配的情况,针对这种情况,MATLAB7.0工具箱中,也给我们提供了各种数据类型之间的转换函数,如double()就是把数据转换为双精度类型的函数。
2.2.3图像增强
图像增强的方法分为空域法和频域法两大类,空域法主要是对图像中的各个像素点进行操作;而频域法是在图像的某个变换域内对整个图像进行操作,并修改变换后的系数,如傅立叶变换、DCT变换等的系数,然后再进行反变换,便可得到处理后的图像。
下面以空域增强法的几种方法加以说明。
(1).灰度变换增强
有多种方法可以实现图像的灰度变换,其中最常用的就是直方图变换的方法,即直方图的均衡化。
这种方法是一种使输出图像直方图近似服从均匀分布的变换算法。
MATLAB7.0图像处理工具箱中提供了图像直方图均衡化的具体函数histeq(),同时我们可以用函数imbist()函数来计算和显示图像的直方图。
(2).空域滤波增强
空域滤波按照空域滤波器的功能又可分为平滑滤波器和锐化滤波器。
平滑滤波器可以用低通滤波实现,目的在于模糊图像或消除噪声;锐化滤波器是用高通滤波来实现,目的在于强调图像被模糊的细节。
在MATLAB中,各种滤波方法都是在空间域中通过不同的滤波算子
函数来创建预定义的滤波算子然后可以使用imfilter()或filter()函数用创建好的滤波器对图像进行滤波。
2.2.4边缘检测
数字图像的边缘检是图像分割、目标区域识别、区域形状提取等图像分析领域十分重要的基础,边缘检测算子可以检查每个像素的邻域并对灰度变化率进行量化,也包括对方向的确定,其中大多数是基于方向导数掩模求卷积的方法。
常用的有Sobel算子,Prewitt算子,Roberts算子,Log算子等。
MATLAB7.0工具箱中提供的edge()函数可以进行边缘检测,在其参数里面,可以根据需要选择合适的算子及其参数。
2.3图像处理功能的MATLAB实现实例
本文通过运用图像处理工具箱的有关函数对一人脸的彩色图像进行处理。
(1)图像类型的转换
因后面的图像增强,边缘检测都是针对灰度图像进行的,而我们的原图是RGB图像,所以首先我们要对原图类型进行转换。
实现过程代码如下:
i=imread('f:
\facel.jpg');j=rgb2gray(i);
imshow(j);imwrite(j,'f\facel.tif)
(2)图像增强
1灰度图像直方图均衡化
通过比较原图和直方图均衡化后的图像可见,图像变得更清晰,而且均衡化后的直方图比原直方图的形状更理想。
该部分的程序代码如下:
i=imread('f:
\facel.tif);
j=histeq(i);imshow(j);
figure,subplot(1,2,1),imhist(i);
subplot(1,2,2),imhist(j);
2灰度图像平滑与锐化处理
平滑滤波器的目的在于模糊图像或消除噪声,MATLAB7.0图像处理工具箱提供了medfilter2()函数用于实现中值滤波,实现对图像噪声的自适应滤波。
在本文实例中,为了使滤波效果更明显,我们事先为图像认为增加滤波,然后用自适应滤波方法对图像进行滤波。
锐化处理的目的在于强调图像被模糊的细节,在本实例中采用了预定义高斯滤波器的方法对图像进行锐化滤波。
功能实现的代码如下:
i=imread('f:
\fael.tif);
j=imnoise(I,'guassian',0,0,02);
subplot(1,2,1),imshow(j);
j1=winter2(j);subplot(1,2,2),imshow(j1);
h=fspecial('guassian',2,0,05);j2=imfilter(i,h);figure,subplot(1,2,1),imshow(i)
subplot(1,2,2),imshow(j2)
3边缘检测
MATLAB7.0图像处理工具箱提供了edge函数实现边缘检测,还有各种方法算子供选择,在本实例中采用了canny算子来进行边缘检测,程序代码如下:
i=imread('f:
face.tif);
j=edge(i',canny',[0.04,0.25],1.5);
imshouw(j);
3人脸图像识别计算机系统
3.1系统基本机构
人脸识别是一个复杂的过程,一个计算机人脸识别的流程包括几个步骤:
对采集到的图像,首先进行人脸检测(在输入图像中寻找人脸),给出人脸有无的结果;然后进行人脸定位,确定人脸的位置并提取出来。
对人脸的定位在输入是图像序列时一般也称为人脸跟踪。
通常检测和定位结合进行。
对提取出来的人脸借助人脸描述就可以进行人脸识别,即通过提取特征来确定其身份。
3.2人脸检测定位算法
人脸检测定位算法大致可分为两大类:
基于显式特征的方法和基于隐式特征的方法。
所谓显式特征是指对人类肉眼来说直观可见的特征,如肤色、脸部轮廓、脸部结构等。
基于显式特征的方法是指由人通过肉眼观察,总结出人脸区别于“非人脸”区域的特征,然后根据被检测区域是否满足这些“人脸特征”,来判定该区域是否包含人脸。
根据所选择的“人脸特征”,基于显式特征的方法分以下三类:
基于肤色模型的方法、模板匹配的方法、基于先验知识的方法。
在彩色图像中,颜色是人脸表面最为显著的特征之一,利用颜色检测人脸是很自然的想法。
Yang等在考察了不同种族、不同个体的肤色后,认为人类的肤色能在颜色空间中聚成单独的一类,而影响肤色值变化的最主要因素是亮度变化。
因此他们采用广泛使用的RGB颜色空间,在滤去亮度值的图像中通过比较像素点的r、g值与肤色范围来推断该像素点及其邻域是否属于人脸区域。
除了RGB颜色空间,还有诸如HIS,LUV,GLHS等其它颜色空间被使用。
寻找到肤色区域后,必须进行验证,排除类肤色区域。
Yoo等利用肤色像素的连通性分割出区域,使用椭圆拟合各个区域,根据椭圆长短轴的比率判断是否为人脸。
模板匹配的方法一般是人为地先定义一个标准人脸模板,计算输入图像与模板的似然度;然后,确定一个似然度阂值,用以判断该输入图像中是否包含人脸。
标准人脸模板可以是固定的样板,也可以是带参变量的曲线函数。
基于先验知识的方法则采用符合人脸生理结构特征的人脸镶嵌图(mosaicimage)模型,并在分析了足够多的人脸图像样本的基础上,针对人脸的灰度、边缘、纹理等信息,建立一种关于人脸的知识库。
在检测中,首先抽取这些灰度、边缘等信息,然后检验它是否符合知识库中关于人脸的先验知识。
基于隐式特征的方法将人脸区域看成一类模式,使用大量“人脸”、“非人脸”样本训练、构造分类器,通过判别图像中所有可能区域是否属于“人脸模式”的方法来实现人脸检测。
这类方法有:
特征脸法、人工神经网络法、支持向量机法、积分图像法。
特征脸法(eigenface)把单个图像看成一维向量,众多的一维向量形成了人脸图像特征空间,再将其变换到一个新的相对简单的特征空间,通过计算矩阵的特征值和特征向量,利用图像的代数特征信息,寻找“人脸”、“非人脸”两种模式在该特征空间中的分布规律。
人工神经网络(ArtificialNeuralNetwork,ANN)的方法是通过训练一个网络结构,把模式的统计特性隐含在神经网络的结构和参数之中。
基于入工神经网络的方法对于复杂的、难以显式描述的模式,具有独特的优势。
支撑向量机(SupportVectorMachine,SVM)法是在统计学习理论基础上发展出的一种新的模式识别方法,它基于结构风险最小化的原理,较之于基于经验风险最小化的人工神经网络,一些难以逾越的问题,如:
模型选择和过学习问题、非线性和维数灾难问题、局部极小点问题等都得到了很大程度上的解决。
但是直接使用SVM方法进行人脸识别有两方面的困难:
第一,训练时需要求解二次规划问题计算复杂度高,内存需求量巨大;第二,在非人脸样本不受限制时,需要极大规模的训练集合,得到的支持向量会很多,使得分类器的计算量过高。
基于积分图像(IntegralImage)特征的人脸检测方法是Viola等新近提出的一种算法,它综合使用了积分图像描述方法、Adaboost学习算法及训练方法、级联弱分类器。
运用MATLAB仿真进行人脸检测定位实例:
人脸检测定位程序:
%%%%%ReadingofaRGBimage
i=imread('facel.jpg');
I=rgb2gray(i);
BW=im2bw(I);
figure,'nnshow(BW)
[n1n2]=size(BW)
r=floor(n1/10)
c=floor(n2/10)
x1=2;x2=r
s=r*c;
fori=1:
10
yl=l;y2=c;
forj=1:
10
if(y2<=c|y2>=9*c)|(x1==1|x2==r*10)
loc=find(BW(xl:
x2,yl:
y2)==0);
[op]=size(loc);
pr=o*100/s;
ifpr<=100
BW(xl:
x2,yl:
y2)=0;
rl=xl;r2=x2;sl=yl;s2=52;
prl=0;
end
imshow(BW)
end
yl=yl+c;
y2=y2+c
end
xl=xl+r;
x2=x2+r
end
figure,imshow(BW)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%detectionoffaceobject
L=bwlabel(BW,8);
BB=regionprops(L,'BoundingBox');
BBl=struct2ce11(BB);
BB2=cell2mat(BBl);
[s1s2]=size(BB2);
mx=0;
fork=3:
4;s2-1
p=BB2(l,k)*BB2(l,k+1);
ifp>mx&(BB2(l,k)/BB2(l,k+l))mx=p;
j=k;
end
end
figure,imshow(I);
holdon;
rectangle('Position',[BB2(l,j-2),BB2(l,j-1),BB2(1j),BB2(l,j+l)],'EdgeColor','r')
3.3人脸图像的预处理
不同的人脸识别系统根据其采用的图像来源和识别算法需要不同,采用的预处理方法也不同。
常用的人脸图像预处理方法有:
滤波去噪、灰度变换、图像二值化、边缘检测、尺寸归一化、灰度归一化等。
用在同一系统中的可能只有其中一种或几种预处理方法,但一旦库中采集到的