[Dcmlib] GetZSpacing

Mathieu Malaterre mathieu.malaterre at kitware.com
Tue Dec 21 19:17:14 CET 2004


Jean-Pierre Roux wrote:
> Bonsoir.
> Et une curiosite de plus !
> 
> Notre methode  'a valeur ajoutée' GetZSpacing() procede comme suit :
> 
> * \brief gets the info from 0018,0088 : Space Between Slices
> *                else from 0018,0050 : Slice Thickness
> *                else 1.0
> 
> Sympatique tant qu'on trouve l'un des 2 champs et/ou qu'on n'a pas 
> besoin de ZSpacing ...
> 
> On a maintenant des images SANS ces deux champs.
> Je suppose qu'il faut aller chercher l'info dans
> 0020 0032 DS REL Image Position Patient
> (coordonnees X,Y,Z du pixel 0,0 de l'image)
> Il faudra alors esperer que les images ne sont pas paralleles a l'axe Z ...

En theorie pour etre propre GetZSpacing devrait retourner 0 des qu'elle 
s'appercoit qu'elle n'a qu'une image non multiframe en entree. On ne 
devrait meme pas chercher dans les tags DICOM, c'est une condition 
necessaire.

En revanche si on a soit une serie DICOM soit une image multiframe alors 
oui on peut aller chercher l'info dans Space Between Slices / Slices 
Thickness. Et effectivement si la valeur n'est pas trouver on devrait 
alors retenir la valeur trouver durant la calcul de:

bool SerieHeader::ImagePositionPatientOrdering()

Dans cette fonction je calcule le vecteur normal a deux images (j'ai 
besoin de Image Position et Image Orientation ... avec un peu de chance 
ces champs sont obligatoires )

Mathieu





More information about the Dcmlib mailing list