24小时热门版块排行榜    

CyRhmU.jpeg
查看: 1845  |  回复: 10

wangqifei207

新虫 (小有名气)

[求助] 外导的课布置了一道图像处理的作业题。不会啊。求大侠,。

要求用MATLAB 实现对一幅图像的pca处理。具体要求和步骤如下,
1.将一幅图像(随便一幅)分成8*8的block.
2 . 移去均值。
3.估计这些数据的协方差矩阵。
4.计算这个矩阵的特征值和特征向量。
5.将每个子block 投影到最大特征值对应的N个特征向量对应的子空间上,再加上之前移去的均值。
要求将处理过的图像和原图进行对比。以前在国内是做控制的,现在上课这个老师是做图像的,学矩阵理论,然后他就布置这么道题。不知道从哪下手啊。求大侠帮忙。。急啊。 后天马上就要交了。。希望高人指点。小女子不胜感激啊。。
回复此楼

» 收录本帖的淘帖专辑推荐

信息技术

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

hotrock

银虫 (正式写手)

【答案】应助回帖

感谢参与,应助指数 +1
这个首先要把PCA搞定,其实就是正交分析,找到最大的几个特征值,就是找到了最重要的几个分量(就是你所说的子空间)。
求程序的心态是不对的。
2楼2012-01-19 00:14:47
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

wangqifei207

新虫 (小有名气)

引用回帖:
2楼: Originally posted by hotrock at 2012-01-19 00:14:47:
这个首先要把PCA搞定,其实就是正交分析,找到最大的几个特征值,就是找到了最重要的几个分量(就是你所说的子空间)。
求程序的心态是不对的。

是最大的那一个特征值还是最大的几个呢?  正在自己编啊。。但是不知道matlab 里面怎么投影到子空间啊。。。以及怎么重构原图像。
3楼2012-01-19 06:00:51
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

H_LG

银虫 (正式写手)

哇,这么晚还没放假啊?
邢台学院学生论坛:http://www.xtxybbs.com
4楼2012-01-19 09:33:30
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zxfirst

新虫 (小有名气)

计算机视觉算法

【答案】应助回帖

感谢参与,应助指数 +1
matlab中eig这个函数求特征值和特征向量的,应该对你有帮助。
5楼2012-01-19 09:38:11
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

rainyi2007

新虫 (初入文坛)

这个好象不难吧,关键是把数学原理搞清楚,对应的函数matlab中都有,直接调用就行。

[ 发自手机版 http://muchong.com/3g ]
6楼2012-01-20 09:21:01
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

ay_guobo

金虫 (正式写手)

【答案】应助回帖

感谢参与,应助指数 +1
为什么我就那么倒霉!
7楼2012-01-20 10:06:56
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

heartofautumn

铜虫 (小有名气)

【答案】应助回帖

感谢参与,应助指数 +1
如果是我 我就用openmp做
8楼2012-01-21 11:26:00
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

kk_2010

木虫 (正式写手)

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★
感谢参与,应助指数 +1
mze04532(金币+2): 奖励热心~ 2012-01-27 21:08:10
wangqifei207: 金币+10, ★★★很有帮助 2012-05-09 22:57:17
clc;
clear all;
%%%PCA  Reconstruct
img=imread('cameraman.tif');
% figure;imshow(img);
%%%%%%%%%%%%分成8*8block  1
win=8;
B1 = im2col(img,[win win],'distinct');
% B1 = im2col(img,[win win],'sliding');

B1=double(B1);
N=size(B1,2);
%%%%%%%%%减去均值 2
samplemean=(mean(B1'))'; %平均图片,1*N
xmean=B1-samplemean*ones(1,N);
%%%%%%%%计算这些数据的协方差矩阵
%获取特征植及特征向量
sigma=xmean*xmean';
[v,d]=eig(sigma);
d1=diag(d);
%%%%%按特征值大小以降序排列
dsort=flipud(d1);
vsort=fliplr(v);
%%%%%每个子Block进行投影
p=40;%%选择最大特征值的数目
%%计算所有样本在投影向量的投影系数
UU=vsort(:,1:p)';
YY= UU*B1;

B_Recon=UU'*YY+samplemean*ones(1,N);
img_recon= col2im(B_Recon,[win win],size(img), 'distinct');
resimgf=img_recon;
resimgf=(resimgf-min(resimgf())/(max(resimgf()-min(resimgf());
resimgf=im2uint8(resimgf);

str1=num2str(entropy(uint8(img)));
str2=num2str(entropy(resimgf));
subplot(2,1,1); imshow(uint8(img));title('Source Image');text(20,20,strcat('entropy=',str1));
subplot(2,1,2);imshow(resimgf);title('PCA reconstructed Image');text(20,20,strcat('entropy=',str2));

fprintf('ok\n');
9楼2012-01-25 10:57:05
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

dragon_123

金虫 (小有名气)

【答案】应助回帖

感谢参与,应助指数 +1
找本图像处理方面的Malab书认真看一下,应该很快就搞定了,祝你成功
我随风
10楼2012-04-03 10:36:04
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 wangqifei207 的主题更新
信息提示
请填处理意见