Matlab基于主分量的人脸重建显示

原文:http://blog.csdn.net/whuhan2013/article/details/53994683《 基于PCA的人脸特征抽取》

关于displayImage()函数,最开始想的就是用reshape()函数重新构造一下原图像结构用imshow()显示就可以,但是用
function displayImage(x,y,z) img=reshape(x,y,z); imshow(img)试了一下并不可以显示。所以用两幅图片测,最终显示了我需要的图片。

这里写图片描述
所以用存储的脸部数据做测试 ,废了,这个问题困扰了我很久,我才发现,上面成功的跟没成功的差的地方只有数据类型,图片一般都是uint8型的,所以经过修改就OK了。
这里写图片描述
这里写图片描述

function displayImage(xApprox,width,height)
%xApprox要显示的向量,width 图像的宽,图像的高
img=reshape(xApprox,width,height);
figure
imshow(uint8(img))
function rebuild(n,k1,k2)
%n 选择恢复哪张照片
%K1 用PCA将原图降至多少维
%k2 用多少个主向量进行重建 K2<=k1
load Mat/FaceMat.mat
x = FaceContainer(n,:);
[pcaA V]= fastPCA(FaceContainer,k1);%用PCA降至200维
xApprox = approx(x,k2);
displayImage(xApprox,112,92);
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值