[Dcmlib] converting itk,vtk or any other 3D images into dicom.

Emmanuel olart eolart at theralys.com
Thu Oct 28 11:53:18 CEST 2004


Bonjour,

testChangeHeader travaille sur une image, mais s'inspirer de ce code en
faisant un for sur la dimension Z de ton image te permettra d'ecrire ta
série.
Je le fais personnellement tous les jours a partir de vtkImageData que je
transforme en une serie de N images DICOM.
Dans mon cas je me sers d'une image "test" qui contient un header
minimaliste que je met a jour en lui collant les data nécessaire et que je
sauve comme nouvelle image pour chacune des coupes.

Si tu écris du signed short, pense bien a mettre a jour les champs Pixel
Representation (à 1 car signed) et Bits Allocated (16 car short) pour
garantir que ton reader les relira correctement.

Manu

----- Original Message ----- 
From: <jean-michel.rouet at philips.com>
To: "Mathieu Malaterre" <mathieu.malaterre at kitware.com>
Cc: <Dcmlib at creatis.insa-lyon.fr>
Sent: Thursday, October 28, 2004 10:54 AM
Subject: Re: [Dcmlib] converting itk,vtk or any other 3D images into dicom.


> Salut Mathieu et merci pour ces informations,
>
> Je viens de recuperer la version cvs de gdcm, mais elle ne compile pas
> sous Visual.NET 2003.
> Le compilo se plaint de deux choses qu'il est peut etre interessant de
> noter pour les prochaines versions:
> 1)      l'enum Unknown (de gdcmCommon.h) est en conflit avec un Unknown de
> WinIOCtl.h ou un truc du genre (je sais plus).
> En le renomant UnknownFile et en modifiant un tout petit peu
> gdcmDocument.cxx ca passe
> 2)      typedef GDCM_EXPORT void(Method)(void* = NULL); ne passe pas car
le compilo dit qu'on ne peut pas donner d'argument par
> defaut au symbole gdcm::Method.
> En commentant le '=NULL' ca passe
>
>
> Concernant l'ecriture en dicom, est-ce que l'example TestChangeHeader.cxx
> prend en compte des series d'images ?
> Moi j'ai une image synthetique (créée a la mimine avec des signed short
> d'une taille 512x512x256, que je sauve disons en .RAW ou en .VTK ou autre)
> et j'aimerais la transformer en dicom afin de l'importer dans un autre
> programme qui lui, ne lit que des dicom ou des series de dicom.
>
> Est-ce qu'il existe d'autre librairies qui pourraient faire ca ?
>
> JM
>
> On 27/10/2004 23:06:42 Mathieu Malaterre wrote:
> >Salut,
> >
> >Il y a un test gdcm/TestChangeHeader.cxx qui devrait faire l'affaire.
> >Pour y aller etapes par etapes, je lirai une image dicom multiframe
> >(y'en a dans gdcmData). Ensuite il faut /sans doute/ changer la taille
> >de l'image (0x0028,0x0011). Puis passer un pointeur vers l'image data.
> >Ensuite y'aura des problemes liee aux bits stored/hish bits et autre, si
> >l'image d'entree est vraiment differente de l'image passer par pointeur.
> >
> >En clair, ce n'est pas simple, mais gdcm est vraiment tourne'e "d'abord
> >dicom en lecture". Ecriture /from scratch/ c'est encore un peu
> >experimental. gdcm n'a pas de notion de tag necessaire lors de
> >l'ecriture. Donc si l'utilisateur oubli un tag essentiel l'image a de
> >grande chance de ne pas pouvoir etre relue.
> >
> >En tout cas c'est un tres bon exercice, je vais voir si je peux ajouter
> >un test/exemple dans gdcm.
> >
> >HTH
> >Mathieu
>
> _______________________________________________
> Dcmlib mailing list
> Dcmlib at creatis.insa-lyon.fr
> http://www.creatis.insa-lyon.fr/mailman/listinfo/dcmlib
>
>





More information about the Dcmlib mailing list