[Insight-users] Writing new DICOM files.
Mathieu Malaterre
mathieu.malaterre at gmail.com
Wed Nov 12 09:53:41 EST 2008
Robert,
On Wed, Nov 12, 2008 at 3:43 PM, Robert Haase <robert_haase at gmx.de> wrote:
> Hi Mathieu,
>
> sorry for this. You're right there is such a function. But it doesn't do anything. It stores a bool value in KeepMediaStorageSOPClassUID. But no line of code cares about that value:
>
> $ grep KeepMediaStorageSOPClassUID *
> gdcmFileHelper.cxx:He has to use gdcm::FileHelper::SetKeepMediaStorageSOPClassUID(true)
> gdcmFileHelper.cxx: KeepMediaStorageSOPClassUID = false;
> gdcmFileHelper.h: void SetKeepMediaStorageSOPClassUID (bool v)
> gdcmFileHelper.h: { KeepMediaStorageSOPClassUID = v; }
> gdcmFileHelper.h: // no GetKeepMediaStorageSOPClassUID() method, on purpose!
> gdcmFileHelper.h: bool KeepMediaStorageSOPClassUID;
Point taken.
> I wasn't sure if it is a bug or just a misunderstanding by me. My problem was, I opened some MR DICOM Images, changed absolutly nothing and saved them to disc. After that, SIEMENS syngo software was no longer able to view the images in 3D-MPR view. So I checked, what happens to the DICOM tags and saw, that gdcm::FileHelper overwrites important tags:
>
> 0002,0002
> 0008,0008
> 0008,0016
> (and some more)
0008,0016 is the one AFAIK. All the other UIDs are meaningless for the
viz software.
> Whatever I tried to change this behaviour didn't work (even the KeepMediaStorageSOPClassUID) and so I solved the problem in a pragmatic way. I don't know if the syngo-Software does implement the DICOM Standard in a correct way. But I'm quiet sure, that the images which leave my application have the same tag-quality like the ones who enter it. I'm actually not changing the SOP Class UID, I just wanted to keep the old one.
Reread the Itk software Guide, it is described how to pass data from
input DICOM to output DICOM using meta dict data array (do not
remember exact syntax). Basically you were changing from MR Image
Storage (??) to Secondary Capture Image Storage, where IPP/IOP are not
present.
2cts
--
Mathieu
More information about the Insight-users
mailing list