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 :

[imwrite] Compression JPEG2000 d'une image .png


Sujet :

Images

  1. #1
    Futur Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Avril 2014
    Messages
    26
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2014
    Messages : 26
    Points : 8
    Points
    8
    Par défaut [imwrite] Compression JPEG2000 d'une image .png
    bonjour à tous,

    je cherche à compresser une image (.png) en JPEG2000 (.jp2) grâce à la commande suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    imwrite(J,'comp40.jp2','jp2','Mode','lossy','CompressionRatio',40);
    Après plusieurs tests, il me semble que la compression ne fonctionne pas comme souhaité sur les images .png puisque pour observer les artéfacts de compression, il faut mettre un taux de compression d'au moins 300.

    En revanche, lorsque je teste la même commande avec une image .tif cela ne pose aucun problème et la compression se fait correctement.

    Avez-vous déjà rencontré ce problème avec le format .png? Si oui, quelle est la marche à suivre?

    Je vous remercie par avance.

  2. #2
    Futur Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Avril 2014
    Messages
    26
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2014
    Messages : 26
    Points : 8
    Points
    8
    Par défaut Compression JPEG2000 d'une image DICOM
    Bonjour à tous,

    je cherche à compresser un image Dicom (.dcm) en JPEG2000 (.jp2).
    Je pensais utiliser la fonction dicomwrite, cependant, lorsque je mets les arguments de cette manière cela ne marche pas :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    dicomwrite(Y,'test.dcm','CompressionMode','JPEG2000 lossy');
    De plus, je ne réussis pas à la convertir en JPEG2000 en utilisant la fonction imwrite de cette manière :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    imwrite(X,'Xcomp.jp2','jp2','Mode','lossy','CompressionRatio',10);
    en effet, avec cette dernière commande le fichier .jp2 se crée bien cependant l'image est noire.

    Merci par avance pour votre aide.

  3. #3
    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
    Points : 7 614
    Points
    7 614
    Par défaut
    Bonjour,

    pourrais-tu nous donner un exemple d'image dicom (le fichier) pour lequel ça ne marche pas et le code associé?

  4. #4
    Futur Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Avril 2014
    Messages
    26
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2014
    Messages : 26
    Points : 8
    Points
    8
    Par défaut
    Bonjour,

    voici le code que j'utilise pour le moment :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    X = dicomread('test.dcm');
    imwrite(X,'Xcomp.jp2','jp2','Mode','lossy','CompressionRatio',50);
    Xcomp = imread('Xcomp.jp2');
    figure(1), imshow(Xcomp,[])
    Lorsque je lance le code l'image compressée s'affiche bien cependant le fichier enregistré est une image noire (fichier Xcomp.jp2). Je pense que cela pourrait venir du fait que le bitdepth de l'image Dicom est de 12 et celui de l'image compressée est de 16.
    Voilà les infos sur l'image Dicom :

    FileModDate: '18-mar-2015 09:23:42'
    FileSize: 148968
    Format: 'DICOM'
    FormatVersion: 3
    Width: 256
    Height: 256
    BitDepth: 12
    ColorType: 'grayscale'
    FileMetaInformationGroupLength: 190
    FileMetaInformationVersion: [2x1 uint8]
    MediaStorageSOPClassUID: [1x25 char]
    MediaStorageSOPInstanceUID: [1x56 char]
    TransferSyntaxUID: '1.2.840.10008.1.2.1'
    ImplementationClassUID: [1x27 char]
    ImplementationVersionName: 'OSIRIX'
    SpecificCharacterSet: 'ISO_IR 100'
    ImageType: [1x52 char]
    SOPClassUID: [1x25 char]
    SOPInstanceUID: [1x56 char]

    Voilà les infos sur l'image compressée en JPEG2000 :

    Filename: [1x57 char]
    FileModDate: '18-mar-2015 11:01:18'
    FileSize: 2588
    Format: 'JP2'
    FormatVersion: []
    Width: 256
    Height: 256
    BitDepth: 16
    ColorType: 'grayscale'
    BitsPerSample: 16
    CodeBlockDims: [64 64]
    CodestreamComponents: 1
    CodestreamProfile: 'PROFILE2'
    ColorSpace: 'sLUM'
    Comments: {}
    ImageStartLocation: [1 1]
    NumberOfTiles: 1
    ProgressionOrder: [1x44 char]
    QualityLayers: 1
    TileSize: [256 256]
    WaveletDecompositionLevels: 4
    WaveletKernel: '9x7'
    WidthSubSampling: 1
    HeightSubSampling: 1


    Pour l'envoi du fichier Dicom, je n'arrive pas à l'envoyer sur le forum car le format n'est pas supporté. Puis-je vous l'envoyer autrement? Filename: 'test.dcm'

  5. #5
    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
    Points : 7 614
    Points
    7 614
    Par défaut
    Tu peux mettre ton image dans une archive zip et la joindre dans ton prochain message.

  6. #6
    Futur Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Avril 2014
    Messages
    26
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2014
    Messages : 26
    Points : 8
    Points
    8
    Par défaut
    test2.dcm.zip
    voilà la pièce jointe

  7. #7
    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
    Points : 7 614
    Points
    7 614
    Par défaut
    Citation Envoyé par eragon4992 Voir le message
    Lorsque je lance le code l'image compressée s'affiche bien cependant le fichier enregistré est une image noire (fichier Xcomp.jp2)
    Tu veux dire que l'image est noire dans ton explorateur de fichier? Je pense que c'est juste du au fait que le format n'est pas reconnu par ton explorateur de fichier mais l'image peut s'ouvrir avec les logiciels qui peuvent lire ce format (dont matlab).

  8. #8
    Futur Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Avril 2014
    Messages
    26
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2014
    Messages : 26
    Points : 8
    Points
    8
    Par défaut
    Le soucis c'est que quand je compresse d'autres images en .jp2 je peux les observer correctement dans mes fichiers.
    Sur Matlab si j'enlève le [] dans le imshow : , je ne visualise plus l'image dans la Figure 1, j'ai alors de la même manière l'image noire.

  9. #9
    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
    Points : 7 614
    Points
    7 614
    Par défaut
    En fait, oui, l'explorateur de fichier reconnait le jp2, c'est juste une question de contraste et de niveau de gris. Les valeurs de niveaux de gris de l'image dicom sont comprises entre 0 et 261 (le codage sur 12 bits ici ne sert à rien). dicomread lit les valeurs et les mets dans un tableau d'entiers en 16 bits (pour ne pas perdre d'info). Les valeurs sont toujours comprises entre 0 et 261, et par rapport à l'intervalle [0 65536)] du 16 bits, ces valeurs correspondent aux noirs. Voila pourquoi ton image s'affiche en noire, sauf si le contraste est ajusté, ce que fait a priori l'option [] dans imshow.

  10. #10
    Futur Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Avril 2014
    Messages
    26
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2014
    Messages : 26
    Points : 8
    Points
    8
    Par défaut
    du coup y aurait-il une commande à ajouter pour pouvoir observer l'image jpeg2000 correctement sans avoir à ajouter [] (qui reste une solution provisoire) ?

  11. #11
    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
    Points : 7 614
    Points
    7 614
    Par défaut
    Pourquoi imshow(Xcomp,[]) ne convient pas?

  12. #12
    Futur Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Avril 2014
    Messages
    26
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2014
    Messages : 26
    Points : 8
    Points
    8
    Par défaut
    Je dois pouvoir visualiser l'image jp2 depuis mon explorateur. Cependant je pense avoir trouvé la solution :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    imwrite(uint8(X),'Xcomp50.jp2','jp2','Mode','lossy','CompressionRatio',27);
    Rajouter le uint8 permet de visualiser l'image correctement

  13. #13
    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
    Points : 7 614
    Points
    7 614
    Par défaut
    Oui, c'est une solution, mais attention, uint8 va couper tout ce qui se trouve au dessus de 255 :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    >> uint8(260)
     
    ans =
     
      255

  14. #14
    Futur Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Avril 2014
    Messages
    26
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2014
    Messages : 26
    Points : 8
    Points
    8
    Par défaut
    comment pourrais-je éviter ce problème et pour autant pouvoir voir mon image dans mon explorateur?

  15. #15
    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
    Points : 7 614
    Points
    7 614
    Par défaut
    C'est une image unique, ou bien tu traites une piles d'images?

  16. #16
    Futur Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Avril 2014
    Messages
    26
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2014
    Messages : 26
    Points : 8
    Points
    8
    Par défaut
    j'aurais en effet de nombreuses images à compresser de cette manière.

  17. #17
    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
    Points : 7 614
    Points
    7 614
    Par défaut
    Juste pour être sur, ma question portait sur la relation entre ces images : sont-elles indépendantes ou font-elles partie d'un même examen par tomographie par exemple comme le laisse supposer l'image que tu nous as montrée?

Discussions similaires

  1. Mettre une image png dans un Timage
    Par Coussati dans le forum Composants VCL
    Réponses: 7
    Dernier message: 02/03/2006, 18h05
  2. Réponses: 4
    Dernier message: 09/02/2006, 17h44
  3. [ImageMagick] Affichage d'une image png
    Par JavaAcro dans le forum Bibliothèques et frameworks
    Réponses: 15
    Dernier message: 06/02/2006, 09h13
  4. [Image] Décomposer une image png.
    Par Quintoff dans le forum 2D
    Réponses: 3
    Dernier message: 06/01/2006, 20h22
  5. [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

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