IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

MATLAB Discussion :

[Débutant] Transformation d'une matrice 3D en une matrice 1D


Sujet :

MATLAB

  1. #1
    Membre confirmé Avatar de Alucard9800XT
    Étudiant
    Inscrit en
    Avril 2007
    Messages
    96
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2007
    Messages : 96
    Par défaut [Débutant] Transformation d'une matrice 3D en une matrice 1D
    bonsoir , je voudrai transformer une matrice 3dimension en une matrice une dimension et cela en faisant la moyenne de cette sorte:
    A(1,1,1)+A(1,1,2)+A(1,1,3)=Z(1,1)
    pour tout les element de la matrice
    et merci

  2. #2
    Membre émérite
    Avatar de rostomus
    Homme Profil pro
    Doctorant électronique et traitement du signal
    Inscrit en
    Décembre 2006
    Messages
    791
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Doctorant électronique et traitement du signal

    Informations forums :
    Inscription : Décembre 2006
    Messages : 791

  3. #3
    Membre confirmé Avatar de Alucard9800XT
    Étudiant
    Inscrit en
    Avril 2007
    Messages
    96
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2007
    Messages : 96
    Par défaut rostomus merci...
    salut, dis moi tu fais comment pour classer les valeur d'une matrice pour avoir des valeur decroissante

  4. #4
    Rédacteur/Modérateur

    Avatar de Jerome Briot
    Homme Profil pro
    Freelance mécatronique - Conseil, conception et formation
    Inscrit en
    Novembre 2006
    Messages
    20 317
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Freelance mécatronique - Conseil, conception et formation

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 317
    Par défaut
    Tu utilises SORT avec l'argument descend

    Ou bien, tu tries les valeurs avec SORT et ensuite tu inverses l'ordre des éléments du résultat.

  5. #5
    Membre confirmé Avatar de Alucard9800XT
    Étudiant
    Inscrit en
    Avril 2007
    Messages
    96
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2007
    Messages : 96
    Par défaut
    Bonjour merci pour SORT parcontre descend ne marche pas meme quand je fait doc descend mon Matlab ne le reconais pas ! comment dois je l'utiliser?
    ou
    et dis moi c'est quoi cette erreur?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
     X'*X
    ??? Error using ==> mtimes
    Matrix dimensions must agree.
    et merci

  6. #6
    Membre confirmé Avatar de Alucard9800XT
    Étudiant
    Inscrit en
    Avril 2007
    Messages
    96
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2007
    Messages : 96
    Par défaut
    salut, on ma donner une soluce
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    [Y,posi]=sort(-X);
    Z=-Y;

    par contre j'ai toujour la meme erreur
    voici le code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
     
    clear;
    clc;
     
    X= imread('exemple_plage.jpg');
    ind=size(X);
    i=mean(X)
     
    disp('Centrage des données de la matrice X')
    for j=1:ind(2);
       Y(:,j)=X(:,j)-i(j);
    end
    Y
     
    disp('La matrice X centrée réduite')
    ect=std(double(X),1)
    for j=1:ind(2);
        X(:,j)=Y(:,j)/ect(j);
    end
    X
     
    disp('La matrice de variance covariance')
    C=X'*X
     
    disp('Les valeurs et les vecteurs propres')
    vlp=eig(C)
    [vct,u]=eig(C)
     
    disp('Classement par ordre decroissant des valeurs propres')
    [vpor,posi]=sort(-vlp);
    VlpOrd=-vpor
    vect=vct(:,posi)
    code et soluce de magicstar, que je remerci
    et voici l'erreur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
     X'*X
    ??? Error using ==> mtimes
    Matrix dimensions must agree.
    ci joint l'image utilisé
    et merci
    Images attachées Images attachées  

  7. #7
    Rédacteur/Modérateur

    Avatar de Jerome Briot
    Homme Profil pro
    Freelance mécatronique - Conseil, conception et formation
    Inscrit en
    Novembre 2006
    Messages
    20 317
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Freelance mécatronique - Conseil, conception et formation

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 317
    Par défaut
    Citation Envoyé par Alucard9800XT
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    [Y,posi]=sort(-X);
    Z=-Y;
    L'autre solution était:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Y=sort(X);
    Y=Y(end:-1:1,:);
    Sinon ton code (avec l'image attachée) fonctionne parfaitement sur ma configuration.

  8. #8
    Membre confirmé Avatar de Alucard9800XT
    Étudiant
    Inscrit en
    Avril 2007
    Messages
    96
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2007
    Messages : 96
    Par défaut
    c'est bon j'ai fait ca
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    double (X')*double(X)
    au lieu
    parcontre je ne comprend pas l'erreur qu'il m'affichait
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
     X'*X
    ??? Error using ==> mtimes
    Matrix dimensions must agree.
    car ca n'a rien a voir avec la dimension
    et merci

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 27
    Dernier message: 03/01/2008, 11h07
  2. Copier une table Access d'une base de données à une autre
    Par Marie S. dans le forum VB 6 et antérieur
    Réponses: 7
    Dernier message: 23/05/2007, 12h09
  3. Réponses: 11
    Dernier message: 06/12/2005, 08h23
  4. copie d'une table Y d'une base A vers une table X d'une base
    Par moneyboss dans le forum PostgreSQL
    Réponses: 1
    Dernier message: 30/08/2005, 21h24

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo