dcmj2pnm dicom to jpeg conversion results in all dark image

All other questions regarding DCMTK

Moderator: Moderator Team

Post Reply
Message
Author
vinb
Posts: 4
Joined: Tue, 2009-09-08, 23:21

dcmj2pnm dicom to jpeg conversion results in all dark image

#1 Post by vinb »

I'm trying to convert dicom to jpeg image using the following command, but getting the jpeg image to be all dark. It works fine with other dcm images but in problem image it comes from Sountech modality. I can't figure out the difference why it's outputting all dark jpeg image for this. Any tips how to resolve this issue?

Thanks

The cmd I use

> dcmj2pnm -td -im +oj +Wm +Sxv pet.dcm thumb.jpg

The version of dcmj2pnm

dcmj2pnm: Convert DICOM images to PGM/PPM, PNG, TIFF, JPEG or BMP
Host type: i486-pc-linux-gnu
External libraries used:
- ZLIB, Version 1.2.3.3
- IJG, Version 6b 27-Mar-1998 (modified)
- LIBTIFF, Version 3.8.2
with LZW compression support
- LIBPNG, Version 1.2.27




dcdump of the dimcom image


> dcmdump pet.dcm

# Dicom-File-Format

# Dicom-Meta-Information-Header
# Used TransferSyntax: LittleEndianExplicit
(0002,0000) UL 206 # 4, 1 MetaElementGroupLength
(0002,0001) OB 00\01 # 2, 1 FileMetaInformationVersion
(0002,0002) UI =DigitalXRayImageStorageForPresentation # 28, 1 MediaStorageSOPClassUID
(0002,0003) UI [1.2.840.114387.1205529818.39079.18621.38837.5782072.8519850] # 60, 1 MediaStorageSOPInstanceUID
(0002,0010) UI =JPEGLossless:Non-hierarchical-1stOrderPrediction # 22, 1 TransferSyntaxUID
(0002,0012) UI [1.2.840.114387.3] # 16, 1 ImplementationClassUID
(0002,0013) SH [Sound Tech] # 10, 1 ImplementationVersionName
(0002,0016) AE [VetPacs] # 8, 1 SourceApplicationEntityTitle

