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 :

Missing variable or function.


Sujet :

MATLAB

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Septembre 2009
    Messages
    343
    Détails du profil
    Informations forums :
    Inscription : Septembre 2009
    Messages : 343
    Par défaut Missing variable or function.
    Je débute en matlab, en codant un petit programme en matlab j’ai obtenu un erreur et j’ai pas connu comment le corrigé:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    if (MR(:,:))   
                Z = double (ImageReel);
                r = Z (F*:,F*:,1);
                g = Z (F*:,F*:,2);
                b = Z (F*:,F*:,3);
     PR=(r>=137.5 & r<153.5 & b>=61.5 & b<96.5 & g>=94.5 & g<108.5);
     end
    L’erreur c’est:
    Missing variable or function.
    C’est a propos la ligne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    r = Z (F*:, F*:,1);
    ya y-il quelqu'un qui peut m'aider à corriger cet erreur?

  2. #2
    Membre émérite
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    640
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 640
    Par défaut
    Salut,

    que veux tu faire ou que représente ton F*: ?
    Sauf erreur de ma part, Matlab ne connait pas cette syntaxe.

  3. #3
    Membre éclairé
    Inscrit en
    Septembre 2009
    Messages
    343
    Détails du profil
    Informations forums :
    Inscription : Septembre 2009
    Messages : 343
    Par défaut
    Le but de mon code c’est pour chaque pixel blanc dans la matrice MR (étant donnée que la matrice MR c’est une matrice binaire), je vais recalculer la valeur du pixel ayant la position du pixel blanc dans la matrice MR actuelle multiplier par F à partir de l’image originale. Le résultat sera affecté dans la matrice PR. Pour bien me comprendre voici l’ancien code que j’essaye de le raffiner en évitant le parcourt matricielle :
    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
     
    F=2;
     SPR=size(PR);
     for i=1:SPR(1)%parcour row
           for j=1:SPR(2)%parcour col
               if (MR(i,j)==1)              
                       ii=F*i;
                       jj=F*j;
                r = double(ImageReel(ii,jj,1));
                g = double(ImageReel(ii,jj,2));
                b = double(ImageReel(ii,jj,3));
                PR(i,j) = Regles(r,g,b);%Function qui retourne 1ou bien 0 selon la règles suivante (r>=137.5 & r<153.5 & b>=61.5 & b<96.5 & g>=94.5 & g<108.5);
     end
                        end%fin if(MR(i,j)==1)
           end%fin for
     end%fin for

  4. #4
    Modérateur

    Homme Profil pro
    Ingénieur en calculs scientifiques
    Inscrit en
    Août 2007
    Messages
    4 639
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Ingénieur en calculs scientifiques

    Informations forums :
    Inscription : Août 2007
    Messages : 4 639
    Par défaut
    Bonjour,

    ça donnerait plutôt quelque chose comme :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Z = double (ImageReel);
    r = Z(2:2:end,2:2:end,1);
    g = Z(2:2:end,2:2:end,2);
    b = Z(2:2:end,2:2:end,3);
    PR=(r>=137.5 & r<153.5 & b>=61.5 & b<96.5 & g>=94.5 & g<108.5);
    Pour une bonne utilisation des balises code c'est ici!
    Petit guide du voyageur MATLABien : Le forum La faq Les tutoriels Les sources


    La nature est un livre écrit en langage mathématique. Galilée.

  5. #5
    Membre éclairé
    Inscrit en
    Septembre 2009
    Messages
    343
    Détails du profil
    Informations forums :
    Inscription : Septembre 2009
    Messages : 343
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
      if (MR(:,:))   
                Z = double(ImageReel);
                r = Z(2:2:end,2:2:end,1);
                g = Z(2:2:end,2:2:end,2);
                b = Z(2:2:end,2:2:end,3);
     PR=(r>=137.5 & r<153.5 & b>=61.5 & b<96.5 & g>=94.5 & g<108.5;
     end
    Peut tu m'expliqué c'est quoi pour bien vous comprendre et d'affirmer que c'est mon besoin.

  6. #6
    Modérateur

    Homme Profil pro
    Ingénieur en calculs scientifiques
    Inscrit en
    Août 2007
    Messages
    4 639
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Ingénieur en calculs scientifiques

    Informations forums :
    Inscription : Août 2007
    Messages : 4 639
    Par défaut
    En fait dans ton code, tu multiplies les indices par 2 à chaque itération, donc tu ne considères que les indices pairs (2, 4 6 8 etc...)

    C'est ce que permet de faire 2:2:end

    Exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    >> 2:2:16
     
    ans =
     
         2     4     6     8    10    12    14    16
    Pour une bonne utilisation des balises code c'est ici!
    Petit guide du voyageur MATLABien : Le forum La faq Les tutoriels Les sources


    La nature est un livre écrit en langage mathématique. Galilée.

Discussions similaires

  1. Réponses: 2
    Dernier message: 22/08/2009, 20h10
  2. affectation d'une variable à une function
    Par grospatapouf dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 16/12/2008, 12h40
  3. bean:define pour passage variable dans function javascript
    Par fbuchwalder dans le forum Struts 1
    Réponses: 2
    Dernier message: 06/11/2006, 19h36
  4. Function() retour variable
    Par AnimNico dans le forum Flash
    Réponses: 15
    Dernier message: 16/10/2006, 20h49
  5. Variables de Sessions crées dans une Function perdues
    Par vampiloup dans le forum Langage
    Réponses: 7
    Dernier message: 12/01/2006, 17h50

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