[Dcmlib] UID: Question pour Theralys

Mathieu Malaterre mathieu.malaterre at kitware.com
Mon Sep 27 17:53:38 CEST 2004


Eric Boix wrote:
> 	Yo,
> 
> Quoting Mathieu Malaterre <mathieu.malaterre at kitware.com>:
> 
>>	Une question pour un guru DICOM. Est-ce que c'est vrai qu'il faut 
>>	une nouvelle UID a chq fois que l'on ecris une image DICOM ?
> 
> Ben, dans le standard il est ecrit que oui. Chaque image (entre autres)
> doit avoir un UID (pense aux PACS) i.e. un Unique IDentifier...
> (fait un "grep UID gdcm/Dicts/dicomV3.dic" et t'en vera un pacquet).
> Un UID est de la forme entier1.entier2.entier3....
> 
> Le pb c'est que pour generer un tel UID, chaque constructeur (ou
> generateur d'image) doit faire deux choses:
>  * avoir un radical (operation payante) correspondant a lui
>    (c'est ce qu'a fait Theralys par exemple).
>  * garantir que chaque image sous ce radical est unique.
> 
> La deuxieme partie est faisable avec du hard, mais avec du soft c'est
> plus dur a implementer (on peut par exemple coller le numero IP de
> la machine ou le code tourne, mais c'est un pis-aller)... Il faudrait
> un modele centralise' pour garantir les choses.
> 
> Le "mieux" est sans doute (afin d'eviter les ennuis) de modifier l'UID
> lors d'une Write de gdcm en post-fixant avec un truc genre
>    "GDCM"+numeroIP+date
> 
> Mais bon...c'est vraiment pas clean.

Alors je pose la question a l'envers pour Theralys est-ce que gdcm 
fournit l'API necessaire pour faire cette operation ou est-ce que vous 
avez hacke' dans le code pour faire le necessaire.

Est-ce qu'on peut faire une heuristique

if( radical fournit)
    return radical + "GDCM" + IP + date
else
    return oldradical + "GDCM" + IP + date


Commentaires ?
Mathieu





More information about the Dcmlib mailing list