我的“智能”理解 先从PCA说起 。。。
% Copyright 2012
% Mc_PCA,Image Compress
% Authors: Michael Chen.
% Contact: Michael Chen, Department of CS, ** University
% Email: sunscone.23@gmail.com
%% This function is used to image compress
function [OriDataReconstruction,error] = Mc_PCA_2(OriData,p)
OriData = double(OriData);
rowN = size(OriData,1);
colN = size(OriData,2);
%calculate the mean of every column in the OriData matrix
OriDataMean = repmat(mean(OriData,2),1,colN);
%oriData centralization:calculate the different between the per column and it's mean value
CentralizationData = OriData - OriDataMean;
%calculate the cov matrix
CovMatrix = CentralizationData' * CentralizationData;
%eigenValue problem
[eigenVector,eigenValue] = eig(CovMatrix);
%sort the eigenValue Matrix
[eigenValue_sorted,index_sorted] = sort(sum(eigenValue),'descend');
%choose the first p eigenVector to foundment a Feature Matrix
FeatureMatirxOfCentralizationData = zeros(size(eigenValue,1),p);
for i=1:p
FeatureMatirxOfCentralizationData(:,i) = eigenVector(:,index_sorted(i));
end
%Projection per featureVector on the dif data space
%The DimReductionOriData is the Feature face of Ori-face
DimReductionOriData = FeatureMatirxOfCentralizationData' * CentralizationData';% Y = W'*X,X here is the centralized oriData
CentralizationDataReconstruction = (FeatureMatirxOfCentralizationData * DimReductionOriData);%get difData
OriDataReconstruction = CentralizationDataReconstruction' + OriDataMean;
%OriData;
%FeatureMatirx;
%FinalRecM;
error = norm(OriData-ReconstructionOriData,2);