# Dicom-Data-Set
# Used TransferSyntax: JPEG Lossless, Non-hierarchical, 1st Order Prediction
(0008,0008) CS [DERIVED\PRIMARY] # 16, 2 ImageType
(0008,0012) DA [20090605] # 8, 1 InstanceCreationDate
(0008,0013) TM [101848.0] # 8, 1 InstanceCreationTime
(0008,0016) UI =DigitalXRayImageStorageForPresentation # 28, 1 SOPClassUID
(0008,0018) UI [1.2.840.114387.1205529818.39079.18621.38837.5782072.8519850] # 60, 1 SOPInstanceUID
(0008,0020) DA [20090605] # 8, 1 StudyDate
(0008,0021) DA [20090605] # 8, 1 SeriesDate
(0008,0022) DA [20090605] # 8, 1 AcquisitionDate
(0008,0023) DA [20090605] # 8, 1 ContentDate
(0008,0030) TM [101300.0] # 8, 1 StudyTime
(0008,0031) TM [101816.0] # 8, 1 SeriesTime
(0008,0032) TM [101848.0] # 8, 1 AcquisitionTime
(0008,0033) TM [101300.0] # 8, 1 ContentTime
(0008,0050) SH (no value available) # 0, 0 AccessionNumber
(0008,0060) CS [DX] # 2, 1 Modality
(0008,0068) CS [FOR PRESENTATION] # 16, 1 PresentationIntentType
(0008,0070) LO [Sound Technologies, Inc.] # 24, 1 Manufacturer
(0008,0080) LO [Nashoba Valley Veterinary Hospital] # 34, 1 InstitutionName
(0008,0090) PN (no value available) # 0, 0 ReferringPhysiciansName
(0008,1010) SH [DRACQ1105-56] # 12, 1 StationName
(0008,103e) LO [Xray Series] # 12, 1 SeriesDescription
(0008,1048) PN [Lennon^Michael] # 14, 1 PhysiciansOfRecord
(0008,1090) LO [TRUDR] # 6, 1 ManufacturersModelName
(0008,2218) SQ (Sequence with undefined length #=0) # u/l, 1 AnatomicRegionSequence
(fffe,e0dd) na (SequenceDelimitationItem) # 0, 0 SequenceDelimitationItem
(0010,0010) PN [BAHRAKIS^JAKE] # 14, 1 PatientsName
(0010,0020) LO [15610 JAKE] # 10, 1 PatientID
(0010,0030) DA [20011008] # 8, 1 PatientsBirthDate
(0010,0032) TM [000000.0] # 8, 1 PatientsBirthTime
(0010,0040) CS [M] # 2, 1 PatientsSex
(0010,1010) AS [401W] # 4, 1 PatientsAge
(0010,1030) DS [31.81818] # 8, 1 PatientsWeight
(0010,2201) LO [CANINE] # 6, 1 Unknown Tag & Data
(0010,2203) CS [UNALTERED] # 10, 1 Unknown Tag & Data
(0010,2292) LO [GOLDEN RETRIEVER] # 16, 1 Unknown Tag & Data
(0010,2297) PN [BAHRAKIS^JAKE] # 14, 1 Unknown Tag & Data
(0010,2298) CS [OWNER] # 6, 1 Unknown Tag & Data
(0018,1000) LO [9P-B084-03] # 10, 1 DeviceSerialNumber
(0018,1020) LO [Rev K.03, Build 44; Nov 5 2004, 11:05:21 BitFlow 4.0.0.0] # 60, 1 SoftwareVersions
(0018,1160) SH [NONE] # 4, 1 FilterType
(0018,1164) DS [0.169333333333333\0.169333333333333] # 36, 2 ImagerPixelSpacing
(0018,1166) CS [NONE] # 4, 1 Grid
(0018,11a0) DS [0] # 2, 1 BodyPartThickness
(0018,1508) CS (no value available) # 0, 0 PositionerType
(0018,2010) DS [0.169333333333333\0.169333333333333] # 36, 2 NominalScannedPixelSpacing
(0018,7004) CS [SCINTILLATOR] # 12, 1 DetectorType
(0018,7005) CS [AREA] # 4, 1 DetectorConfiguration
(0018,7006) LT [TRUDR] # 6, 1 DetectorDescription
(0018,7008) LT [0] # 2, 1 DetectorMode
(0018,700a) SH [9P-B084-03] # 10, 1 DetectorID
(0018,700c) DA [20090605] # 8, 1 DateOfLastDetectorCalibration
(0018,700e) TM [100836.0] # 8, 1 TimeOfLastDetectorCalibration
(0018,7010) IS [2] # 2, 1 ExposuresOnDetectorSinceLastCalibration
(0018,7011) IS [462] # 4, 1 ExposuresOnDetectorSinceManufactured
(0018,7012) DS [0] # 2, 1 DetectorTimeSinceLastExposure
(0018,701a) DS [1\1] # 4, 2 DetectorBinning
(0020,000d) UI [1.2.840.114387.168361754.20882.16884.39875.15472339.7850290] # 60, 1 StudyInstanceUID
(0020,000e) UI [1.2.840.114387.240397289.29347.19224.35656.5070391.10051546] # 60, 1 SeriesInstanceUID
(0020,0010) SH (no value available) # 0, 0 StudyID
(0020,0011) IS [1] # 2, 1 SeriesNumber
(0020,0012) IS [2] # 2, 1 AcquisitionNumber
(0020,0013) IS [2] # 2, 1 InstanceNumber
(0020,0020) CS [\] # 2, 2 PatientOrientation
(0020,0062) CS # 2, 1 ImageLaterality
(0020,4000) LT (no value available) # 0, 0 ImageComments
(0028,0002) US 1 # 2, 1 SamplesPerPixel
(0028,0004) CS [MONOCHROME2] # 12, 1 PhotometricInterpretation
(0028,0008) IS [1] # 2, 1 NumberOfFrames
(0028,0010) US 2238 # 2, 1 Rows
(0028,0011) US 3200 # 2, 1 Columns
(0028,0030) DS [0.169333333333333\0.169333333333333] # 36, 2 PixelSpacing
(0028,0031) DS [1\1] # 4, 2 ZoomFactor
(0028,0034) IS [1\1] # 4, 2 PixelAspectRatio
(0028,0100) US 16 # 2, 1 BitsAllocated
(0028,0101) US 16 # 2, 1 BitsStored
(0028,0102) US 15 # 2, 1 HighBit
(0028,0103) US 0 # 2, 1 PixelRepresentation
(0028,0106) US 49 # 2, 1 SmallestImagePixelValue
(0028,0107) US 2852 # 2, 1 LargestImagePixelValue
(0028,0120) US 0 # 2, 1 PixelPaddingValue
(0028,0301) CS [NO] # 2, 1 BurnedInAnnotation
(0028,1040) CS [LIN] # 4, 1 PixelIntensityRelationship
(0028,1041) SS -1 # 2, 1 PixelIntensityRelationshipSign
(0028,1050) DS [2038.5] # 6, 1 WindowCenter
(0028,1051) DS [4077] # 4, 1 WindowWidth
(0028,1052) DS [0.] # 2, 1 RescaleIntercept
(0028,1053) DS [1.] # 2, 1 RescaleSlope
(0028,1054) LO [UNSPECIFIED] # 12, 1 RescaleType
(0028,1055) CS [Window Level] # 12, 1 WindowCenterWidthExplanation
(0028,2110) CS [00] # 2, 1 LossyImageCompression
(0040,0555) SQ (Sequence with undefined length #=0) # u/l, 1 AcquisitionContextSequence
(fffe,e0dd) na (SequenceDelimitationItem) # 0, 0 SequenceDelimitationItem
(2050,0020) CS [IDENTITY] # 8, 1 PresentationLUTShape
(7fe0,0010) OB (PixelSequence #=2) # u/l, 1 PixelData
(fffe,e000) pi (no value available) # 0, 1 Item
(fffe,e000) pi ff\d8\ff\e0\00\10\4a\46\49\46\00\01\00\01\00\96\00\96\00\00\ff\fe... # 5818274, 1 Item
(fffe,e0dd) na (SequenceDelimitationItem) # 0, 0 SequenceDelimitationItem
(f001,00f1) LO [Sound Technologies] # 18, 1 PrivateCreator
(f001,f100) LO [CANINE] # 6, 1 Unknown Tag & Data
(f001,f101) LO [GOLDEN RETRIEVER] # 16, 1 Unknown Tag & Data
(f001,f102) LO [LARGE] # 6, 1 Unknown Tag & Data
(f001,f103) LO [M] # 2, 1 Unknown Tag & Data
(f001,f104) LO [LAT RIGHT] # 10, 1 Unknown Tag & Data
(f001,f105) LO [ABDOMEN] # 8, 1 Unknown Tag & Data
(f001,f106) ST [SLUT='Exp-0.10.lpf' , GOPXR='dog_soft-tissue_L10-C20-E10-N20.par'] # 66, 1 Unknown Tag & Data
(f001,f107) ST [Serialnumber:9P-B084-03, Offset correction:True, Gain correction:T... # 122, 1 Unknown Tag & Data
(f001,f108) LO [App=3.5.40 (Vp3_Acquisition.exe, Dll=3.5.40)] # 44, 1 Unknown Tag & Data
(f001,f109) LO # 2, 1 Unknown Tag & Data
(f001,f10a) PN [BAHRAKIS^JAKE] # 14, 1 Unknown Tag & Data
(f001,f114) LO [34578FJL] # 8, 1 Unknown Tag & Data
(f001,f117) PN [Smith^Craig] # 12, 1 Unknown Tag & Data
(f001,f118) LO [Exam Vet] # 8, 1 Unknown Tag & Data
(f001,f11c) LO [{8FB0DE0F-9D42-4B23-A7F0-0E6C681E5F38}] # 38, 1 Unknown Tag & Data
(f001,f11d) LO [{31F410FC-B0A8-4FEB-A00E-CB91D900022B}] # 38, 1 Unknown Tag & Data

Jörg Riesmeier
ICSMED DICOM Services
ICSMED DICOM Services
Posts: 2217
Joined: Fri, 2004-10-29, 21:38
Location: Oldenburg, Germany

#2 Post by Jörg Riesmeier »

You could send the image file to us by email (dicom/at/offis/dot/de) for further analysis if you like ...

vinb
Posts: 4
Joined: Tue, 2009-09-08, 23:21

#3 Post by vinb »

Thanks - I'll do that now.

Jörg Riesmeier
ICSMED DICOM Services
ICSMED DICOM Services
Posts: 2217
Joined: Fri, 2004-10-29, 21:38
Location: Oldenburg, Germany

#4 Post by Jörg Riesmeier »

The automatically computed min-max VOI window is not really appropriate for these kind of images. Use the stored VOI window (e.g. "+Wi 1" for the first stored VOI window) and the output looks ok.

vinb
Posts: 4
Joined: Tue, 2009-09-08, 23:21

#5 Post by vinb »

Great I'll check it out. But what's the reason that it works for other Dicom images and had problem with this one?

Jörg Riesmeier
ICSMED DICOM Services
ICSMED DICOM Services
Posts: 2217
Joined: Fri, 2004-10-29, 21:38
Location: Oldenburg, Germany

#6 Post by Jörg Riesmeier »

It seems that the medical image (X-ray) only uses certain parts of the 16 bits per pixel (65536 values). Therefore, the store VOI window specifies the range of stored pixel values to be displayed (in this case about 4096 values, i.e. 12 bit). For the min-max window, dcmj2pnm determines which pixel values are actually used in the Pixel Data element, and this includes the rastered white text ... also see output of option --image-info.

vinb
Posts: 4
Joined: Tue, 2009-09-08, 23:21

#7 Post by vinb »

Hi Thanks for the earlier info - that helped.

Now I'm running into the following error:

dcmj2pnm: Convert DICOM images to PGM/PPM, PNG, TIFF, JPEG or BMP
error: cannot select VOI window no. 1, only 0 window(s) in file

I'm using the following cmd,
dcmj2pnm -td +oj +Wi 1 +Sxv 600

If I remove +Wi 1 option then there is no error and conversion is good.

My qtn is if there is a generic way to use a single command line options for image conversion as the VOI window option is not known? I tried the +Wm automatic window detection but that fails in some cases as I mentioned at the beginning of this thread. Appreciate your thoughts on it.

Jörg Riesmeier
ICSMED DICOM Services
ICSMED DICOM Services
Posts: 2217
Joined: Fri, 2004-10-29, 21:38
Location: Oldenburg, Germany

#8 Post by Jörg Riesmeier »

If I remove +Wi 1 option then there is no error and conversion is good.
Of course, this is because the DICOM image does not contain any stored VOI window (as reported by the dcmj2pnm tool).
My qtn is if there is a generic way to use a single command line options for image conversion as the VOI window option is not known?
No, there is currently no way to select a particular VOI window (if stored in the image file) or any other VOI setting (if no VOI window is stored in the image file). This is at least not possible with the existing command line tool dcm2pnm/dcmj2pnm. Of course, the programming API allows for more sophisticated approaches ...

Post Reply

Who is online

Users browsing this forum: Google [Bot] and 1 guest