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

Images Discussion :

operation couteuse sous matlab


Sujet :

Images

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Septembre 2006
    Messages
    63
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 63
    Par défaut operation couteuse sous matlab
    bonjour,
    sous matlab, je desire effectuer l'operation suivante sur une matrice deux dimensions

    http://img208.imageshack.us/img208/817/18463822au9.jpg

    par exemple, on a la matrice suivante :
    1 2 3 4 5 6 7 8 9 10 11 12
    1 2 3 4 5 6 7 8 9 10 11 12
    1 2 3 4 5 6 7 8 9 10 11 12

    et on desire avoir la matrice suivante :

    1 4 7 10 2 5 8 11 3 6 9 12
    1 4 7 10 2 5 8 11 3 6 9 12
    1 4 7 10 2 5 8 11 3 6 9 12

    cette operation peut etre faite par les instructions suivantes :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    r=matrice(:,1);
     
    for j=1:3
    for i=0:3
     
    r=cat(2,r,matrice(:,i*3+j));
     
    end
    end
    sauf que pour des matrices de grande dimensions, par exemple 64 * 121200 (j effectue un traitment sur une video donc plusieurs images), ca peut prendre jusqu'a 2 heures ou plus, donc j vous demande messieurs s'il existe une fonction predefinies dans amtlab qui permet de le faire.

    Et Merci d'avance

  2. #2
    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
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    M = [1 2 3 4 5 6 7 8 9 10 11 12
         1 2 3 4 5 6 7 8 9 10 11 12
         1 2 3 4 5 6 7 8 9 10 11 12]
     
    M = M(:,[1 4 7 10 2 5 8 11 3 6 9 12])

  3. #3
    Membre confirmé
    Inscrit en
    Septembre 2006
    Messages
    63
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 63
    Par défaut
    Merci pour l'astuce, sauf que ca reste tres lent pour les grandes dimensions
    alors je sais pas comment il faudra proceder pour optimiser le temps d'execution

  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
    Quel gain de temps as-tu obtenu en utilisant le méthode d'indexage ?

    Et que comptes-tu faire exactement avec cette nouvelle matrice ?

  5. #5
    Membre confirmé
    Inscrit en
    Septembre 2006
    Messages
    63
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 63
    Par défaut
    je travaille sur une video pour detecter les mouvement en utilisant la methode de PCA, alors je dois convertir une matrice initiale en une autre matrice en utlisant cette methode
    sauf que ca prend bcq de temps d execution pour des matrices enormes

  6. #6
    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 ocean24 Voir le message
    sauf que ca prend bcq de temps d execution pour des matrices enormes
    Combien de temps ?

    Es-tu sûr que c'est bien la construction de la seconde matrice qui prend le plus de temps dans ton code ?

Discussions similaires

  1. Animation sous MATLAB
    Par Bluntz dans le forum MATLAB
    Réponses: 2
    Dernier message: 10/10/2006, 18h36
  2. Lire un programme écrit sous MATLAB
    Par tipi09 dans le forum Octave
    Réponses: 2
    Dernier message: 06/10/2006, 10h43
  3. Pointeur sous MATLAB
    Par corentin59 dans le forum MATLAB
    Réponses: 2
    Dernier message: 05/10/2006, 10h06
  4. Curseur sous MATLAB
    Par philatex dans le forum MATLAB
    Réponses: 2
    Dernier message: 23/08/2006, 09h02
  5. Exécutable sous MATLAB
    Par julien_arche dans le forum MATLAB
    Réponses: 6
    Dernier message: 01/08/2006, 09h54

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