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 :

Lire une image IRM en utilisant une boite de dialogue


Sujet :

Images

  1. #1
    Membre habitué Avatar de larimoise
    Inscrit en
    Octobre 2006
    Messages
    220
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 220
    Points : 197
    Points
    197
    Par défaut Lire une image IRM en utilisant une boite de dialogue
    Salut,
    j'ai écrit la fonction suivante pour pouvoir choisir une image à partir d'une boite de dialogue:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    function im1=lirimage;
    [filename, pathname,Bool] = uigetfile( ...
        {'*.jpg;*.gif;*.tif;*.pgm;*.bmp', 'All images Files (*.jpg, *.gif, *.tif, *.bmp)'}, ...
        'Pick a file');
    if Bool
     
        [im1]=imread([pathname '\' filename]);
    end
    j'ai refait la même fonction pour cette fois ci lire des images de format analyze .img en remplaçant imread par analyze75read:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    function vol=readimage;
    display 'lecture'
    [filename,pathname,Bool] = uigetfile( ...
        {'*.hdr;*.img;', 'All images Files (*.hdr,*.img)'}, ...
        'Choisissez un fichier');
    if Bool
     
        vol=analyze75read(fullfile(pathname,filename));
    end
    Si je choisit une image dans le répertoire courant la fonction marche, mais si je vais chercher mon image dans un autre sous dossier, j'ai un message d'erreur:

    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
     
    ??? Error using ==> medformats\private\isanalyze75>hdrFileOpen
    File "t1_icbm_normal_1mm_pn0_rf20.hdr" does not exist.
     
    Error in ==> medformats\private\isanalyze75 at 32
    fid  = hdrFileOpen (filename, openMode);
     
    Error in ==> analyze75info>parseInputs at 487
    if ~isanalyze75(filename)
     
    Error in ==> analyze75info at 141
    [args, userSupplied] = parseInputs(filename, varargin{:});
     
    Error in ==> analyze75read>parseInputs at 83
            metadata = analyze75info(FirstArg);
     
    Error in ==> analyze75read at 58
    [metadata, ImgFilename, userSupplied] = parseInputs(varargin{:});
     
    Error in ==> readimage at 8
        vol=analyze75read(fullfile(pathname,filename));
    Pourtant le fichier .hdr se trouve toujours avec le fichier .img, d'ailleurs si je change le répertoire courant avant d'appeler la fonction ça marche.
    MATLAB Version 7.13.0.564 (R2011b)
    Microsoft Visual studio 2010
    LabView 2013 service pack1

  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 302
    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 302
    Points : 52 882
    Points
    52 882
    Par défaut
    C'est bizarre

    Essaie ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    function vol=readimage;
    display 'lecture'
    [filename,pathname,Bool] = uigetfile( ...
        {'*.hdr;*.img;', 'All images Files (*.hdr,*.img)'}, ...
        'Choisissez un fichier');
    if Bool
        currentdir=cd;
        cd(pathname);
        vol=analyze75read(filename);
        cd(currentdir);
    end
    Ingénieur indépendant en mécatronique - Conseil, conception et formation
    • Conception mécanique (Autodesk Fusion 360)
    • Impression 3D (Ultimaker)
    • Développement informatique (Python, MATLAB, C)
    • Programmation de microcontrôleur (Microchip PIC, ESP32, Raspberry Pi, Arduino…)

    « J'étais le meilleur ami que le vieux Jim avait au monde. Il fallait choisir. J'ai réfléchi un moment, puis je me suis dit : "Tant pis ! J'irai en enfer" » (Saint Huck)

  3. #3
    Membre habitué Avatar de larimoise
    Inscrit en
    Octobre 2006
    Messages
    220
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 220
    Points : 197
    Points
    197
    Par défaut
    ça marche .
    Merci Dut
    MATLAB Version 7.13.0.564 (R2011b)
    Microsoft Visual studio 2010
    LabView 2013 service pack1

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

Discussions similaires

  1. Utiliser une image de fond dans une application
    Par Haiden dans le forum Débuter
    Réponses: 7
    Dernier message: 14/04/2011, 16h29
  2. Réponses: 0
    Dernier message: 14/04/2010, 13h40
  3. utiliser une image comme fond d'une interface graphique
    Par élève_ingénieur dans le forum Interfaces Graphiques en Java
    Réponses: 3
    Dernier message: 01/12/2009, 21h28
  4. utiliser une image de fond pour une application
    Par AM1NE dans le forum Débuter
    Réponses: 4
    Dernier message: 03/07/2009, 12h18

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