PCA主成分分析图像数据降维代码求教!

ernan20070220 2015-05-22 06:27:53
我在网上找了一个PCA图像降维的代码,但是不知道怎么在代码中使用自己的图片,求教各位大神。下面附上代码
clc,clear;
load trees;
figure;
subplot(2,1,1);
image(X); colormap(map);
title('初始图像');
[m,n]=size(X);
A=X(:,:);
M=mean(A);
for j=1:n
for i=1:m
Z(i,j)=A(i,j)-M(1,j);%中心化矩阵
end
end
XF=cov(Z);%求协方差矩阵
[V,D]=eig(XF);%V特征向量,D是特征值
DD=diag(D);
sortDD=flipud(DD);%特征值由大到小排列
%sortDD=sort(DD,'descend');
%sortV=fliplr(V);
dsum=sum(sortDD);
dsum_extract=0;
p=0;
while(dsum_extract/dsum<0.9)
p=p+1;
dsum_extract=sum(sortDD(1:p));
end
[mV,mD]=eigs(XF,p);%选出p个较大的特征向量
FD=mV'*Z;%最后的矩阵
subplot(2,1,2);
imshow(FD,[]);
title('降维后的图像');
...全文
1044 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
yan13478760131 2019-06-02
  • 打赏
  • 举报
回复 1
对的,确实是这样的,回答的很不错的
prfans1 2015-07-22
  • 打赏
  • 举报
回复
最重要的就是那前p个特征向量组成的压缩矩阵
  • 打赏
  • 举报
回复
load trees 其实没什么用,可以直接删除带哦
ernan20070220 2015-05-22
  • 打赏
  • 举报
回复
那它前面的load trees;是什么意思呢?求解答呀
机器视觉001 2015-05-22
  • 打赏
  • 举报
回复
X就是你的图像

4,444

社区成员

发帖
与我相关
我的任务
社区描述
图形图像/机器视觉
社区管理员
  • 机器视觉
  • 迪菲赫尔曼
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