Aide pour les ACP en matlab
Résolu/Fermé
cixidetroy
-
13 juin 2008 à 15:53
traitement d'image Messages postés 1 Date d'inscription mercredi 3 août 2011 Statut Membre Dernière intervention 3 août 2011 - 3 août 2011 à 12:01
traitement d'image Messages postés 1 Date d'inscription mercredi 3 août 2011 Statut Membre Dernière intervention 3 août 2011 - 3 août 2011 à 12:01
3 réponses
Sacabouffe
Messages postés
9427
Date d'inscription
dimanche 19 août 2007
Statut
Membre
Dernière intervention
29 mai 2009
1 835
17 juin 2008 à 13:25
17 juin 2008 à 13:25
Salut
std calcule l'écart type.
Si l'argument est un vecteur X, ben ça calcule l'écart type σ de la série représentée par les valeurs du vecteur, c'est-à-dire σ²=E[(X-E[X])²]
Si l'argument est une matrice X, std(X) est un vecteur ligne dont les valeurs sont les écarts type de chaque colonne de X.
Après tu peux préciser d'autres cochonneries en option.
eig calcule les valeurs propres d'une matrice.
Donc pour une matrice carrée X, eig(X) est un vecteur colonne contenant les valeurs propres de X.
Si en plus tu veux avoir les vecteurs propres, tu tapes [P,D] = eig(X).
D sera le vecteur colonne des valeurs propres. Les colonnes de P sont les vecteurs propres correspondant, c'est-à-dire X*P = P*D
Il y a d'autres trucs qu'on peut faire avec aussi, mais bon... j'espère que ça te suffira pour le moment.
A plus
std calcule l'écart type.
Si l'argument est un vecteur X, ben ça calcule l'écart type σ de la série représentée par les valeurs du vecteur, c'est-à-dire σ²=E[(X-E[X])²]
Si l'argument est une matrice X, std(X) est un vecteur ligne dont les valeurs sont les écarts type de chaque colonne de X.
Après tu peux préciser d'autres cochonneries en option.
eig calcule les valeurs propres d'une matrice.
Donc pour une matrice carrée X, eig(X) est un vecteur colonne contenant les valeurs propres de X.
Si en plus tu veux avoir les vecteurs propres, tu tapes [P,D] = eig(X).
D sera le vecteur colonne des valeurs propres. Les colonnes de P sont les vecteurs propres correspondant, c'est-à-dire X*P = P*D
Il y a d'autres trucs qu'on peut faire avec aussi, mais bon... j'espère que ça te suffira pour le moment.
A plus
La matrice des composante principale est le produit de la matrice des données centrées réduites par la matrice des vecteurs propres.
J'aurais moi même une question :
une fois les composantes principales obtenues, comment reconstruire le signale à partir des composantes pertinentes, que ce soit pour supprimer du bruit ou supprimer l'influence une variable gênante ?
Merci.
J'aurais moi même une question :
une fois les composantes principales obtenues, comment reconstruire le signale à partir des composantes pertinentes, que ce soit pour supprimer du bruit ou supprimer l'influence une variable gênante ?
Merci.
traitement d'image
Messages postés
1
Date d'inscription
mercredi 3 août 2011
Statut
Membre
Dernière intervention
3 août 2011
3 août 2011 à 12:01
3 août 2011 à 12:01
bjr
je travail sur un sujet en traitement d image et je dois utiliser cette fonction ACP g le programme mais g du mal à comprendre les étapes est ce quil ya kkn qui pourra me donner un petit coup de main merci d'avance et bonne journée voici la fonction
function [Evalues, Evectors, x_mean]=PCA(x)
% PCA using Single Value Decomposition
% Obtaining mean vector, eigenvectors and eigenvalues
%
% [Evalues, Evectors, x_mean]=PCA(x);
%
% inputs,
% X : M x N matrix with M the trainingvector length and N the number
% of training data sets
%
% outputs,
% Evalues : The eigen values of the data
% Evector : The eigen vectors of the data
% x_mean : The mean training vector
%
%
s=size(x,2);
% Calculate the mean
x_mean=sum(x,2)/s;
% Substract the mean
x2=(x-repmat(x_mean,1,s))/ sqrt(s-1);
% Do the SVD
[U2,S2] = svds(x2,s);
Evalues=diag(S2).^2;
Evectors=U2;
je travail sur un sujet en traitement d image et je dois utiliser cette fonction ACP g le programme mais g du mal à comprendre les étapes est ce quil ya kkn qui pourra me donner un petit coup de main merci d'avance et bonne journée voici la fonction
function [Evalues, Evectors, x_mean]=PCA(x)
% PCA using Single Value Decomposition
% Obtaining mean vector, eigenvectors and eigenvalues
%
% [Evalues, Evectors, x_mean]=PCA(x);
%
% inputs,
% X : M x N matrix with M the trainingvector length and N the number
% of training data sets
%
% outputs,
% Evalues : The eigen values of the data
% Evector : The eigen vectors of the data
% x_mean : The mean training vector
%
%
s=size(x,2);
% Calculate the mean
x_mean=sum(x,2)/s;
% Substract the mean
x2=(x-repmat(x_mean,1,s))/ sqrt(s-1);
% Do the SVD
[U2,S2] = svds(x2,s);
Evalues=diag(S2).^2;
Evectors=U2;
10 juin 2009 à 13:07
moi aussi j'utilise l'ACP en Matlab, j'ai pu calculer vecteur des moyennes, vecteur des ecarts-types, Centrage des données, Matrice diagonale des 1/ect, Matrice des données centrées et réduites, Matrice des corrélations, Vecteurs et valeurs propres et Coordonnées des individus sur les axes
ma question est comment en déduire la matrice réduire?
merci d'avance pour votre réponse