您好,欢迎访问三七文档
当前位置:首页 > 行业资料 > 国内外标准规范 > SVM分类器-人脸识别专题报告
SVM分类器-人脸识别专题报告摘要:本次试验报告,介绍了人脸识别方法分类器的设计并进行人脸识别。主要是设计SVM分类器,并用来进行人脸分类识别,并对分类器实验结果做出分析。实验主要步骤:首先对图像预处理,转换成向量,再通过PCA算法对ORL人脸数据库图像进行降维特征提取,运用SVM工具箱对数据进行训练,再利用SVM分类方法对特征向量进行分类识别,寻找和待识别图片最为接近的训练样本第一张图片。最后在matlab上进行实验仿真,分析实验结果。关键字:最近邻法、PCA算法、多类SVM、人脸识别1.引言人脸识别是模式识别的一个发展方向和重要应用,人脸检测和识别在安全识别、身份鉴定、以及公安部门的稽查活动中有重要作用。本文主要使用PCA算法、多类SVM训练和SVM分类器设计人脸识别算法。从ORL人脸图像数据库中,构建自建人脸训练数据库和测试数据库,采用K-L变换进行特征脸提取,并实现人脸识别。通过K-L变换在人脸识别中的应用,加深对所学内容的理解和认识,进一步加深理解模式识别的算法。2.人脸识别系统完整的人脸识别系统至少包括两个主要环节。首先在输入图像中找到人脸的位置即人脸检测,将人脸从背景中检测出来;其次,将检测到的人脸图像进行预处理、特征提取和识别。如下图1所示:多类SVM训练图1人脸识别系统虽然有诱人的应用前景,但是在现实中却还没有开始大规模的使用。目前,国内外多所大学和研究机构已研制出一些较好的人脸识别原型系统,一些较成熟的商业人脸识别系统也已投入应用,但从技术的角度来看,大样本集、非可控条件下的稳健识别技术仍不成熟,用计算机自动进行人脸的定位和识别十分困难,目前的识别效果(正确率,速度)不如其他的生物识别技术,如指纹识别,视网膜识别等等。人们在日常生活中就进行了大量的人脸定位和识别工作,当然全部是由人的视觉系统和大脑“自动”进行的。目前还不清楚人的视觉系统和大脑的工作原理,因此这项人可以轻而易举完成的任务,牵涉到模式识别、图训练样本特征提取预处理特征提取预处理测试样本分类判决投影PCA象处理及生理、心理学等方面的诸多知识,对于目前还只会死板地执行程序指令的计算机来说却是极端困难。3.算法简述3.1PCA算法主成分分析(PrincipalComponentAnalysis,PCA)是一种掌握事物主要矛盾的统计分析方法,它可以从多元事物中解析出主要影响因素,揭示事物的本质,简化复杂的问题。计算主成分的目的是将高纬数据投影到较低维空间。给定n个变量的m个观察值,形成一个n*m的数据矩阵,n通常比较大。对于一个由多个变量描述的复杂事物,认识难度会很大,于是我们可以抓住事物主要方面进行重点分析,如果事物的主要方面刚好体现在几个主要变量上,那么我们只需要将体现事物主要方面的较少的几个主要变量分离出来,对此进行详细分析。但是,在一般情况下,并不能直接找出这样的关键变量。这时我们可以用原有变量的线性组合来表示事物的主要方面,PCA就是这样一种分析方法。3.2SVM算法支持向量机(SupportVectorMachine,SVM)是在统计学理论的基础上发展起来的新一代学习算法,它在文本分类、手写识别、图像分类、生物信息学等领域中获得较好的应用。相比于容易过度拟合训练样本的人工神经网络,支持向量机对于未见过的测试样本具有更好的推广能力。SVM是一个二分器,只能用于2类样本的分类,现在我们将它推广到多类问题。本文是对SVM进行推广到能够处理多类问题。采用一对一的投票策略。将A、B、C、D4类样本两类两类的分成训练集,即(A,B)、(A,C)、(A,D)、(B,C)、(B,D)、(C,D),得到6个(对于n类问题,为n(n-1)/2个)SVM二分器。在测试的时候,把测试样本x依次送入这6个二分器,采取投票形式,最后得到一组结果。投票是以如下方式进行。初始化:vote(A)=vote(B)=vote(C)=vote(D)=0.投票过程:如果使用训练集(A,B)得到的分类器将x判定为A类,则vote(A)=vote(A)+1,否则vote(B)=vote(B)+1;如果使用(A,C)训练的分类器将x判定为A类,则vote(A)=vote(A)+1,否则vote(C)=vote(C)+1;...;如果使用(C,D)训练的分类器将x判定为C类,则vote(C)=vote(C)+1,否则vote(D)=vote(D)+1。最终判决:Max(vote(A),vote(B),vote(C),vote(D))。如有两个以上的最大值,则一般可以简单地取第一个最大值所对应的类别。4.实验步骤该实验选取的是ORL人脸数据库作为实验样本,总共40个人,实验样本分为训练样本和测试样本。首先设置训练样本集,选择40个人前5张图片作为训练样本,进行训练,并将训练后的数据存放到multiSVMTrain.mat中保存。然后设置测试样本集,将40个人后5张图片作为测试样本,进行选取识别。实验流程图如下:(1)开始训练:整个训练过程,包括读入图像,PCA降维,以及多类SVM训练,实现的关键代码如下:display('读入人脸数据...');[imgRow,imgCol,FaceContainer,faceLabel]=ReadFaces(nFacesPerPerson,nPerson);...display('PCA降维...');[pcaFaces,W]=fastPCA(FaceContainer,20);%主成分分析PCA%pcaFaces是200*20的矩阵,每一行代表一张主成分脸(共40人,每人5张),每个脸20个维特征...%数据规格化display('Scaling...');[X,A0,B0]=scaling(X);训练完毕后,将数据保存。(2)开始识别:打开一张图片(每个人的后5张中选择),然后对该图片进行PCA变换降维,特征提取、规格化,从保存的训练数据库中读取数据,通过SVM分类器识别该测试样本的类别,并显示该图片对应人的第一张图片和类别。主要代码如下:%读入相关训练结果display('载入训练参数...');load('Mat/multiSVMTrain.mat');xNewFace=ReadAFace(newFacePath);%读入一个测试样本xNewFace=double(xNewFace);xNewFace=(xNewFace-meanVec)*V;%经过pca变换降维训练样本测试样本人脸库分类识别PCA特征提取预处理SVM分类器xNewFace=scaling(xNewFace,1,A0,B0);xNewFace=ReadAFace(newFacePath);%读入一个测试样本xNewFace=double(xNewFace);xNewFace=(xNewFace-meanVec)*V;%经过pca变换降维xNewFace=scaling(xNewFace,1,A0,B0);(3)最后进行测试:测试是指分类所有的测试样本(40个人的后50张图像,共200个样本),并计算识别率。主要实现代码如下:nFacesPerPerson=5;nPerson=40;bTest=1;%读入测试集合display('读入测试集合...');[imgRow,imgCol,TestFace,testLabel]=ReadFaces(nFacesPerPerson,nPerson,bTest);%读入相关训练结果display('载入训练参数...');load('Mat/PCA.mat');load('Mat/scaling.mat');load('Mat/trainData.mat');load('Mat/multiSVMTrain.mat');%PCA降维display('PCA降维处理...');[mn]=size(TestFace);TestFace=(TestFace-repmat(meanVec,m,1))*V;%经过pca变换降维TestFace=scaling(TestFace,1,A0,B0);%多类SVM分类display('测试集识别中...');classes=multiSVMClassify(TestFace);display('..............................');%计算识别率nError=sum(classes~=testLabel);accuracy=1-nError/length(testLabel);display(['对于测试集200个人脸样本的识别率为',num2str(accuracy*100),'%']);5.实验仿真该实验在Matlab上进行实验仿真,主要包括样本的训练、保存,打开一张待识别图片,然后调用训练数据库,对该图片进行识别,并显示出该人的第一张图片和该人的类别,以及对全部测试样本进行分类,并计算识别率。实验仿真结果图如下:6.总结与展望本次实验报告是基于SVM分类器,设计人脸识别系统,采用ORL人脸数据库,并对图片进行预处理,包括PCA降维、规格化、SVM分类,测试所有样本的类别并计算识别率,整个仿真在matlab上进行。最后识别率也能够接受,如果还要提高的话,可以选取更具区分能力的特征或者改善分类器本身的性能。本文主要参考了其他资料并进行部分改进,所以还存在一些问题和不足,希望老师指点。7.参考文献[1]张铮精通Matlab数字图像处理与识别2013.04[2]邓楠,基于主成份分析的人脸识别,2006.06[3]周涛,基于PCA的人脸识别研究,2004.07[4]王宇飞,基于特征脸和支持向量机的人脸识别方法研究与实现,2005.03
本文标题:SVM分类器-人脸识别专题报告
链接地址:https://www.777doc.com/doc-6716706 .html