N'hésitez pas à consulter les offres premium proposées par le service de stockage en ligne pCloud et inscrivez-vous afin d'obtenir 10Go de stockage gratuits.
Tout ce qui concerne notamment les outils de calcul numérique, de calcul formel ou de géométrie. [participation réservée aux utilisateurs inscrits]
Règles du forum
Merci de soigner la rédaction de vos messages et de consulter ce sujet avant de poster. Pensez également à utiliser la fonction recherche du forum.
clear all
%%% on charge les données %%%
database=load('essai_realdefau_1_kHz.dat');
xmin=250
xmax=500
ymin=250
ymax=500
%%%%%%%%%%%reduction de ma matrice de données%%%%%%%%%%%%%%%%%
for j=xmin:xmax
for k=ymin:ymax
database_reduit(k-ymin+1,j-xmin+1)=database(k,j);
[nb_ex,nb_feat] = size(database_reduit);
end
end
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%Calcul de la matrice de donnée centrée et normée%%%%%%%%%%%%%%
for j=1:nb_feat
rowsum = sum(database_reduit(:, j))/nb_ex;
ect=std(database_reduit(:, j));
for k=1:nb_ex
database1=(database_reduit(k,j)-rowsum)/(ect)^0,5;
database2_reduit(k,j)=database1;
end
end
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%% on calcule la matrice de covariance %%%
S = cov(database2_reduit);
%%% on calcule les vecteurs propres et les valeurs propres %%%
[vec_p, L] = eig(S);
%%% on trie les vecteurs propres selon les valeurs propres %%%
[val_p, ind] = sort(diag(L));
val_p = flipud(val_p);
ind = flipud(ind);
vec_p2 = vec_p(:,ind);
% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%Calcul de la matrice d'estimation%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%(Matrice vecteurs propores*Matrice données centrée%%%%%%%%%%%%%%%%%
S_chapo=vec_p2'*database2_reduit
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%coeff=corr2(S_chapo,database2_reduit)
Puis, je souhaiterai représenter une "nouvelle" image, en ne tenant plus compte du premier vecteur propre (seulement de tous les autres). Je ne sais pas comment faire?
bonsoir mariona je suis étudiant en master 2 telecom je suis entrin de faire mon projet de fin d'etude est justement votre message il ma interpeller par ce que c le titre de mon projet et j un très grand problème c que je maîtrise pas beaucoup le matlab et je pêne a trouver le code de mon programme (réduction de donne d'une image en utilisant l'acp) alors es-que si possible de m aider est de me propose un code détaille ça sera vraiment très gentille de votre part (*@yahoo.fr) merci !!
Dernière modification par MB le dimanche 27 avril 2014, 17:21, modifié 1 fois.
Raison :Suppression de l'adresse mail.
Éviter également d'indiquer votre adresse mail dans le message.
MB. (rejoignez pCloud et bénéficiez de 10Go de stockage en ligne gratuits) Pas d'aide en message privé. Merci de consulter ce sujet avant de poster votre premier message.