[Dcmlib] MONOCHROME1 vs MONOCHROME2

laurent.paul at club-internet.fr laurent.paul at club-internet.fr
Fri Apr 29 11:33:05 CEST 2005


Bonjour la Gdcm team!

Si j'ai bien compris, c'est plus simple pour tout le monde si je poste ici. 
Je vous explique:

Je voudrais utiliser ITK pour lire une serie dicom, cropper le volume, rescaler l'intensité, registrer...
Je construits des petits exe qui mis bout a bout realisent la registration. Jusqu'ici j'utilisais un log pour convertir les images en volume (Analyze, mais je suis pret a changer si vous me conseillez un format meilleur que celui-ci).
Je voudrais lire une serie provenant d'un CT, monochrome2, avec une vleur intercept de -1000, avec DicomSeriesReadImageWrite2.cxx qui utilise donc votre librairie. En sortie de cet exe, les couleurs sont inversées.
Je suis allé fouiller dans le volume pour lire les valeurs en hexa. Le noir a une valeur de 0x18FC alors que d'origine (dans les images Dicom) il est de 0x0000. 
Mais je ne pense pas que le pb viennent de votre librairie. C'est plus complexe que ca. Quand j'ouvre le volume obtenu avec MRicro, le blanc (l'os) est noir et inversement. Le blanc vaut 32268 (le max) et le noir 0 (le min). Je pense que c'est MRicro (qui gere la variable "intercept", on peut meme la modifier en direct)  qui ne fait pas la différence entre entier signés et non signés.
 Quand j'ouvre le meme volume avec Volview, en format raw, je lui specifie que les données sont des entiers signés et l'affichage est bon, le noir valant -1000 et le blanc valant environ 2000, ma valeur initiale.
Je pense que MRicro se melange les pedales au moment de la lecture des données.

C'est un probleme assez complexe a expliquer, en gros je voudrais savoir comment se fait la conversion et si "intercept" entre en jeu.

Merci de votre aide, 

Laurent.





More information about the Dcmlib mailing list