dcmtk unable to read PET phantom images

All other questions regarding DCMTK

Moderator: Moderator Team

Post Reply
Message
Author
cnu1439
Posts: 4
Joined: Thu, 2014-04-17, 09:14

dcmtk unable to read PET phantom images

#1 Post by cnu1439 »

Code: Select all

shiva@RSV-HP-ENVY-15-Notebook-PC:~/PET phantom/PET phantom$ dcm2pnm --write-png -v --min-max-window -im  content0.dcm out.png
I: reading DICOM file: content0.dcm
I: preparing pixel data
W: invalid value for 'FrameTime' (0) ... ignoring
I: dumping image parameters
I:   filename            : content0.dcm
I:   transfer syntax     : Little Endian Explicit
I:   SOP class           : PositronEmissionTomographyImageStorage
I:   SOP instance UID    : 1.2.826.0.1.3680043.2.88.1508.401.1.46.20110829201211492
I:   columns x rows      : 128 x 128
I:   bits per sample     : 1
I:   color model         : MONOCHROME2
I:   pixel aspect ratio  : 1.00
I:   number of frames    : 1 (1 processed)
I:   VOI LUT function    : <default>
I:   VOI windows in file : 0
I:   VOI LUTs in file    : 0
I:   presentation shape  : <default>
I:   overlays in file    : 0
I:   maximum pixel value : 0
I:   minimum pixel value : 0
I: activating VOI window min-max algorithm
I: writing frame 1 to out.png
I: cleaning up memory

As you can see the min / max pixel value is zero. So its unable to compute Window Level based on min/max. Other viewers like clearcanvas are able to properly read this image. Link to file http://filebin.ca/2ivtg7zfpA4B/content0.dcm

I am using dcmtk 3.6.1. Can I somehow patch dcmtk to make this work. Please advise

J. Riesmeier
DCMTK Developer
Posts: 2506
Joined: Tue, 2011-05-03, 14:38
Location: Oldenburg, Germany
Contact:

Re: dcmtk unable to read PET phantom images

#2 Post by J. Riesmeier »

There is no need to patch the DCMTK since there is nothing wrong with it.

The sample file uses an extremely small value for Rescale Slope (6.66495e-07).

Here's the dump output when dcm2pnm is requested to ignore the Modality LUT transformation:

Code: Select all

> dcm2pnm content0.dcm -im -o -v -M
I: reading DICOM file: content0.dcm
I: preparing pixel data
W: invalid value for 'FrameTime' (0) ... ignoring
I: configuration flag set ... ignoring possible modality transform
I: dumping image parameters
I:   filename            : content0.dcm
I:   transfer syntax     : Little Endian Explicit
I:   SOP class           : PositronEmissionTomographyImageStorage
I:   SOP instance UID    : 1.2.826.0.1.3680043.2.88.1508.401.1.46.20110829201211492
I:   columns x rows      : 128 x 128
I:   bits per sample     : 16
I:   color model         : MONOCHROME2
I:   pixel aspect ratio  : 1.00
I:   number of frames    : 1 (1 processed)
I:   VOI LUT function    : <default>
I:   VOI windows in file : 0
I:   VOI LUTs in file    : 0
I:   presentation shape  : <default>
I:   overlays in file    : 0
I:   maximum pixel value : 32767
I:   minimum pixel value : -3241
I: cleaning up memory

cnu1439
Posts: 4
Joined: Thu, 2014-04-17, 09:14

Re: dcmtk unable to read PET phantom images

#3 Post by cnu1439 »

Thanks a lot. Works now. What would be a general rule for reading images like this ?

Rule1
-------
If RescaleSlope< Delta ( Delata = 10^-6) then
  • set CIF_IgnoreModalityTransformation flag in DicomImage()
Rule2
--------
Construct DicomImage(), check getMinMaxValues() and if both are zero set then
  • construct DicomImage() again with CIF_IgnoreModalityTransformation set

While Rule2 would obviously work, I am worried about performance that it would read all pixel data two times.
Not sure if Rule1 would work across different modality/types of images.

Asking this because our viewer reads a variety of modality images, so a rule for reading would be helpful.

Would be great to know your thoughts on this
Regards

J. Riesmeier
DCMTK Developer
Posts: 2506
Joined: Tue, 2011-05-03, 14:38
Location: Oldenburg, Germany
Contact:

Re: dcmtk unable to read PET phantom images

#4 Post by J. Riesmeier »

There are various postings in the newsgroup "comp.protocols.dicom" regarding PET images and the Modality LUT transformation in combination with the VOI LUT transformation. The bottom line is that for some (but not all) PET images it's probably a good idea to simply ignore Rescale/Slope Intercept, at least for image rendering. See PET Series and Image Module in the DICOM standard for details...

Post Reply

Who is online

Users browsing this forum: Bing [Bot], Majestic-12 [Bot] and 1 guest