Ist dies der richtige Weg, um das Trainingsset in den Eigespace zu projizieren? MATLAB

Ich habe PCA folgendermaßen berechnet:

function [signals,V] = pca2(data) 
[M,N] = size(data); 
data = reshape(data, M*N,1);
% subtract off the mean for each dimension 
mn = mean(data,2); 
data = bsxfun(@minus, data, mean(data,1));     
% construct the matrix Y 
Y = data'*data / (M*N-1); 
[V D] = eigs(Y, 10);   % reduce to 10 dimension
% project the original data 
signals = data * V;

Meine Frage ist:

Ist "Signale" die Projektion der Trainingsmenge in den Eigenraum?

Ich habe in "Amir Hossein" -Code gesehen, dass "zentrierte Bildvektoren", dh "Daten" in dem obigen Code, durch Multiplikation in den Eigenraum der Basis in den "Gesichtsraum" projiziert werden müssen. Ich verstehe nicht wirklich, warum die Projektion mit zentrierten Bildvektoren durchgeführt wird? Reichen "Signale" nicht zur Klassifizierung aus?

Antworten auf die Frage(1)

Ihre Antwort auf die Frage