基于PCA模型的图像聚类模型分析和简单图像识别分析.docx

上传人:王** 文档编号:744229 上传时间:2023-12-31 格式:DOCX 页数:27 大小:290.34KB
下载 相关 举报
基于PCA模型的图像聚类模型分析和简单图像识别分析.docx_第1页
第1页 / 共27页
基于PCA模型的图像聚类模型分析和简单图像识别分析.docx_第2页
第2页 / 共27页
基于PCA模型的图像聚类模型分析和简单图像识别分析.docx_第3页
第3页 / 共27页
基于PCA模型的图像聚类模型分析和简单图像识别分析.docx_第4页
第4页 / 共27页
基于PCA模型的图像聚类模型分析和简单图像识别分析.docx_第5页
第5页 / 共27页
基于PCA模型的图像聚类模型分析和简单图像识别分析.docx_第6页
第6页 / 共27页
基于PCA模型的图像聚类模型分析和简单图像识别分析.docx_第7页
第7页 / 共27页
基于PCA模型的图像聚类模型分析和简单图像识别分析.docx_第8页
第8页 / 共27页
基于PCA模型的图像聚类模型分析和简单图像识别分析.docx_第9页
第9页 / 共27页
基于PCA模型的图像聚类模型分析和简单图像识别分析.docx_第10页
第10页 / 共27页
亲,该文档总共27页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《基于PCA模型的图像聚类模型分析和简单图像识别分析.docx》由会员分享,可在线阅读,更多相关《基于PCA模型的图像聚类模型分析和简单图像识别分析.docx(27页珍藏版)》请在优知文库上搜索。

1、基于PCA模型的图像聚类模型分析和简单图像识别分析摘要本文根据实际200张照片,通过PCA模型的方法进行特征提取,并根据提取出的特征和特征值对图像进行聚类分析,本文采用了统计学意义上的聚类方法,包括k-means聚类、层次聚类与多维高斯矩阵模型,分别对其进行聚类分析,考察聚类分析的效果。最后我们通过计算与聚类中心的距离得出测试图片所属的类别,并且小组也通过简单的图片识别方法,考察计算距离最小值,识别匹配测试图片。1 .引言1.1 背景介绍人脸识别是计算机视觉和图像处理等领域近年来的热点研究课题,现在已经有许多识别方法如指纹识别,掌纹识别,书写签字等川。图像识别具有较为广泛的商业应用领域。其在身

2、份认证与安全防护,例如门禁,以及在增强电子商务、电子政务的安全等领域具有广泛的利用价值,例如限定只有权限的人才能进行网上交易等1.2 实验数据我们选取了200张照片,分别是人物、竹林、猫和电脑。图片大小都不一致,因此我们需要同一成150*180的格式,所以必须先对图片进行处理,但是小组注意到直接压缩到150*180的图片要么严重变形要么占居图片的大小比例相差极大,影响识别,因此必须将图片中主要元素的占比处理到相似程度,然后压缩到150*180大小。我们选择先将图片适度变形到主要人物长宽比相似,然后截取一个5:6的部分图片,控制主人物的占比最后压缩到150*180.图1.1样本图片本实验报告对图

3、像数据的处理对计算机内存有一定要求,不然会出现如图1.2卡顿的情况:main内存不足。请键入HELPMEMORY查看选项。图1.2异常情况可以选择输入memory指令查看相应配置memory可能的最大数组:1343MB(1.408e+09bytes)*可用于所有数组的内存:1343MB(1.408e+09bytes)*MATLAB使用的内存:1600MB(1.678e+09bytes)物理内存(RAM):4021MB(4.217e+09bytes)图1.3memory命令查看配置2 .数据预处理与PCAPCA(principleComponentAnalysis)是由TUrk和Pentlad提

4、出来的统计学的特征提取方法,它的基础就是KL变换,是一种常用的正交变换。PCA方法具有速度快,识别率高等优点。通过PCA得到的用于识别的特征向量.而这组正交向量是原始人脸空间的总体散布矩阵的特征向量并具有脸的形状,所以也可称为特征脸,它保留了人脸的完整信息式其实质是建立了一个新的坐标系,将一个物体主轴沿特征矢量对齐的旋转变换,这个变换解除了。原有数据向量的各个分量之间的相关性,从而有可能去掉那些带有较少信息的坐标系,以达到降低特征空间维数的目的完整的PCA人脸识别的步骤为:(1)读入数据图像库;(2)计算KL变换的生成矩阵;(3)利用SVD定理计算特征值和特征向量;(4)把训练图像和测试图像投

5、影到特征空间;(5)比较测试图像和训练图像,确定待识别样本类别。2.1 读入数据图像库本实验将找到的数字图像经过像素处理统一为相同的像素,将200张图片作为样本集进行处理和分析,选取一张作为测试集。整合输入的人脸样本,把m*n的矩阵变换成l*(m*n)的矩阵,最终缩小数据范围后转化为10*6750维的样本矩阵,部分(6745-6750列)矩阵数据如下图2.1.1所示:6745至6750列0.52940.51760.50980.49800.49020.42750.87840.87450.83530.73330.57650.73330.87840.87450.89800.91370.89800.8

6、7451.00001.00001.00001.00001.00001.00000.72940.67450.60780.54120.50590.50200.99610.99610.99610.99610.99610.99610.18430.18430.18430.18430.18430.18430.80000.78430.77250.75690.74510.73730.94900.94900.94900.94900.94900.94900.80000.79220.78430.77650.78040.7765图2.1样本矩阵代码如下:functionImgData=imgdata()namud=0

