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 :

Transformer une image .png en format DICOM [Débutant]


Sujet :

Images

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Novembre 2009
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2009
    Messages : 24
    Points : 11
    Points
    11
    Par défaut Transformer une image .png en format DICOM
    Bonjour,

    J'ai besoin de votre aide, voici mon problème dans une interface graphique j'affiche dans une fenêtre mes résultats, sous forme de tableaux et graphe.
    sous Matlab j'ai réussi à sauvegarder cette fenêtre sous forme d'image .png et je la stocke dans un fichier. mais je souhaite que cette image soit sous format DICOM.donc j'ai testé cela :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
     
    function save_ClickedCallback(hObject, eventdata, handles)
     
    global Patient_ID; global Patient_Name; global Patient_FamilyName; global I;
    data=guihandles(gcf);
    set(data.figure1,'PaperPositionMode','auto')
     
    I = print('-dpng',['C:\Reports\',Patient_Name,'_',Patient_FamilyName,'_','Report']);
    dicomwrite(I,'ankle.dcm');

    le souci est cette erreur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    ??? Error using ==> print
    Too many output arguments.
     
    Error in ==> print
     
     
    Error in ==> Report>save_ClickedCallback at 158
    I = print('-dpng',['C:\Reports\',Patient_Name,'_',Patient_FamilyName,'_','Report']);
    est il une autre façon de faire ? j'ai tester la fonction dicomwrite sur une image jpg normal ça marche

    quelqu'un peut m'aider
    merci d'avance

  2. #2
    Membre chevronné
    Avatar de kmaniche
    Inscrit en
    Janvier 2006
    Messages
    1 717
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 717
    Points : 1 884
    Points
    1 884
    Par défaut
    Bonjour,

    Si ton image est affichée, tu peux utiliser la fonction getimage(...) pour résupérer le contenu, et ensuite sauver avec dicomwrite.
    ou faire simplement :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    dicomwrite(getimage(...), 'c:\img.png')

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Novembre 2009
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2009
    Messages : 24
    Points : 11
    Points
    11
    Par défaut
    Bonjour,

    J'ai testé le getimage() mais j'ai toujours la même erreur

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    dicomwrite(getimage(print('-dpng',['C:\Reports\',Patient_Name,'_',Patient_FamilyName,'_','Report'])), 'c:\ankle.dcm')
    le code de cette fonction callback est :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    function save_ClickedCallback(hObject, eventdata, handles)
     
    data=guihandles(gcf);
    set(data.figure1,'PaperPositionMode','auto')
     
    global Patient_ID; global Patient_Name; global Patient_FamilyName; global I;
     
     
    dicomwrite(getimage(print('-dpng',['C:\Reports\',Patient_Name,'_',Patient_FamilyName,'_','Report'])), 'c:\ankle.dcm')
    voila est ce que quelqu'un peut me dire comment je peux corriger

    l'erreur :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    ??? Error using ==> print
    Too many output arguments.
     
    Error in ==> print
     
     
    Error in ==> Report>save_ClickedCallback at 206
    dicomwrite(getimage(print('-dpng',['C:\Reports\',Patient_Name,'_',Patient_FamilyName,'_','Report'])), 'c:\ankle.dcm')
    merci de votre aide

  4. #4
    Membre chevronné
    Avatar de kmaniche
    Inscrit en
    Janvier 2006
    Messages
    1 717
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 717
    Points : 1 884
    Points
    1 884
    Par défaut
    Bonjour,

    Avant de commencer à programmer avec une nouvelle fonction que l'on connait pas, il vaut mieux lire la doc :

    Ensuite, je vois que tu n'as pas regardé le code je je t'ai donné !

    Dans ton code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    dicomwrite(getimage(print('-dpng',['C:\Reports\',Patient_Name,'_',Patient_FamilyName,'_','Report'])), 'c:\ankle.dcm')
    le print est en plus

    Essaie ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    dicomwrite(getimage, ['C:\Reports\',Patient_Name,'_',Patient_FamilyName,'_','Report'],  'c:\ankle.dcm')

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Novembre 2009
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2009
    Messages : 24
    Points : 11
    Points
    11
    Par défaut
    Merci pour ton aide ,

    voici j'ai suivi tes conseils
    j'ai cette erreur là:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    ?? Error using ==> dicomwrite>parse_inputs at 308
    Parameter c:\ankle.dcm must have an associated value.
     
    Error in ==> dicomwrite at 179
    [filename, map, metadata, options] = parse_inputs(varargin{:});
     
    Error in ==> Report>save_ClickedCallback at 234
    dicomwrite(getimage, ['C:\Reports\',Patient_Name,'_',Patient_FamilyName,'_','Report'],  'c:\ankle.dcm')
    tu peux m'expliquer un peu comment je peux m'en sortir

    merci

  6. #6
    Membre à l'essai
    Profil pro
    Inscrit en
    Novembre 2009
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2009
    Messages : 24
    Points : 11
    Points
    11
    Par défaut
    HELLO
    j'ai plutôt réussi avec la fonction imread ().

    le code est cela :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
     
    function save_ClickedCallback(hObject, eventdata, handles)
     
    data=guihandles(gcf);
    set(data.figure1,'PaperPositionMode','auto')
     
    global Patient_Name; global Patient_FamilyName; global I; global str;
    print('-dpng',['C:\Reports\',Patient_Name,'_',Patient_FamilyName,'_','Report']);
     
    I= imread(['C:\Reports\',Patient_Name,'_',Patient_FamilyName,'_','Report.png']);
    dicomwrite(I,['C:\ReportsDicom\',Patient_Name,'_',Patient_FamilyName,'_',str,'_','Report.dcm']);
    merci pour ton aide

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

Discussions similaires

  1. [Python 3.X] Créer une image png à partir d'une image de format quelconque avec Python
    Par bguy4 dans le forum Général Python
    Réponses: 3
    Dernier message: 30/10/2014, 10h49
  2. Transformer une image(*.png) en vecteur binaire
    Par maiza_med dans le forum Images
    Réponses: 2
    Dernier message: 04/03/2008, 08h36
  3. [Image] Décomposer une image png.
    Par Quintoff dans le forum 2D
    Réponses: 3
    Dernier message: 06/01/2006, 20h22
  4. [Cross-Browser] Couleur d'une image PNG
    Par [BkM-) dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 17/11/2005, 21h00
  5. [java - SQL] transformer une Image en BLOB ?
    Par pierre.zelb dans le forum JDBC
    Réponses: 3
    Dernier message: 04/07/2005, 15h04

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