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

C++Builder Discussion :

[Débutante]Lire et afficher une image IRM sous C++ builder


Sujet :

C++Builder

  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 [Débutante]Lire et afficher une image IRM sous C++ builder
    Salut à tous,


    Je voudrais parvenir à lire et afficher une image IRM (Constituée de plusieurs coupes), sous builder C++ pour arriver à effectuer plus tard des traitements sur cette dernière.

    Est ce que quelqu'un a une idée sur comment faire??


    Merci d'avance
    MATLAB Version 7.13.0.564 (R2011b)
    Microsoft Visual studio 2010
    LabView 2013 service pack1

  2. #2
    Membre chevronné
    Avatar de Crayon
    Inscrit en
    Avril 2005
    Messages
    1 811
    Détails du profil
    Informations personnelles :
    Localisation : Autre

    Informations forums :
    Inscription : Avril 2005
    Messages : 1 811
    Points : 2 189
    Points
    2 189
    Par défaut
    Je ne connais pas vraiment l'Imagerie par résonance magnétique, est-ce qu'il existe seulement un seul type de fichier pour les IRM?

    Sur le site de WikiPédia:
    http://fr.wikipedia.org/wiki/Imageri...agn%C3%A9tique
    Il pourrais y avoir des liens intéressants, voir les cours C++ https://cpp.developpez.com/cours/
    • Plus un ordinateur possède de RAM, plus vite il peut générer un message d'erreur. - Dave Barry
    • Je n'ai pas peur des ordinateurs. J'ai peur qu'ils viennent à nous manquer. - Isaac Asimov
    • Le code source est comme une belle femme, plus on le regarde, plus on trouve des défauts. - Crayon

  3. #3
    Membre éprouvé
    Avatar de bandit boy
    Profil pro
    Inscrit en
    Février 2006
    Messages
    916
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 916
    Points : 1 007
    Points
    1 007
    Par défaut
    Salut,
    sous quel forme disposes-tu de cette image?
    Est-ce des données tranférées ou une image complète existante?

  4. #4
    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 [Débutante]Lire et afficher une image IRM sous C++ builder
    Salut,
    il y'a différents formats pour les images médicales, pour ma part j'ai téléchargé une image IRM à partir d'un simulateur d'images cérébrales (Brainweb) de formats minc, et j'utilise un logiciel pour les transformer au format Analyse, Img ou HDR. Je peux aussi utiliser un logiciel pour enregistrer automatiquement à partir d'une image .IMG une série d'images de toutes les coupes et selon 3 axes (axiale, coronale et sagittale) au format bmp.
    Il y'a aussi le format Dicom.
    Je ne sais pas si je peux lire avec builder un fichier image constitué de toutes les coupes, ou si il faut passer par les différentes images .bmp et les lire une à une ???

    Qu'en pensez- vous?

    Merci à tous
    MATLAB Version 7.13.0.564 (R2011b)
    Microsoft Visual studio 2010
    LabView 2013 service pack1

  5. #5
    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
    Citation Envoyé par larimoise
    Salut,
    ........
    ........
    Je ne sais pas si je peux lire avec builder un fichier image constitué de toutes les coupes, ou si il faut passer par les différentes images .bmp et les lire une à une ???

    Qu'en pensez- vous?
    c sûr qu'avec c++builder en peux lire n'importe quel fichier enregistré sur le disque, cependant reste à connaître le format de ce fichier.

    Dans mon domaine de recherche, on utilise les images IRM cérébrales issues d'un imageur IRM suivant des modalitées, DIFF, FLAIR, T2, ....
    Le format des images qu'on utilise c'est le format ANALYZE 7.5, on lis directement le volume contenu dans le fichier .img, pour le faire, on utilise les informations (ou caractéristiques) contenues dans le fichier d'entêtes le .hdr

    Après avoir lu le volume contenu dans le fichier .img, et à l'aide des transformations géométrique on arrive à reconstituer les autres coupes (sag, ou cor, ou axiale).

    voilà, si tu à besoin de l'aide sur le format des fichiers ANALYSE 7.5 (.img, .hdr) faite nous signe.

    de toute façon du peut ecrire un programme en c++builder (ou en c++) qui peut lire les fichiers analyse.

    @+
    Les règles Les cours La fonction rechercher

    N'oubliez pas de mettre en et de voter.

    La terre n'est pas un héritage de nos parents, mais un emprunt que nous faisons à nos enfants. La protection de notre environnement est la responsabilité de tous. Ne reculez plus devant l'urgence, agissez !

  6. #6
    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
    Donc si j'ai bien compris, on peut lire le format .img et .hdr avec c++, et on aura besoin des deux pour reconstituer l'image.
    Si vous pouviez m'indiquer un petit exemple ça m'aiderait bien.

    Merci
    MATLAB Version 7.13.0.564 (R2011b)
    Microsoft Visual studio 2010
    LabView 2013 service pack1

  7. #7
    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
    ben oui absolument;

    voici un lien que tu peu utiliser pour démarrer, il contient tout ce qu'il te faut.


    @+
    Les règles Les cours La fonction rechercher

    N'oubliez pas de mettre en et de voter.

    La terre n'est pas un héritage de nos parents, mais un emprunt que nous faisons à nos enfants. La protection de notre environnement est la responsabilité de tous. Ne reculez plus devant l'urgence, agissez !

  8. #8
    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
    Ok je vais tester le script.

    Merci beaucoup^.
    MATLAB Version 7.13.0.564 (R2011b)
    Microsoft Visual studio 2010
    LabView 2013 service pack1

  9. #9
    Expert éminent sénior
    Avatar de Mat.M
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2006
    Messages
    8 360
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2006
    Messages : 8 360
    Points : 20 377
    Points
    20 377
    Par défaut
    Qu'importe que cela soit une image médicale ou pas , BCB lui ne connait que les jpeg et bmp.
    Donc c'est à toi de faire les transformations nécessaires tu peux adresser les pixels du Canvas ou bien ce que je recommenderais passer par les API Windows.
    Sinon LeadTools fait des composants tout fait la société pour laquelle tu travailles peut acheter une licence
    www.leadtools.com

  10. #10
    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
    Oui effictivement, mais ici on parle d'un volume (coupe par coupe) cérébral, il suffit juste de lire le volume complet et afficher la coupe qui nous interesse selon une projection.

    si par exemple notre fichier contien un volume de :
    Z: nbre de coupe.
    H: Nbre de ligne par coupe.
    L: Nbre de colonne par coupe.
    donc notre volume est Vol(ZxHxL)

    A l'aide d'un composant TImage, et par ailleurs on peut convertir une matrice (exemple : Mat(HxL)) en une image de niveaux de gris. ça revient à afficher la coupe choisie par la valeur de Z.

    Voilà @+
    Les règles Les cours La fonction rechercher

    N'oubliez pas de mettre en et de voter.

    La terre n'est pas un héritage de nos parents, mais un emprunt que nous faisons à nos enfants. La protection de notre environnement est la responsabilité de tous. Ne reculez plus devant l'urgence, agissez !

  11. #11
    Membre régulier Avatar de bahiatoon
    Inscrit en
    Juillet 2006
    Messages
    169
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations forums :
    Inscription : Juillet 2006
    Messages : 169
    Points : 74
    Points
    74
    Par défaut
    salut,

    il suffit de créer un champ TImage,de glisser sur ta forme un PictureDialog, de mettre tes images au format BMP et d'utiliser le code suivant:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    OpenPictureDialog1->Filter = "Bmp file(*.bmp)|*.BMP";
    if (OpenPictureDialog1->Execute())
    {
    Image1->Picture->Bitmap->LoadFromFile(OpenPictureDialog1->FileName);
    }
    A+

  12. #12
    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
    Citation Envoyé par bahiatoon
    salut,

    il suffit de créer un champ TImage,de glisser sur ta forme un PictureDialog, de mettre tes images au format BMP et d'utiliser le code suivant:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    OpenPictureDialog1->Filter = "Bmp file(*.bmp)|*.BMP";
    if (OpenPictureDialog1->Execute())
    {
    Image1->Picture->Bitmap->LoadFromFile(OpenPictureDialog1->FileName);
    }
    A+
    Non ça ne marchera pas, car les images IRM (RMN en français) ne sont pas sous format .Bmp

    Les règles Les cours La fonction rechercher

    N'oubliez pas de mettre en et de voter.

    La terre n'est pas un héritage de nos parents, mais un emprunt que nous faisons à nos enfants. La protection de notre environnement est la responsabilité de tous. Ne reculez plus devant l'urgence, agissez !

  13. #13
    Membre régulier Avatar de bahiatoon
    Inscrit en
    Juillet 2006
    Messages
    169
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations forums :
    Inscription : Juillet 2006
    Messages : 169
    Points : 74
    Points
    74
    Par défaut
    Salut,

    je sais que les IRM ne sont pas sous format BMP, en général on les trouve sous format Dicom, mais le c++ builder ne reconnait pas ce format donc pour les ouvrir on est obligé de changer le format de l'image.

    A+

  14. #14
    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
    Citation Envoyé par bahiatoon
    Salut,

    je sais que les IRM ne sont pas sous format BMP, en général on les trouve sous format Dicom, mais le c++ builder ne reconnait pas ce format donc pour les ouvrir on est obligé de changer le format de l'image.

    A+
    En fait, un fichier d'images IRM ne contient pas qu'une seule image, en imagerie médicale on parle de volume cérébral. càd, que dans le fichier on trouve toutes les coupes du crâne icompris le cerveau. Donc on ne n'a pas besoin de faire un changement de format de fichier il faut lire le fichier, choisir une coupe, et afficher le reste.


    @+
    Les règles Les cours La fonction rechercher

    N'oubliez pas de mettre en et de voter.

    La terre n'est pas un héritage de nos parents, mais un emprunt que nous faisons à nos enfants. La protection de notre environnement est la responsabilité de tous. Ne reculez plus devant l'urgence, agissez !

Discussions similaires

  1. Lire et afficher une image en Qt
    Par zules dans le forum Qt
    Réponses: 150
    Dernier message: 14/04/2009, 21h11
  2. Afficher une image Base64Binary sous crystal report
    Par tarekos dans le forum SAP Crystal Reports
    Réponses: 0
    Dernier message: 04/06/2008, 11h57
  3. Lire et afficher une image 3D (RGB)
    Par 77Camille dans le forum MATLAB
    Réponses: 1
    Dernier message: 06/06/2007, 12h09
  4. Lire et afficher une image (format TIFF)
    Par nuans dans le forum Interfaces Graphiques
    Réponses: 2
    Dernier message: 30/04/2007, 15h33
  5. Afficher une image TIF sous VC++
    Par mqsi dans le forum MFC
    Réponses: 1
    Dernier message: 15/10/2006, 09h51

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