




免费预览已结束,剩余5页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于K-L变换的人脸识别 一、基本要求从网上下载人脸图像,构建人脸训练数据库和测试数据库,采用K-L变换进行特征脸提取,并实现人脸识别。通过K-L变换在人脸识别中的应用,加深对所学内容的理解和感性认识。1、 或者从网上下载其它数据库,编程实现K-L变换。2、 课堂报告、并提交实验报告及相应程序。二、实验原理1、K-L变换:就是以样本特征向量在特征空间分布为原始数据,通过变换,找 到维数较少的组合特征,达到降维的目的。 K-L变换是一种正交变换,即将一个向量,在某一种坐标系统中的描述,转换成用另一种基向量组成的坐标系表示。这组基向量是正交的,其中每个坐标基向量用表示,因此,一个向量可表示成 如果我们将由上式表示的无限多维基向量坐标系统改成有限维坐标系近似,即l 表示的近似值或估计量,我们希望在同样维数条件下,使向量的估计量误差最小。确切地说是使所引起的均方误差: 为最小。K-L变换可以实现这个目的。 因为 将 带入到中可得到 容易看到 因此 由于是确定性向量,因此上式可改写为 令 则 用拉格朗日乘子法,可以求出在满足正交条件下,取极值的坐标系统,即用函数 对,求导数,因此有 我们令,从而可得到以下的结论: 以矩阵的本征向量座位坐标轴来展开时,其截断均方误差具有极值性质,且当取个来逼近时,其均方误差 式中是矩阵的相应本征值。 可以证明,当取个与矩阵的个最大本征值对应的本征向量来展开时,其截断均方误差和在所有其他正交坐标系情况下用个坐标展开时所引起的均方误差相比为最小。这个本征向量所组成的正交坐标系称作所在的D维空间的维K-L变换坐标系,在坐标系上的展开系数向量称为的变换。 本实验所采用的人物脸部灰度图像默认已经过归一化,所以对于图像的归一化,我们不予处理。可以以样本集的总体散布矩阵为产生矩阵,即: 其中:表示第个训练样本图像 ,表示训练样本集的平均图像向量,为训练样本的总数。2、奇异值分解:为了求维矩阵的特征值和正交归一的特征向量,直接计算是困难的。为此引入了SVD定理: 设A是一秩为r的n*r维矩阵,则存在两个正交矩阵: 以及对角阵 ,且 满足 其中:为矩阵和的非零特征值,和分别为 和 对应于的特征向量。上述分解称为矩阵的奇异值分解,简称SVD,为的奇异值。又有推论 易知 这就是图像的特征向量。它是通过计算较低为矩阵R的特征值与特征向量而间接求出的。 3、特征向量的选取:我们总共的得到个特征向量。虽然 比 小很多。但通常情况下,仍然会很大。而事实上,根据应用的需要,并非所有的都有很大的保留意义。 考虑到使用变换作为对人脸图像的压缩手段,可以选取最大的前个特征向量,使得 上式中,可以选取。这说明样本及在前个轴上能量占整个能量的99%以上。4、产生矩阵的选取: 在考虑到训练样本的类别信息,对人脸识别会有更大意义,以及节省计算量的前提下,我们采用训练样本集的类间散布矩阵作为K-L变换的产生矩阵,即: 其中:为训练样本集中第个人的平均图像向量,为训练样本集中的总人数,本实验不予考虑。显然,与总体散布矩阵相比,特征脸的个数由降低到,因而在计算量上要减少很多。对于每个人的训练样本的平均图像向量,向由“特征脸”图像向量所展成的子空间上投影,其坐标系数向量就是其K-L变换的展开系数向量,即: 可知 其中:,为训练样本集中第个人的特征系数向量。 三、实验过程1、对于选取每个人n幅脸图像作为训练样本集的正确率第一步: 搜集人脸图像,建立人脸库。共40个人,每人9幅。第二步:选定产生矩阵,分别选取每个人 n(n=1,2,.,7)幅脸图像作为训练样本集,进行K-L变换,利用奇异值 分解计算出相应的特征向量。确定,计算选取出“特征脸” 向量并计算出每个人训练样本的平均图像向量在 由“特征脸”图像向量所张成的子空间上坐标系数向量。第三步:选取所有人第8、9两张脸图像进行测试,分别计算出它们在特征脸 空间中的坐标系数向量,即特征系数向量。第四步:分别计算测试样本特征系数向量与每个人训练样本特征系数向量的欧氏 距离,选取距离最小的样本类别作为识别结果,并与测试样本本身所属 于的类别比较,判断识别的正误。第五步:统计正确的次数,计算正确率。 2、 选取不同的值计算测试样本的识别正确率 第一步:产生矩阵依旧为 。确定训练样本集为 所有人第1至7幅脸图像,测试样本集还是所有人第8、9张脸图像。第二步:利用上面实验的部分结果,分别取为不同值,计算并选取出对应的“特 征脸”向量。第三步:对于不同的值,计算出测试样本集的特征系数向量。第四步:计算测试样本集特征系数向量与样本集中每个人的特征系数向量的欧 氏距离,选取距离最小的样本类别作为识别结果,并与测试样本本身所 属于的类别比较,判断识别的正误。第五步:统计取不同值的识别正确率,比较。3、 显示识别图像和特征脸图像 选取训练样本集为所有人第1至7幅脸图像,测试样本集为随机选取的5个不同人脸图像,取,利用上面两个实验部分结果进行识别,并显示结果和部分特征脸图像。 四、实验结果: 表1 以类间散布矩阵为产生矩阵的K-L变换进行人脸识别正确率()训练集中每个人图片数1234567识别正确率67.5%78.75%76.25%80%86.25%90%90% 表2 不同的值对人脸识别正确率的影响(训练集中每个人图片数为7)值50%55%65%70%75%80%85%95%99%识别正确率47.5%62.5%63.75%70%78.75%88.75%88.75%90%90% 值对识别正确率的影响 部分识别人脸图像 部分特征脸图像四、实验结论1、由表1可知测试样本集的识别正确率随着训练样本中的每个人的人脸图片数 的增加而增大()。2、由表2可知测试样本集的识别正确率在一定范围内随着值的增大而增大(训 练集中每个人图片数为7)五、实验心得 这个实验比较有意思,与生活中的某些应用也有联系,通过做这个作业,更加认识到理论应用于实际的作用,同时对课本这部分内容也有了更全面的了解。六、附录(实验代码)clc clear all for i=1:40 for j=1:9 %一共有40人的人脸图片,每人读取9张if ia %选择最大的前i个特征值,由这些值的和在总特征值中占得比例大于a break; end end A= U(:,1:i);%选择前i个特征值对应的特征向量组成特征脸y= A*X1;%求训练集中各图像在特征脸空间中的坐标bianshi=zeros(6,Total); for i=1:Total face=double(face);for j=8:9 %每个人图像第8、9张做为待识别的图像ceshi=face(:,(i-1)*9+j); zbceshi=A*ceshi; %求得其在特征脸空间的坐标for k=1:Total wucha=zbceshi-y(:,k); wuchametrix(:,k)=wucha*wucha; %计算该坐标与训练集中各图像坐标之间的距离end h,I=min(wuchametrix); %最近邻法进行人脸识别if I=i %统计每个待辨识图像是否成功识别,成功为1,失败为0bianshi(j-7,i)=1; else bianshi(j-7,i)=0; end end end gg=sum(bianshi); gg=sum(gg,2); chenggongratio=gg/(2*Total) %用识别正确的图像个数除以总图像个数得到识别正确率 for n1=1:20
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论