- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
K-L變换在人脸识别中的应用
K-L变换在人脸识别中的应用
控制理论与控制工程 杨宪强 学号:2008011629
摘要
主成分分析(PCA)是自动人脸识别的常用方法,其基本原理就是用较少数量的特征对样本进行描述以达到降低特征空间维数的方法,方法的基础是Karhunen-Loeve展开式简称K-L展开式。文中介绍了K-L变换的基本原理,及其应用该方法进行人脸识别的基本步骤,最后给出基于总体散布矩阵和类间散布矩阵做为产生矩阵的K-L变换进行人脸识别的matlab程序,并对识别率进行了统计。
K-L变换的基本原理
特征脸方法是基于K-L变换的人脸识别方法,K-L变换是图像压缩的一种最优正交变换。高维的图像空间经过K-L变换后得到一组新的正交基,保留其中重要的正交基,由这些基可以张成低维线性空间。如果假设人脸在这些低维线性空间的投影具有可分性,就可以将这些投影用作识别的特征矢量,这就是特征脸方法用于人脸识别的基本思想。在人脸识别中,可以用离散K-L变换对人脸图像的原始空间进行转换,即构造人脸图像数据集的协方差矩阵,对之进行正交变换,求出协方差矩阵的特征向量,再依据特征值的大小对这些特征向量进行排序,每一个向量表示人脸图像中一个不同数量的变量,这些特征向量表示特征的一个集合,它们共同表示一个人脸图像。在人脸识别领域,人们常称这些特征向量为特征脸。每一个体人脸图像都可以确切地表示为一组特征脸的线性组合。这样我们首先通过有指导的训练(给定训练样本集已知分类)得到样本集在特征脸空间中的坐标。训练完成后,输入待辨识图像,求得在特征脸空间的坐标,采用最近邻法,就可以实现人脸识别。
2.K-L变换进行人脸识别的基本步骤
2.1 训练过程
1.给定样本集,在这里样本集的大小为360,一共是40人,每人9张图片。我选取每人5张图片一共200张作为训练集,训练集的大小是可选的,它的大小将直接影响到识别的正确率,在后面我对采用不同大小的训练集进行识别的正确率进行了统计。
2.确定采用何种产生矩阵,有总体散布矩阵()和类间散布矩阵(),后面的例子程序中分别采用了这两种产生矩阵,并进行了识别正确率的比较。
3.根据产生矩阵计算出特征脸,这里要用到奇异值分解,其基本原理就是通过计算较低维数矩阵的特征值与特征向量而间接求出较高维数矩阵的特征向量(特征脸),从而达到简化计算的目的。
4.分别求得训练集中各图像在特征脸空间中的坐标。
2.2 识别过程
首先求得待辨识图像相对于训练集平均脸的差值图像,然后求得该图像在特征脸空间中的坐标,最后采用最近邻法对图像进行归类。
3. K-L变换进行人脸识别的程序及结论
3.1 加载原始图片集数据
由于我用的原始图片集数据是.pgm格式的,直接采用matlab中的load指令是无法实现数据加载的,因此需要编写特定的程序将数据加载到工作空间。
程序如下:
clc
clear all
zhongjian=[];%初始化一个中间变量
for i=1:40
for j=1:9 %一共有40人的人脸图片,每人读取9张
image=[]; %初始化变量
strname=strcat(D:\ORL\s,num2str(i),\,num2str(j),.pgm);%生成图片文件的路径
fid=fopen(strname,r); %打开文件
if fid==-1
error([can not find file,strname]);
break;
break;
end %当fid==-1时,没有找到指定路径的文件
[imgsize, num]=fscanf(fid, P5\n%d\n%d\n255\n);%在.pgm文件中查找imgsize变量,它们标定
%数据的维数
if num~=2
error(error num);
end %当num~=2时,读出的数是错误的
for h=1:imgsize(2)
image=[image fread(fid,imgsize(1),uint8)];
end %读取由imgsize变量标定的维数的数据
zhongjian=image;%求转置
fclose(fid); %关闭文件
[row clo]=size(zhongjian);
face(:,9*(i-1)+j)=reshape(zhongjian,row*clo,1);%将读出来的图像数据拉长为一个列,存放在%face变量中
end
end
3.2 以类间散布矩阵为产生矩阵的K-L变换进行人脸识别
Total=40; %定义变量,标定了待识别的人数
X=zeros(
您可能关注的文档
最近下载
- 工程量清单(中孔、深孔泄洪洞)报价单2021.3.6.xlsx VIP
- 部编版历史(2025)八年级上册 第8课 中国同盟会 课件.pptx VIP
- PDA TR80-2018(中英文)《制药实验室数据完整性管理体系》.pdf VIP
- 互联网金融配套教材课件完整版电子教案(内容可修改).pptx VIP
- 2.2单一制和复合制课件-(共25张PPT)高中政治统编版选择性必修一当代国际政治与经济.pptx VIP
- 混凝土挡土墙施工组织设计.doc VIP
- GB 25286.2-2010 爆炸性环境用非电气设备 第2部分:限流外壳型“fr”.docx VIP
- 道路清扫保洁安全作业规程.pdf VIP
- 《高一优生座谈会》课件.pptx VIP
- 卧-坐-立”序贯八段锦康复技术规程 心肌梗死.docx VIP
文档评论(0)