[Dcmlib] Load(NO_SHADOW)
Jean-Pierre Roux
jpr at creatis.insa-lyon.fr
Thu Jun 2 16:36:48 CEST 2005
Benoit Regrain wrote:
> Et pour les fichiers, cela ne gene pas d'avoir NO_SHADOW ?
Ca genera cahque fois que l'on aura une entete ainsi buggée, et que l'on
parsera un fichier avec NO_SHADOW ...
*un seul* exemple dans notre Data Set d'enfer, mais dans un *vrai
fichier Dicom*, fabrique en 2003.
On peut donc craindre d'en retrouver d'autre.
En ce qui concerne gdcm natif, c'est l'utilisateur qui decide ce qu'il
fait, ce n'est pas sous notre controle.
(La plupart du temps, il ne fera rien ...)
Mazis ...
... vtkGdcmReader, c'est *nous* qui avons imposé le NO_SHADOW, en
interne, sans possible controle par l'utilisateur.
Il faudra surement fournir une methode vtkGdcmReader::SetLoadMode(),
afin que le LoadMode relève du choix de l'utilisateur
(aware, l'utilisateur, aware ...).NO_SEQ et NO_SHADOW
Ou laisser les 2 options a ON par defaut et laisser l'utilisateur les
desactiver .
On laquelle des deux possibilites, pour etre vtk like?
JPRx
>
> Benoit
>
> ----- Original Message ----- From: "Jean-Pierre Roux"
> <Jean-Pierre.Roux at creatis.insa-lyon.fr>
> To: <dcmlib at creatis.insa-lyon.fr>
> Sent: Thursday, June 02, 2005 3:28 PM
> Subject: Re: [Dcmlib] Load(NO_SHADOW)
>
>
>> Benoit Regrain wrote:
>>
>>> Si elle est fausse, on ne pourrait pas revenir en arriere ?
>>>
>> Si une longueur est fausse, on n'a aucun noyen de le savoir.
>> On saute a pieds joints au milieu des pixels, qu'on décode comme si
>> c'etait des 'group + element +VR + longueur'.
>> Apres avoir cree 3 ou 4 000 dicom-elements (qui sont, et pour
>> cause, n'importe quoi) , on finit par 'sortir' du fichier et on
>> arrete le Parsing.
>> Le parser n'y voit que du feu (normal : rien n'a casse).
>> Simplement, on n'a pas trouve le groupe des pixels :-(
>>
>> En fait, je ne demandais pas un conseil sur la conduite a tenir :
>> Je signalais que, dans Testing, TestMakeDicomDir faisait plus on
>> Load en mode NO_SEQ|NO_SHADOW, mais simplement en mode NO_SEQ.
>>
>> Dans un cas reel, c'est l'utilisateur qui decidera, en fonction de ce
>> qu'il sait de ses données, du LoadMode qu'il doit utiliser.
>> (s'il veut, par exemple, recuperer des icones deja presentes dans ses
>> fichiers, pour les stocker dans son DicomDir) il utilisera le
>> LoadMode par defaut)
>> Je vais rajouter des commentaires dans la doic des fonctions.
>> JPRx
>>
>>> Benoit
>>>
>>>
>>> ----- Original Message ----- From: "Jean-Pierre Roux"
>>> <Jean-Pierre.Roux at creatis.insa-lyon.fr>
>>> Cc: <dcmlib at creatis.univ-lyon1.fr>
>>> Sent: Thursday, June 02, 2005 12:28 PM
>>> Subject: Re: [Dcmlib] Load(NO_SHADOW)
>>>
>>>
>>>> Benoit Regrain wrote:
>>>>
>>>>> Pourquoi ne pas traiter ce cas particulier qui n'est finalement pas
>>>>> si particulier que cela... on saute les groupe privé sauf pour
>>>>> l'élément 0x0000 ?
>>>>
>>>>
>>>>
>>>> Ce qui permet de sauter *les* groupes prives, c'est *precisement*
>>>> la longueur du groupe, contenue dans l'elelment 0x0000 de chaque
>>>> groupe.
>>>> Si elle est fausse, on est mal !
>>>> JPRx
>>>>
>>>>>
>>>>> Benoit
>>>>>
>>>>> ----- Original Message ----- From: "Jean-Pierre Roux"
>>>>> <Jean-Pierre.Roux at creatis.insa-lyon.fr>
>>>>> To: <dcmlib at creatis.univ-lyon1.fr>
>>>>> Sent: Thursday, June 02, 2005 11:00 AM
>>>>> Subject: [Dcmlib] Load(NO_SHADOW)
>>>>>
>>>>>
>>>>>> Bonjour.
>>>>>>
>>>>>> Je crains qu'on ne puisse pas vraiment utiliser cette option :
>>>>>> elle suppose que (lorsqu'il esxiste) l'élément 0x0000 d'un groupe
>>>>>> privé contient la longueur du groupe.
>>>>>> Et que cette longueur est juste.
>>>>>> Ce qui n'est pas toujours le cas :-(
>>>>>>
>>>>>> Exemple : MARCONI_MxTWin-12-MONO2-JpegLossless-ZeroLengthSQ.dcm
>>>>>> pour lequelle ce n'est pas la présence d'une Sequence de longueur
>>>>>> Zéro qui pose probleme, mais la longueur annoncée du 0x00e3 qui
>>>>>> est, a l'evidence fausse, et fait 'aterrir' le parser au beau
>>>>>> milieu des Pixels si on essaie de 'sauter' ce groupe.
>>>>>>
>>>>>> (faire
>>>>>> PrintFile MARCONI_MxTWin-12-MONO2-JpegLossless-ZeroLengthSQ.dcm 2
>>>>>> 1 1
>>>>>> pour mesurer l'ampleur du désastre)
>>>>>>
>>>>>> Voila ...
>>>>>>
>>>>>> NB :
>>>>>> une Sequence de longueur 0 ne doit pas etre considerée comme une
>>>>>> anomalie.
>>>>>> Il s'agit d'un Dicom element de type 2 (presence obligatoire,
>>>>>> contenu factultatif)
>>>>>> Ceux qui ecrivent de telles sequences ne font que suivre les
>>>>>> conseils de David Clunie.
>>>>>>
>>>>>> JPRx
>>>>>> _______________________________________________
>>>>>> Dcmlib mailing list
>>>>>> Dcmlib at creatis.insa-lyon.fr
>>>>>> http://www.creatis.insa-lyon.fr/mailman/listinfo/dcmlib
>>>>>
>>>>>
>>>>>
>>>>>
>>>> _______________________________________________
>>>> Dcmlib mailing list
>>>> Dcmlib at creatis.insa-lyon.fr
>>>> http://www.creatis.insa-lyon.fr/mailman/listinfo/dcmlib
>>>
>>>
>>>
>> _______________________________________________
>> 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