7、.8;IrainImgPath=,CUsersyyDesktopMatlab,;(路径体现了团队分工)trainlmgExt=,*.jpg,;trainlmgs=dir(fullfile(trainImgPath,trainImgExt);number=size(trainlmgs,l);pic_all=cell(1,number);fori=1:numberpic-alli=rgb2gray(imread(strcat(num2str(i),.jpg,);pic-alli=imresize(pic-alli,namud);endm,n=size(picalll);fori=ImumberIm

8、gData(i,:)=reshape(pic_alli,1,m*n);endImgData=double(ImgData)255;2.2 图像灰度处理通常一副图像由R,G,B三个通道组成,而灰度图像的这三个通道的像素值是通过灰度变化来显示的。灰度图像共有256种灰度的色阶,表示由浅到深的灰度颜色变化。灰度的变化构成了图像的不同特征。2.3 计算K-L变换矩阵K-L变换是模式识别中常用的一种特征提取方法,出发点是从一组特征中计算出一组按重要性从大到小排列的新特征,它们是原有特征的线性组合,并且相互之间是不相关的,实现数据的降维。PCA实质上是K-L展开的网络递推实现,K-L变换是图像压缩中的一种

9、最优的正交变换,其生成矩阵一般为训练样本的总体散布矩阵。N叨算法思想为:假设数据库里有P个人,每人有i幅人脸图像,设每位训练者图像的平均矢量为mi,则M=mO,ml,.mp-1,其总体灰度平均值为m,M与之相减后构成一组大矢量A=l,2p,其中i=mi-m,它用于进行主分量分析,找出M个正交矢量/“及本征值k最好地描述数据分布规律,心及k是协方差矩阵C的本征矢量和本征值,其中c=.)r=ur叫求解出来的特征值和特征向量即为“特征脸二设为矩阵U,对每个人的训练样本的平均图像矢量叫(i=。,P-D,向由“特征脸”图像矢量所张成的子空间上投影,其坐标系数矢量就是其K-L变换的展开系数矢量,即.1/W

10、i=O-网。2.4 计算特征值和特征向量把训练图像和测试图像投影到特征空间求出特征协方差矩阵,协方差绝对值越大,两者对彼此的影响越大,反之越小。然后求出协方差矩阵的特征值和特征向量,将特征向量都归一化为单位向量后按照从大到小的顺序排序,选择其中最大的k个,然后将其对应的k个特征向量分别作为列向量组成特征向量矩阵。本实验的样例数为m,特征数为n,减去均值后的样本矩阵为Z,协方差矩阵是T=Zt*Z,选取的k个特征向量组成的矩阵为V,D那么投影后的数据img_new,本实验的运行代码为:此处代码参考:functionCellall=PCA(img,k)%img=1,2;2,1;3,3;3,6;6,3

11、;%k=2;%img=double(img);m,n=size(img);imgmean=mean(img);imgmeanall=repmat(img_mean,m,1);Z=img-imgmeanall;T=Z,*Z;V,D=eigs(T,k);imgnew=img*V*D;Cellall=imgnew,V,D;这样就将原始样例的n维特征变成了k维,这k维就是原始特征在k维上的投影。上面的数据可以认为是Ieam和study特征融合为一个新的特征叫做LS特征,该特征基本上代表了这两个特征。2.5 数据标准化先对数据进行预处理,将其进行标准化,得到如下数据表2.1标准化样本数据PCA-IPCA

12、-2PCA-31.20581785489707-0.0571849699152982-0.96640442299173120.363291735604150-0.776991829992383-0.25555958881224131.486019358637700.2137231736172820.57695199973797440.886336285769643-0.1628296888031260.2436892968373205-0.6799289104421590.4329682722517031.2730001427139160.624313500320956-1.162984840

13、32795-1.241910668770367-0.646792098029122-0.1521513007799401.572792133192941991.97093397217602-0.230943152217570-0.998085484368344200-0.590530164758485-0.5275531224971102.04970237876063进行初步三维可视化,观察数据分布:图2.2三维可视化数据分布代码如下:T=X(U);D=X(:,2);K=X(:,3);scatter3(T,D,K)3 .聚类模型构建聚类分析是研究分类问题的一种统计分析方法口支其中基于模型的方法

14、中,主要为两类:统计学方法和神经网络方法。本实验报告主要从统计学方法的角度出发考察部分聚类模型1 .1k-means图像聚类运用matlab自带的kmeans()函数将标准化样本数据进行聚类,其中k=4,初始聚类中心为matrix.C1.1.1 最优k值选择:2 T111TT0.9r0.8;0.70.6-0.50.40.3-xX-0.20.1-一_246810121416图3.1簇内误方差曲线图通过误方差曲线图展示拐点在k=4处,这与我们选取图片时的真实情况相符,因此k=4为较为合理的初始k值。函数如下切:functionbest_k(data)globalmatrixn,p=size(data);fori=l:pminr=min(data(:,i);maxr=max(data(:,i);data(:,i)=(data(:,i)-minr)/(maxrminr);%归一化endK=I5;D=zeros(K-1,2);T=0;fork=2:KT=T+1;!able,c,sumd,d=kmeans(data,kstart,sample*);%一求每类数量一-Sort_num=Z

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 论文 > 毕业论文

copyright@ 2008-2023 yzwku网站版权所有

经营许可证编号:宁ICP备2022001189号-2

本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!