版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、毕业设计(论文)题目名称:基于主成分分析(PCA)的人脸识别门禁软件开发人脸识别院系名称:计算机学院级:计科092班号:2013年6月姓名:陈冠君毕业设计(论文)题目:基于逐成分分析PCA)的人脸识别门进软件开发论文编号:200900814214基于主成分分析(PCA)的人脸识别门禁软件开发人脸识别Facerecognitionaccesscontrolsoftwaredevelopmentbasedonprincipalcomponentanalysis(PCA)-FaceRecognition院系名称:计算机学院班级:计科092班学号:200900814214学生姓名:陈冠君指导教师:陆筱
2、霞2013年6月中文摘要随着安全入口控制需求的快速增长,生物统计识别技术得到了新的重视。由于人脸的易采集、非接触等优点使得人脸特征作为人生物特征应用受到越来越多的关注,其中最主要就是人脸识别.本文主要介绍一个人脸识别门禁系统的核心功能模块.本文的设计是基于OpenCV库的,以VS2012软件作为开发工具,主要从需求分析,系统概要设计,关键技术、详细设计和实现几方面来介绍开发过程,最后进行运行测试。在人脸检测基础上,提取人脸进行识别在人脸识别方法上,本软件主要采用主成分分析法(PCA)。将大数据维度进行降维,投影到低维空间,利用欧氏距离计算置信度,达到阀值的训练数据作为判定识别标准。关键词:人脸
3、检测;人脸识别;主成分分析法(PCA)AbstractWiththerapidgrowthofsecurityaccesscontrol,biometricidentificationtechnologyhasbeenanewemphasis。Easyacquisitionoftheface,thenoncontact,etc。makesfacialfeatureasbiometricapplicationsaremoreandmoreattention,ofwhichthemostimportantisfacerecognition.Thispaperdescribesafacerecogn
4、itionaccesscontrolsystemisthecorefunctionalmodules.ThisdesignisbasedontheOpenCVlibrarytoVS2012softwareasadevelopmenttool,mainlyfromtheneedsanalysis,outlinedesign,keytechnologies,detaileddesignandimplementationaspectstointroducethedevelopmentprocess,andfinallyrunthetest。Onthebasisoffacedetection,thee
5、xtractionoffaceidentification。Facerecognitionmethods,thesoftwareusingprincipalcomponentanalysis(PCA)。Thedimensionsofthebigdatadimensionalityreduction,projectedtolow-dimensionalspaceusingtheEuclideandistancetocalculatetheconfidencetoreachthethresholdoftrainingdataasthedecisiontoidentifystandards。Keyw
6、ords:FaceDetection;Facerecognition;principalcomponentanalysis(PCA);目录TOC o 1-5 h z HYPERLINK l bookmark8 中文摘要2Abstract3目录 HYPERLINK l bookmark12 第一章绪论0 HYPERLINK l bookmark14 1。1前言0 HYPERLINK l bookmark16 1。2课题应用背景与研究意义0 HYPERLINK l bookmark18 1.3人脸识别类软件的发展现状1 HYPERLINK l bookmark20 1。4系统可行性研究11。4。1
7、为什么选用OpenCV1 HYPERLINK l bookmark22 开发环境的配置1 HYPERLINK l bookmark50 1。5本毕业设计工作和论文结构安排2 HYPERLINK l bookmark52 1。5。1本毕业设计工作2 HYPERLINK l bookmark54 1。5。2论文结构安排3 HYPERLINK l bookmark56 第二章系统需求分析3 HYPERLINK l bookmark58 2.1功能需求3 HYPERLINK l bookmark60 2。2非功能需求4 HYPERLINK l bookmark62 2。2.1系统的易用性4系统可靠性4
8、 HYPERLINK l bookmark64 2.2.3系统可扩展性4 HYPERLINK l bookmark66 第三章系统概要设计4 HYPERLINK l bookmark68 3。1设计思想4 HYPERLINK l bookmark70 人脸数据获取方式4 HYPERLINK l bookmark72 人脸训练识别方式5 HYPERLINK l bookmark74 添加功能提示53。2系统功能结构设计5 HYPERLINK l bookmark76 第四章系统详细设计5 HYPERLINK l bookmark78 4.1OpenCV主要函数介绍5 HYPERLINK l bo
9、okmark138 关键功能部分函数设计实现8 HYPERLINK l bookmark140 4.2。1摄像头操作:8 HYPERLINK l bookmark142 4。1.2人脸检测功能:8 HYPERLINK l bookmark144 4。1.3图像特征训练提取:9 HYPERLINK l bookmark146 4.1.4训练图像保存:9 HYPERLINK l bookmark148 4.1.5身份识别验证功能:9 HYPERLINK l bookmark150 第五章系统运行测试105.1人脸识别系统模块测试10 HYPERLINK l bookmark152 5。2运行效果图
10、12 HYPERLINK l bookmark154 测试效率测评16 HYPERLINK l bookmark156 第六章小结18附录19 HYPERLINK l bookmark160 附录A:主要源程序19 HYPERLINK l bookmark179 附录B:软件使用说明书30 HYPERLINK l bookmark189 附录C:光盘31姓名:陈冠君毕业设计(论文)题目:基于逐成分分析PCA)的人脸识别门进软件开发姓名:陈冠君毕业设计(论文)题目:基于逐成分分析PCA)的人脸识别门进软件开发 第一章绪论1。1前言人类进入21世纪,随着计算机和网络技术的日渐发达,信息安全的隐患日
11、益突出,自911之后,各国越来越重视社会公共安全,信息识别和检测显得前所未有的重要。现今社会中主要采用号码、磁卡和口令等识别方法,随着技术的发展,这些传统的身份识别方法已受到越来越多的挑战,存在的易丢失、易伪造、易遗忘等诸多问题,可靠性也大为降低,生物体征作为每个人独一无二的特征,进入人们眼界,成为新的信息识别和检测技术的载体,从而指纹、虹膜以及人脸等作为主要依据,得以发展。相对于其它的人体生物特征,人脸存在易采集、非接触、静态等优点,比较容易被接受。在科技发展的时代,得到很大程度的发展,应用也越来越广泛。尤其在国家安全、军事安全和公共安全领域发挥重要作用,典型代表就是智能门禁、海关身份验证、
12、智能视频监控等应用。近年来,随着计算机性能提高和算法的不断成熟,人脸识别技术得到很大发展,在证件验证、出入口安全监控、信息安全、视频监控等许多应用都和人脸识别技术密切相关。1.2课题应用背景与研究意义本课题根据学校要求,选用实际公司项目研究,在对人脸识别技术研究分析的基础上,选定该题目。人类进入21世纪,随着计算机和网络技术的日渐发达,信息安全的隐患日益突出,自911之后,各国越来越重视社会公共安全,信息识别和检测显得前所未有的重要。现今社会中主要采用号码、磁卡和口令等识别方法,随着技术的发展,这些传统的身份识别方法已受到越来越多的挑战,存在的易丢失、易伪造、易遗忘等诸多问题,可靠性也大为降低
13、,生物体征作为每个人独一无二的特征,进入人们眼界,成为新的信息识别和检测技术的载体,从而指纹、虹膜以及人脸等作为主要依据,得以发展。相对于其它的人体生物特征,人脸存在易采集、非接触、静态等优点,比较容易被接受。在科技发展的时代,得到很大程度的发展,应用也越来越广泛。本课题主要关注就是人脸识别,主要内容包括:图像获取及人脸检测提取,人脸特征提取,人脸识别实现方面,可以使用C+实现相关算法,也可以利用现有的函数库。本课题主要是基于OpenCV开发的人脸识别门禁软件。1.3人脸识别类软件的发展现状人脸识别系统的研究开始于20世纪60年代。其优势在于其自然性和不被被测试个体察觉的特点。人脸识别就是通过
14、观察比较人脸来区分和确定人的身份的。不被察觉的特点会使识别方法不令人反感,而且不容易引起人注意故而不易被欺骗。相对指纹识别而言,人脸识别的非接触特点,使得其更加友好,自然,被人们接受。随着科技的发展和安全需求的增加,人脸识别技术应用已经受到重视.在公安刑侦领域,人脸识别技术应用十分广泛,目前还逐渐向民用市场推广,离人们的生活越来越近.发展前景不可限量,随着数字化、信息化社会的到来,人们对人脸识别技术的了解和认识越来越多,人脸识别技术也越将越来越来成熟和完善。1.4系统可行性研究可行性研究是为了对问题进行研究,以最小代价在最短时间确定问题是否可解。经过对项目详细研究,初拟系统实现报告,对可能将要
15、遇到的问题及解决方案进行设计和安排,明确开发风险和效益.1.4。1为什么选用OpenCV近年来,大数据量,时势性图像处理广泛应用于各个领域.各种各样的图像处理软件包围图像分析和处理提供便利的同时也存在许多问题。英特尔公司提供的OpenCV类库在VC+环境下进行图像处理和计算机视觉编程的方法、和免费试用的优势,缩短相关程序开发周期,具有强大的实用价值,是指在相关软件包中占据领先,成为一种流行的图像处理软件。选用OpenCV主要因为里面封装的类库可以直接使用,非常方便。它不依赖与其它的外部库,拥有400多个免费的图像处理函数,涉及领域涵盖了机器视觉的大多应用。1。4。2开发环境的配置对于OpenC
16、V的配置,可以使用CMake编译生成针对编辑器的工程,产生符合编译器的库.也可以直接使用源码中本身带有的编译好的库。在这里我们使用自带的库文件。1)安装OpenCV:将获取的安装文件安装到D:opencv2.4。4opencv,并将对应使用的bin目录D:opencv2o4.4opencvbuildx86vc11bin添加到环境变量PATH中;2)配置VS2012“项目”一一“属性一一“VC+目录”中配置包含目录:添加D:opencv2.4.4opencvbuildinclude姓名:陈冠君毕业设计(论文)题目:基于逐成分分析PCA)的人脸识别门进软件开发姓名:陈冠君毕业设计(论文)题目:基于
17、逐成分分析PCA)的人脸识别门进软件开发 库目录:添加D:opencv2。4.4opencvbuildx86vclllib对于依赖项配置有两种方法,一种在项目属性页中“链接器”-“输入”中附加依赖项中添加需要用到的。lib文件。第二种方法是在程序中加载,也就是本系统中使用的方法。#ifdefWIN32ifdef_DEBUGpragmacomment(lib,”opencv_highgui244d。lib”)#pragmacomment(lib,”opencv_core244d.lib”)#pragmacomment(lib,”opencv_imgproc244d.lib)#pragmacomm
18、ent(lib,opencv_video244d。lib”)#pragmacomment(lib,opencv_calib3d244d.lib”)pragmacomment(lib,opencv_objdetect244d。lib)#pragmacomment(lib,opencv_legacy244d.lib”)#else#pragmacomment(lib,”opencv_highgui244。lib”)#pragmacomment(lib,opencv_core244.lib”)pragmacomment(lib,opencv_imgproc244。lib)pragmacomment(l
19、ib,”opencv_video244。lib)#pragmacomment(lib,opencv_calib3d244.lib”)#pragmacomment(lib,”opencv_objdetect244.lib”)#pragmacomment(lib,”opencv_legacy244。lib)endif#endif系统主要实现三大功能,人脸检测,特征提取和人脸识别,辅助一些功能。具有开发可行性因此可以开发该系统.1。5本毕业设计工作和论文结构安排1。5.1本毕业设计工作本次毕业设计课题主要工作是在VS2012环境下通过OpenCV库完成人脸检测和人脸识别功能设计。第一阶段,搜索需求技
20、术知识,配置系统开发环及功能这一阶段主要是准备工作。主要是搜集图像处理人脸识别的相关资料,了解OpenCV库的相关知识,详细了解了相关函数,制定开发框架。系统在PC上搭建开发平台。这里我们开发平台选择Win7操作系统平台,在VS2012环境下配置使用OpenCV库.第二阶段,实现各个功能在开发期间,主要实现一下功能:1)从摄像头获取图像并对图像进行一定预处理;2)从获取图像中检测提取人脸区域;3)提取人脸图像并保存,同时写入文件;4)读取文件,读取图像进行训练得到特征信息;5)保存的得到的特征信息至xml文件;6)读取xml文件,得到特征信息;7)识别人脸,并计算置信度。8)辅助功能实现,包扩
21、添加用户,重置数据,输出特征图像、平均图像等。9)从人脸数据库中子集读取人脸数据进行训练,提取特征,并选取另一子集人脸图像进行识别测试。10)查看生成的平均人脸图像和特征人脸。最后完成开发测试,测试运行良好。1。5.2论文结构安排第一章:绪论:包括前言、应用背景与研究意义、人脸检测定位及跟踪发展现状、系统可行性研究以及本文主要内容;第二章:系统需求分析:包括功能需求、性能需求、运行需求;第三章:系统概要设计:包括设计思想、系统功能结构图;第四章:系统详细设计:功能模块设计、各模块的主要函数功能;第二章系统需求分析随着安全要求的不断提高,人脸识别技术逐渐应用于各种场合,如门禁系统,人脸签到,人脸
22、密码等等,因此设计一个人脸识别软件对于门禁系统可以扩展人脸识别技术的应用。对于人脸识别门禁系统,有如下目标:1、操作简单;2、识别精确度。考虑到软件应用场合及主要功能,设计出操作简单快捷的软件,使得软件简单实用,符合大众需求。2。1功能需求系统主要实现人身份识别,功能包括以下几个方面:摄像头操作:包括摄像头打开与关闭,从摄像头读取图像并显示到界面上。检测操作:从摄像头画面中检测提取人脸.图像保存功能:提取的人脸图像保存为pgm图片。文件读写功能:读写txt文件,保存提取人脸图像信息;读写xml文件,保存读取人脸特征等信息。添加用户重训练功能:添加用户,重新训练得到特征脸和人脸特征,并保存。人脸
23、识别功能:识别显示当前人脸身份。重置数据功能:清除原有训练数据,便于重新训练.2.2非功能需求2。2.1系统的易用性由于此系统是面向非专业操作人员的实用性程序,因此要求此系统具有易用性。2.2.2系统可靠性要求系统发生错误时,通知用户错误信息,以保证系统可靠性。2。2.3系统可扩展性软件可扩展性是评价软件性能一个重要指标.为了是系统具有一定可扩展性,设计过程中尽量使各个模块相对独立,为扩展留余地。第三章系统概要设计在人脸识别门禁软件需求分析阶段中,已经将系统需求做了详细阐述,本阶段在此需求分析基础上,对其做概要设计,意在解决实现该系统需求的模块设计问题。3。1设计思想3。1。1人脸数据获取方式
24、考虑到要进行人脸识别,首先要获取人脸图像数据,要测试识别算法,需要大量数据,因此我们采用公开的人脸图像库进行静态图像测试,再进而使用摄像头获取人脸实现系统功能,故人脸数据获取方式有两种,一种是直接从人脸数据库中获取,另一种从摄像头数据中姓名:陈冠君毕业设计(论文)题目:基于逐成分分析PCA)的人脸识别门进软件开发 检测提取得到.3.1.2人脸训练识别方式为保障可以添加用户,实现多用户使用识别,需要添加用户功能,这样就需要动态训练人脸数据,识别确认训练识别方法采用PCA算法处理,添加新用户时重新对新的建立的数据库进行训练得到训练数据.3。1.3添加功能提示为了使模块功能清晰表现,便于用户操作,添
25、加功能提示信息引导。3。2系统功能结构设计本软件设计实现主要两部分:静态人脸数据库测试验证部分和实时摄像头中提取数据实际功能实现部分。第四章系统详细设计此章节对人脸识别门禁系统实现功能实现进行详细分析和设计.4.1OpenCV主要函数介绍1)cvLoadlmage从文件中读取图像IplImage*cvLoadlmage(constchar*filename,intflags=CV_LOAD_IMAGE_COLOR);函数cvLoadlmage从指定文件读入图像,返回读入图像的指针。其中filename是要被读入的文件的文件名flags指定读入图像的颜色和深度。2)cvSaveImage保存图像
26、到文件intcvSaveImage(constchar*filename,constCvArr*image);函数cvSavelmage保存图像到指定文件。其中filename保存文件名.image要保存的图像.图像格式的的选择依赖于filename的扩展名,只有8位单通道或者3通道(通道顺序为BGR)可以使用这个函数保存。cvQueryFrame从摄像头或者文件中抓取并返回一帧IplImagecvQueryFrame(CvCapturecapture);函数cvQueryFrame从摄像头或者文件中抓取一帧,然后解压并返回这一帧。这个函数仅仅是函数cvGrabFrame和函数cvRetrie
27、veFrame在一起调用的组合。返回的图像不可以被用户释放或者修改。其中capture视频获取结构。.cvCaptureFromCAM初始化摄像头CvCapture*cvCaptureFromCAM(intindex);函数cvCaptureFromCAM给从摄像头的视频流分配和初始化CvCapture结构。其中index要使用的摄像头索引。如果只有一个摄像头或者用哪个摄像头也无所谓,那使用参数T应该便可以.cvHaarDetectObjects用来检测图像中的人脸区域CVAPI(CvSeq*)cvHaarDetectObjects(constCvArr*image,CvHaarClassif
28、ierCascade*cascade,CvMemStorage*storage,doublescale_factorCV_DEFAULT(1。1),intmin_neighborsCV_DEFAULT(3),intflagsCV_DEFAULT(O),CvSizemin_sizeCV_DEFAULT(cvSize(00),CvSizemax_sizeCV_DEFAULT(cvSize(0,0);用于快速检测人脸区域,便于提取得到人脸数据。其中image为被检图像cascade为haar分类器级联的内部标识形式,storage为用来存储检测到的一序列候选目标矩形框的内存区域,scale_fact
29、or在前后两次相继的扫描中,搜索窗口的比例系数,例如1.1指将搜索窗口依次扩大10%,min_neighbors为构成检测目标的相邻矩形的最小个数(缺省一1),flags为操作方式,min_size为检测窗口的最小尺寸。缺省的情况下被设为分类器训练时采用的样本尺寸(人脸检测中缺省大小是20X20).cvRectangle绘制矩形CVAPI(void)cvRectangle(CvArr*img,CvPointpt1,CvPointpt2,CvScalarcolor,intthicknessCV_DEFAULT(1),intline_typeCV_DEFAULT(8),intshiftCV_DEF
30、AULT(0);绘制出检测到人脸区域并显示,便于使用者观看是否检测出人脸,。其中img为图像,pt1矩形的一个顶点,pt2-矩形对角线上的另一个顶点,color一线条颜色(RGB)或亮度(灰度图像)(grayscaleimage),thickness组成矩形的线条的粗细程度,取负值时(如CV_FILLED)函数绘制填充了色彩的矩形,line_type-线条的类型。见cvLine的描述,shift坐标点的小数点位数。cvResize重置图像大小CVAPI(void)cvResize(constCvArr*src,CvArr*dst,intinterpolationCV_DEFAULT(CV_IN
31、TER_LINEAR);重置图像大小,使图像归一到同样大小。interpolation插值方式:选择用线性插值(CV_INTER_LINEAR)和区域插值(CV_INTER_AREA)。cvOpenFileStorage打开存在或创建新的文件CVAPI(CvFileStorage*)cvOpenFileStorage(constchar*filename,CvMemStorage*memstorage,intflags,constchar*encodingCV_DEFAULT(NULL);把训练数据保存至xml文件,通过此函数打开文件便于进行读写。flag有10种,这里用到其中读和写二种:CV
32、_STORAGE_READ(打开文件读数据)和CV_STORAGE_WRITE(打开文件写数据)。文件打开后有写操作和读操作函数:cvWrite();cvWritelnt();cvReadByName();cvReadIntByName().cvCalcEigenObjects计算引入矩阵的eigenvector(特征向量)、eigenvalue(特征根)、imageaverage(影像平均值)。CVAPI(void)cvCalcEigenObjects(intnObjects,void*input,void*output,intioFlags,intioBufSize,void*userDa
33、ta,CvTermCriteria*calcLimit,IplImage*avg,float*eigVals);OpenCV已经实现PCA关键算法之一,计算出传入图像阵列的特征值、特征向量和平均值。其中nObjects为样本个数,input为输入的影响矩阵,output为特征矩阵,calcLimit为回调结束条件,avg为平均值,eigVals特征根。cvEigenDecomposite透过eigenvector和原始影像集来解析每张图片降维后对应的系数coefficients.CVAPI(void)cvEigenDecomposite(IplImage*obj,intnEigObjs,voi
34、d*eigInput,intioFlags,void*userData,IplImage*avg,float*coeffs);OpenCV已经实现PCA关键算法之一,对输入图像投影到子空间,计算投影各维度系数,以此表示图像.其中。bj为输入目标图像,nEigObjs为选取的特征维数,eigInput为向量组成的变换矩阵,数据结构属于Ipllmage队列,或者根据ioFlag参数值变化的回调函数,avg为平均值,coeffs为输入图像对应的投影。11)cvConvertScale使用线性变换转换数组,得到可以保存显示的图像CVAPI(void)cvConvertScale(constCvArr*
35、src,CvArr*dst,doublescaleCV_DEFAULT(1),doubleshiftCV_DEFAULT(0);OpenCV要保存显示图像,图像数据必须是uchar格式,因此对于非uchar数据需要转换。其中src为输入数组,dst为输出数组,scale为比例因子,shift为该加数被加到输入数组元素按比例缩放后得到的元素上,采用公式dst(I)=src(I)*scale+(shift,shift,。.)进行转换。4.2关键功能部分函数设计实现4。2。1摄像头操作:要实现系统功能,首要先从摄像头中读取数据,为此,需要保证摄像头开启,为保证获取画面统一便于管理,通过cvSetCa
36、ptureProperty()函数设置摄像头分辨率为常用值(320*240),读取摄像头数据,返回Ipllmage图像数据,该部分需要实现的是打开摄像头、设置摄像头分辨率属性、读取摄像头图像,还有使用完后释放摄像头资源操作.软件启动后若选择不从文件中读取信息,自动启动摄像头获取图片。按“ESC键退出系统时自动回收资源,关闭摄像头,释放摄像头资源。4。1.2人脸检测功能:要实现人脸识别,首要先检测出人脸。实现该功能,接收摄像头中获取的图像数据,进行灰度化等操作,利用Haar特征,使用强级联分类器,搜索检测人脸区域,提取出可能的最大脸,为防止误检,进一步在提取出的区域再次对人眼进姓名:陈冠君毕业设
37、计(论文)题目:基于逐成分分析PCA)的人脸识别门进软件开发 行检测,过滤掉检测不到人眼的区域,从而有效地降低了人脸区域误检率,获取真正需要的人脸区域。人脸区域获取后,进一步提取出人脸图像,为了训练需要,还须对提取的图像进行大小归一化,使得得到的图像大小统一,为了进一步提高后续识别效率,对图像进行直方图均衡化,最后得到所需图像用于训练和识别。4。1.3图像特征训练提取:利用主成分分析法(PCA)算法对收集到的用户图像进行降维训练,提取人脸特征值主成分分析法实现主要分为几步完成:1、去均值2、计算协方差矩阵及其特征值和特征向量3、计算协方差矩阵的特征值大于阈值的个数4、降序排列特征值5、去掉较小
38、的特征值6、去掉较大的特征值(可有可无)7、合并选择的特征值8、选择相应的特征值和特征向量9、计算白化矩阵10、提取主分量。读取人脸训练集,利用PCA算法得到特征人脸和平均人脸,在此基础上把每张训练人脸投影到特征脸空间中得到投影数据作为每幅人脸的特征脸。满足系统要求,可能需要能够识别多人身份,因此需要能够添加用户。系统启动后,识别过程中,设置按下n键,进入添加用户模式,输入用户名开始自动采集用户脸部图像,开始训练提取特征数据。4。1.4训练图像保存:PCA算法过程中会计算出人脸的平均脸信息,和特征脸信息,但得到的这些信息是无法直接显示到屏幕上的,想要看到这些图像,就需要把其加以转换,得到可以直
39、接显示的格式。在这一阶段,计算出其最大值和最小值,对于超出数值范围和非数值的值进行过滤修改,然后利用cvConvertScale函数将float类型的值转化为需要的uchar类型,然后调用cvshowlmage进行保存.训练数据保存与加载:对于利用PCA得到的训练数据要在识别时使用,所以首先需要保存起来,在识别时读取并当前数据匹配。这个阶段主要涉及到文件的操作,包括文件的打开、关闭,写数据和读数据。4。1.5身份识别验证功能:整个系统中最关键重要的就是身份识别功能,之前实现人脸检测提取出当前用户的脸部信息,PCA数据训练得到平均人脸和人脸子空间等数据提供了基础,在此基础上,将当前用户脸部图像投
40、影到人脸子空间中,然后找出与投影脸欧式距离最近的训练人脸,计算距离与可信相似度,并与设置的阀值比较,当大于阀值时可以认为确认身份成功。当阀值设置过大时会使识别很困难,效率降低;而若阀值设置过小,容易把人脸识别错误,使得系统实用性降低,因此,选择一个合适的阀值非常重要,而阀值的选取有没有一个科学的准确依据,因此使得确定合适阀值比较困难。第五章系统运行测试一个软件系统的功能实现,首先要设计好功能流程布局,然后根据软件系统的要求编写代码,然后就是调试程序,最后完善总结.其中最重要的也最关键的就是中间这两部分。编写代码按部就班,照着流程走,一步步完善,最难的部分其实就是调试了,软件编写过程中,尤其是比
41、较大的软件系统中,一次性编写无误,不需调试是不可能的。在此次毕业设计中印象最深的就是调试了.在调试过程中曾遇到了不少的问题,不过经过查资料,不断分析可能的情况,一点点找到出问题的地方,进而找到解决方法。整个系统开发调试测试结果如下:5。1人脸识别系统模块测试表1:摄像头操作功能操作步骤操作描述期望结果实际结果测试状态1启动,进入视频识别模式摄像头被打开,窗口显示画面摄像头被打开,视频显示到窗口界面中通过2ESC系统退出摄像头被关闭摄像头被关闭通过结论:摄像头操作功能运行正确。表2:基于人脸数据库文件识别操作功能操作步骤操作描述期望结果实际结果测试状态1输入“train”进入测试训练模式从人脸数
42、据库中读取人脸提取特征,保存平均脸,特征脸,和投影脸等信息根据文件中提供的文件路径读取图像训练,得到并保存了平均脸,特征脸,和投影脸等信息通过2输入“test”读取测试人脸图像,进根据文件中提供的通过进入测试识别模式行投影识别,并计算相似置信值,输出结果路径读取测试人脸图像,进行投影识别,并计算相似置信值,输出了结果结论:基于人脸数据库文件识别操作功能运行正确。表3:基于摄像头人脸识别部分操作功能操作步骤操作描述期望结果实际结果测试状态1进入视频识别模式检测并标出摄像头捕获画面中的人脸区域,识别用户身份,输出识别出的身份及置信度可以检测并标出摄像头捕获画面中的人脸区域,识别用户身份,输出识别出
43、的身份及置信度通过2按f键,调整修改阀值在线调整修改阀值,控制识别结果阀值得到修改,识别结果同时得到控制通过3ESC系统退出窗口关闭,系统退出窗口关闭,系统退出通过结论:基于摄像头人脸识别部分操作功能运行正确。表4:其它操作部分功能操作步骤操作描述期望结果实际结果测试状态1保存图像训练过程自动保存平均脸和特征脸图像平均脸和特征脸图像得到保存通过2按n键,添加用户输入用户名,采集用户脸部信息,重新在线训练数据并保存输入用户名后,采集了用户脸部信息,并重新在线训练数据和保存所需数据通过4按e键,重置数据清除训练数据,便于重新设置数据清除了以前训练的数据通过结论:测试运行正确。5。2运行效果图1、基
44、于人脸数据库文件识别操作功能按y键进入人脸图像库识别模式,在此模式下有train和test两种操作:A):train操作,读取文件进行训练,得到训练数据,并显示平均脸和特征脸图像.测试通过,结果如下图:ItrainandtestfromfaceDataItrainoptest:train|Loadlnc(thetrainingimagesinJfiletest/train.txtJIDataloadedfromffiletest/tvain.txtJ:90imagesof10people).People:.尸詩onBersonO.DEPSomD.J.J.,J.,CpersonJ.Got90tr
45、aininginages.图51:读取图片集训练数据图5-2:显示平均人脸图像图5-3:显示特征脸图像,此为部分截图B):test操作,读取测试人脸集,识别身份,计算置信度。测试通过。结果如下图54。:rainandtestfpomaceData:y;rainortest:testdataloadedfpomJfiletest/test2-txt1:.5eople:,J-1G,Cpersonl,.y&testfacesloadedrrainingdataloaded90trainingimages3eople:JiJ,1G,.Truth=1Truth=1Truth=1Truth=1Truth=
46、1Truth=1Truth=2Truth=2Truth=2Truth=2Truth一2Truth=2Truth=3Truth=3Truth=3Truth=3,J-persoof10people):,J,J-persoleavestlearestleavestleavestlearestleavestlearestieai*!t:leavestlearesticrtiestlearestlearestleavestlearestleavest1,1,1,1,.(Correct-(Correct.(Correct-(Correct.(Correct-(Capped:_(Correct-(Corre
47、ct.(Gurrcict-(Correct-(Correct.-(Correct.(Correct.Confidence=1.000000Confidence=0.880060Confidence=0.881388Confidence=0.855981Confidence=0.887813Confidence=0.873264Confidence=1.000000Confidence=1-0I3I3I3BI3Confidence=1.000000Confidence=1.000000Confidence一1.000080Confidence=1.000000Confidence=1.00000
48、0Confidence=0.88N4U2Confidence=0.884320Confidence=0.8?82?2图5-4读取测试人脸集,显示识别信息2、基于人脸数据库文件识别操作功能按n键进入摄像头识别模式,显示操作功能键介绍,自动打开摄像头,如图5-5lecognizingfpepsoointliecamerariinanirltfifitfmiii打曲陥鮎理用:nether術JC滋36J(鸭jg肚j(術JC滋36J(漏JC谨舅WIfyum脸n:ttaaddn酣jsepsan理血as託hitfnJ*Ifytm曲n:ttoseetlieaueracfefac&Pplcisehit5*If脸
49、n:tPEt?asinallpleaseliit3aJ*#罠圧JCit屋犠舅JC离豪WeleoneBECfinitoreconiseIf倾tseedieeigreinfaces卫las:比hitJcJ*Ifpwwanttoexit,pleaseIdt,Esc,图55摄像头识别模式在此模式下,n键添加用户重新在线训练数据,测试通过,结果如图56StoringthecurrentfaceoffjunJintoinageJdata/1_junl.pg*StoringthecurrentfacecffjLinJintoimageJdata/1_jun2.pg*.Storingthecurrentfac
50、ecffjLinJintoimageJdata/1_jun3.pg*.StoringthecurrentfaceoffjunJintoinageJdata/1_jun4.pg*StoringthecurrentfacecffjLinJintoimageJdata/1_jun5.StovingtllCcurrentfaceoffJunJintoinag-cJdataZlJunGStoringthecurrentacenfjLinJintoimage1data/1_jun7.pgm.StoringthecurrentfacecffjunJintoimageJdata/1_jun8.pgm.Stor
51、ingthecurrentfacecffjunJintoimageJdata/1_jun9.pg*StoringthecurrentacenfjunJintoimage1data/1_junl0pgmStoringthecurrentfacecffjunJintoimageJdata/1_junllpgM.StoringthecurrentfacecffjunJintoimageJdata/1_junl2pgmStoringthecurrentacenfjunJintoimage1data/1_junl3pg*StoringthecurrentfaceofjLinJintoimageJdata
52、/1junl4pgEStoringthecurrentfaceoffjunJintoinageJdata/1_junl5pgmStoringthecurrentfacecffjunJintoimageJdata/1_junl6pgM.StoringthecurrentfacecffjunJintoimageJdata/1_junl?pgm鼻.StoringthecurrentfaceoffjunJintoinageJdata/1_junl8pgmStoringthecurrentfacecffjunJintoimageJdata/1_junl9pgM.Storingthecurrentface
53、cffjunJintoimageJdata/1_jun20pgm鼻.Storingthetrainingdataforneuperson1junJ.Enteryolifname:junCollecting10images,thentostartTrainingtheinagesasJjunHetraininguiththeneuperson.Loadingthetrainingimagesin*train-txt1Dataloadedfroinftrain.txtf:.People:.Got20trainingimages.Savingtheimageoftheauerageaceasfave
54、rageImage.bmpJ.Savingthe19eigenuectorimagesasJeigenfaces.bmp,Donepetpaining-图5-6添加用户重训练E:VSWorkersFaceDebugF3ce.exeJHostMostpersonMostlikelyperson:Mostlikelyperson:MostlikelypersonMostlikelypersonMostpersonjunfconid=JunJCconfidijLmfconfidejLmfconfidrjunconfidejLmfconfidejun*:(KM:KKKXKMKJCKWXKM沌:KKWX
55、KKKJCKXxxkjckjocx耳沌xjun*Hostlikelyperson:jLin.JOCJOOCWJOtlotJOCKH貝丫甘帀用议.,又丈j虫注A,.NJOOCJOCJOCJOOCJOCKNHi蓉七KM耳耳Mperson:fjunQ_756495JM耳耳mm妊mMMXKMNMKM0_7500图57人脸身份识别f键,修改调整阀值,输入新的阀值,开始重新识别,测试通过,结果如图58和图59.EntertheneuthreshoId:0.78Mostlikelypepson:Jju.nr图58重新设置新阀值E:VSVrkersFaceDeougFace.exe口耳旦莹jJHIlikely
56、person:JjunJconfidencelikelyperson:JjunJconfidencelikelypepson:JjunJ.身T”确认,多l匹Qi井AXKHXNWJCNKJCKNHXN追confidenccconfidencelikelypepson:Jjunconfidencelikelypelson:,junconidenceconfidenceperson=Jjunlikelyperson:Jjunlostperson:Jjunlikelyperson:Jjun0.786367純算XX算耳XXXi(宜算:耳XX耳X宜算X図XQ.7800图5-9新阀值下身份识别结果5.3测试
57、效率测评对于系统可靠性测试,测试其算法效率,采用从人脸图像数据库一个子集中读取数据并从另一个子集中身份识别,结果评定可以看出对同样的测试数据,每个人选5张图片进行训练时,虽训练集的扩大,测试结果正确率越高,还可以看出对于已训练的人测试时识别率是比较高的,达70以上。通过增加每个人的人脸图片数,每人选10张图片时,测试效率进一步提高。为了提高效率,在摄像头识别过程中,添加用户时,每个人采集20张图片进行训练,并设置阀值,进一步过滤可能识别错误的结果。使得识别准确性得到较大提高,但同时影响识别速度,造成识别速度有所减慢,如果人脸正面至于摄像头前,在1到2秒可以识别,还在可接受范围内。trainor
58、test:testDataloadedfromJfiletest/test2.txtf:.People:F,J,.50facesloadedTrainingdataloadedC19traininginagesofBpeople:People:.,.,.nearest=1,Truth=1(Correct.Cnnfidence=0.492735nearest=1,Truth=1(CorrectConfidence=0.485218nearest=1,Truth=1(Coprect.Cnnfidence=0.347600nearest=1,Iruth=1CCorvectGDnfidence=M.b
59、23blbnearest=1,Truth=1(Coprect.Conidence=0.475282ncarcsl;-1,Tiuth-2WnONG!J.ConFidcnccO.3SG5S9nearest=1,Truth=2WRDNG*).Confidence=0.380873nearest=1.Truth=2(WRONG?).Confidence=0.387057nearest=1,Truth=2WR0NG*).Confidence=0.329144nearest=1,Truth=2(WRONG*).Confidence=0.387932nearest=3,Truth=3.Cnnfidence=
60、0.539720nearest=3,Truth=3(CorrectConfidence=0.499572nearest=3,Truth=3CGorvect.Cnnfidence=0.483410nearest=3,Truth=3(CorrectCnnfidence=0.599356nearest-3,Tiuth一3CCoirect.Conidence-0.703197nearest=3,Truth=4WRDNGf).Confidence=0.481932nearest=3.Truth=4WRDNG*).Confidence=0.490389nearest=3,Truth=4(WRONG?).C
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年戏曲面试题库附答案解析
- 2026年临床药师感染性疾病用药指导模拟考试试题及答案解析
- 2026葡萄干贮藏保鲜技术应用与经济效益分析报告
- 2026葡萄酒罐装生产线智能化改造投资可行性报告
- 2026年中学教师招聘语文教学案例分析培训试卷
- 2026年事业单位招聘申论申论高分策略培训试卷
- 防震减灾安全教育教案
- 协同办公视角下比赛用足球机器人视觉子系统的深度开发与创新研究
- 协同办公视角下双主轴数控龙门钻铣床的研制与应用探索
- 协同办公视域下软装饰在新中式室内设计中的创新融合与应用研究
- 2015岩土锚杆与喷射混凝土支护工程技术规范
- 低血容量性休克总结2026
- 2025绍兴上虞区事业单位编外招聘22人(公共基础知识)综合能力测试题附答案解析
- 全国园林绿化养护概算定额(2018版)
- 2025年福建省工勤技能考试(行政事务人员技师)经典试题及答案
- 早产儿肠内营养管理
- 产品变更通知单模板PCN(4P)
- 分泌物廓清技术课件
- 2025至2030年中国视力训练仪行业市场现状分析及未来前景分析报告
- 2025年浙江嘉兴中新嘉善现代产业园开发有限公司招聘笔试参考题库含答案解析
- 德邦车管理制度
评论
0/150
提交评论