+ Répondre à la discussion
Affichage des résultats 1 à 4 sur 4
  1. #1
    Invité de passage
    Femme Profil pro
    Enseignant Chercheur
    Inscrit en
    décembre 2012
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : décembre 2012
    Messages : 5
    Points : 0
    Points
    0

    Par défaut transformer un vecteur en une matrice

    Bonjour,
    j'ai un vecteur de 59147 mon objectif et de le transformer en une image de 209 ligne et 282 colonne ...j'essaye de faire le bon algorithme mais j'arrive pas de voir ou le problème.

    Code MATLAB : 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
    l=1;
    c=1;
    for i=1:59147
     
        if mod(i,283)~=0 
            img(l,c)=BW(i);
             c=c+1;
        end
        if  mod(i,283)==0 
     
            c=1; 
            l=l+1;
            img(l,c)=BW(i);
            c=c+1;
        end
    end
    Merci d'avance

  2. #2
    Rédacteur/Modérateur

    Homme Profil pro
    Comme retraité, des masses
    Inscrit en
    avril 2007
    Messages
    2 974
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Suisse

    Informations professionnelles :
    Activité : Comme retraité, des masses
    Secteur : Industrie

    Informations forums :
    Inscription : avril 2007
    Messages : 2 974
    Points : 5 085
    Points
    5 085

    Par défaut

    Salut!
    j'ai un vecteur de 59147 mon objectif et de le transformer en une image de 209 ligne et 282 colonne
    D'après ma calculatrice, 209*282, ça fait 58938; que fais-tu avec les composantes restantes de ton vecteur?
    Jean-Marc Blanc
    Calcul numérique de processus industriels
    Formation, conseil, développement

    Point n'est besoin d'espérer pour entreprendre, ni de réussir pour persévérer. (Guillaume le Taiseux)

  3. #3
    Invité de passage
    Femme Profil pro
    Enseignant Chercheur
    Inscrit en
    décembre 2012
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : décembre 2012
    Messages : 5
    Points : 0
    Points
    0

    Par défaut

    dsl image de 209 ligne 383 colone

  4. #4
    Membre Expert
    Homme Profil pro
    Chercheur
    Inscrit en
    mars 2010
    Messages
    1 211
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Chercheur

    Informations forums :
    Inscription : mars 2010
    Messages : 1 211
    Points : 1 646
    Points
    1 646

    Par défaut

    Salut,

    apparemment tu fais du matlab : tu peux utiliser la fonction reshape.
    Sinon, pour l'algorithme, cela doit ressembler à ca quand le vecteur stocke ligne par ligne la matrice (non testé) :
    Code MATLAB : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    function[m] = vtom(v,nr,nc)
    m=zeros(nr,nc);
    k=1;
    for i=1:nr
        m(i,:) = v(1+(i-1)*nc:i*nc);
    end