欢迎来到天天文库
浏览记录
ID:9518786
大小:163.88 KB
页数:13页
时间:2018-05-02
《人脸识别课程设计报告》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、用Matlab实现人脸识别学院:信息工程学院班级:计科软件普131成员:一、问题描述在一个人脸库中,有15个人,每人有11幅图像。要求选定每一个人的若干幅图像组成样本库,由样本库得到特征库。再任取图像库的一张图片,识别它的身份。对于一幅图像可以看作一个由像素值组成的矩阵,也可以扩展开,看成一个矢量。如一幅N*N象素的图像可以视为长度为N2的矢量,这样就认为这幅图像是位于N2维空间中的一个点,这种图像的矢量表示就是原始的图像空间,但是这个空间仅是可以表示或者检测图像的许多个空间中的一个。不管子空间的具体
2、形式如何,这种方法用于图像识别的基本思想都是一样的,首先选择一个合适的子空间,图像将被投影到这个子空间上,然后利用对图像的这种投影间的某种度量来确定图像间的相似度,最常见的就是各种距离度量。因此,本次采用PCA算法确定一个子空间,最后使用最小距离法进行识别,并用matlab实现。二、PCA原理和人脸识别方法1)K-L变换K-L变换以原始数据的协方差矩阵的归一化正交特征矢量构成的正交矩阵作为变换矩阵,对原始数据进行正交变换,在变换域上实现数据压缩。它具有去相关性、能量集中等特性,属于均方误差测度下,失真
3、最小的一种变换,是最能去除原始数据之间相关性的一种变换。PCA则是选取协方差矩阵前k个最大的特征值的特征向量构成K-L变换矩阵。2)主成分的数目的选取保留多少个主成分取决于保留部分的累积方差在方差总和中所占百分比(即累计贡献率),它标志着前几个主成分概括信息之多寡。实践中,粗略规定一个百分比便可决定保留几个主成分;如果多留一个主成分,累积方差增加无几,便不再多留。3)人脸空间建立假设一幅人脸图像包含N个像素点,它可以用一个N维向量Γ表示。这样,训练样本库就可以用Γi(i=1,...,M)表示。协方差矩
4、阵C的正交特征向量就是组成人脸空间的基向量,即特征脸。将特征值由大到小排列:λ1≥λ2≥...≥λr,其对应的特征向量为μk。这样每一幅人脸图像都可以投影到由u1,u2,...,ur张成的子空间中。因此,每一幅人脸图像对应于子空间中的一点。同样,子空间的任意一点也对应于一幅图像。4)人脸识别有了这样一个由"特征脸"张成的降维子空间,任何一幅人脸图像都可以向其投影得到一组坐标系数,这组系数表明了该图像在子空间中的位置,从而可以作为人脸识别的依据。计算数据库中每张图片在子空间中的坐标,得到一组坐标,作为下
5、一步识别匹配的搜索空间。计算新输入图片在子空间中的坐标,采用最小距离法,遍历搜索空间,得到与其距离最小的坐标向量,该向量对应的人脸图像即为识别匹配的结果。三、实验步骤1)每人选取4幅共60幅作为训练样本,将每一幅图像(128*128)写成列向量形式排列成矩阵2)求协方差矩阵3)求协方差矩阵特征值—求特征向量(特征脸)—将特征向量排列成变换矩阵4)计算每幅图像的投影5)计算待识别人脸的投影6)遍历搜索进行匹配四、实验结果与分析matlab界面效果如下所示图1用户使用界面图2选择图片图3图片选择后图4识别
6、后由于利用了标准库,并且识别的人数不是很多,也没有选择有大块左阴影和右阴影的人作为训练集以及测试,所以最终的结果还是非常不错的,识别率可达100%。但是选择有较大阴影的人做测试,则会出现识别错误,所以PCA算法还是存在一定的局限性。图5识别错误主要代码展示functionpushbutton1_Callback(hObject,eventdata,handles)%hObjecthandletopushbutton1(seeGCBO)%eventdatareserved-tobedefinedinaf
7、utureversionofMATLAB%handlesstructurewithhandlesanduserdata(seeGUIDATA)%readimagetoberecognize%读取图片globalim;[filename,pathname]=uigetfile({'*.bmp'},'choosephoto');str=[pathname,filename];im=imread(str);axes(handles.axes1);imshow(im);%---Executesonbutton
8、pressinpushbutton2.functionpushbutton2_Callback(hObject,eventdata,handles)%hObjecthandletopushbutton2(seeGCBO)%eventdatareserved-tobedefinedinafutureversionofMATLAB%handlesstructurewithhandlesanduserdata(seeGUIDATA)globalimglobal
此文档下载收益归作者所有