DCMTK support dicom video format?

All other questions regarding DCMTK

Moderator: Moderator Team

Post Reply
Message
Author
bilanio
Posts: 8
Joined: Tue, 2012-11-13, 15:12

DCMTK support dicom video format?

#1 Post by bilanio »

Hello,
We use an old version of DCMTK and at one of the new customers we found that in some cases we are receiving only part of the study.
I performed extra investigation and the problem turns out to be caused by Video tags in the images (dicom video format) -- (I have asked for the dicom files for extra analysis)

I was wondering if DCMTK should support the dicom video format and is that supported in newer versions?
I found an old post and i was wondering if this was solved in later versions or not: viewtopic.php?p=5397

Waiting for your feedback.
Thanks,

bilanio
Posts: 8
Joined: Tue, 2012-11-13, 15:12

Re: DCMTK support dicom video format?

#2 Post by bilanio »

Hello Again,
i got the images and i tried to run storescu on one of them, below is the storescu output:
./storescu -aec NOLOSS -aet CaptureImages localhost 5678 CMP_JJ010_view0001.dcm
getParamValue(CSTN_CONNECTION_TIMEOUT) = (30)
CONNECTION timeout: 30
Adding filename CMP_JJ010_view0001.dcm
getParamValue(CSTN_ACSE_TIMEOUT) = ()
ASC_findAcceptedPresentationContextID: no match found for transfer syntax: 1.2.840.10008.1.2.4.50
getParamValue(CSTN_DIMSE_TIMEOUT) = (60)
DIMSE timeout: 60
old 4, new 0
DcmPixelData::canWriteXfer - couldn't find match
canWrite is false for JPEG Baseline to LittleEndianImplicit
DcmDataset::canWriteXfer - DcmItem::canWriteXfer returned false
DIMSE Warning: (CaptureImages,NOLOSS): sendMessage: unable to convert dataset
from 'JPEG Baseline' transfer syntax to 'LittleEndianImplicit'.

storescu: Store Failed, file: CMP_JJ010_view0001.dcm:
0006:020e DIMSE Failed to send message
0006:020e DIMSE Failed to send message
storescu: SCU Failed:
0006:020e DIMSE Failed to send message
0006:020e DIMSE Failed to send message


Those are some information for this study taken from dcmdump:

# Dicom-File-Format

# Dicom-Meta-Information-Header
# Used TransferSyntax: LittleEndianExplicit
(0002,0000) UL 266 # 4, 1 MetaElementGroupLength
(0002,0001) OB 00\01 # 2, 1 FileMetaInformationVersion
(0002,0002) UI =UltrasoundImageStorage # 28, 1 MediaStorageSOPClassUID
(0002,0003) UI [1.2.840.113663.1500.1.343804863.3.1.20120604.110756.406] # 56, 1 MediaStorageSOPInstanceUID
(0002,0010) UI =JPEGBaseline # 22, 1 TransferSyntaxUID
(0002,0012) UI [1.2.840.113711.1] # 16, 1 ImplementationClassUID
(0002,0013) SH [V1.0] # 4, 1 ImplementationVersionName
(0002,0016) AE [SOME_STORE_SCU] # 14, 1 SourceApplicationEntityTitle
(0002,0100) UI [1.2.840.113711.1] # 16, 1 PrivateInformationCreatorUID
(0002,0102) OB 41\4c\49\20\44\49\43\4f\4d\20\4f\45\4d\20\76\65\72\73\69\6f\6e\20... # 28, 1 PrivateInformation


# Dicom-Data-Set
# Used TransferSyntax: JPEG Baseline
(0008,0008) CS [DERIVED\PRIMARY\OBSTETRICAL] # 28, 3 ImageType
(0008,0012) DA [20120604] # 8, 1 InstanceCreationDate
(0008,0013) TM [110756] # 6, 1 InstanceCreationTime
(0008,0016) UI =UltrasoundImageStorage # 28, 1 SOPClassUID
.....
.....
(0040,0275) SQ (Sequence undefined length #=1) # u/l, 1 RequestAttributesSequence
(fffe,e000) na (Item with undefined length #=4) # u/l, 1 Item
(0032,1060) LO [O US OB COMPLETE < 14 WEEKS] # 28, 1 RequestedProcedureDescription
(0040,0007) LO [O US OB COMPLETE < 14 WEEKS] # 28, 1 ScheduledProcedureStepDescription
(0040,0009) SH [10668710] # 8, 1 ScheduledProcedureStepID
(0040,1001) SH [3015461] # 8, 1 RequestedProcedureID
(fffe,e00d) na (ItemDelimitationItem) # 0, 0 ItemDelimitationItem
(fffe,e0dd) na (SequenceDelimitationItem) # 0, 0 SequenceDelimitationItem
(0040,0280) ST [OB] # 2, 1 CommentsOnThePerformedProcedureStep
(2050,0020) CS [IDENTITY] # 8, 1 PresentationLUTShape
(3711,0010) LO [SOME Technologies, Inc.] # 26, 1 PrivateCreator
(3711,100c) UI [X.X.XXX.XXX.XXX.XXXXX.XXXX.XX.XXXXXXXX.XXXXXX] # 60, 1 Unknown Tag & Data
(7fe0,0010) OB (PixelSequence #=2) # u/l, 1 PixelData
(fffe,e000) pi 00\00\00\00 # 4, 1 Item
(fffe,e000) pi ff\d8\ff\e0\00\10\4a\46\49\46\00\01\02\00\00\01\00\01\00\00\ff\e1... # 249396, 1 Item
(fffe,e0dd) na (SequenceDelimitationItem) # 0, 0 SequenceDelimitationItem

bilanio
Posts: 8
Joined: Tue, 2012-11-13, 15:12

Re: DCMTK support dicom video format? -- 'JPEG Baseline'

#3 Post by bilanio »

Seems its a problem with the 'JPEG Baseline' compression.
i decompressed the images using the dcmdjpeg tool and storescu worked for me.

Any suggestions about a clean solution? and anyone knows how to compress the images in case if i had to uncompress and then compress the images to something that DCMTK supports.

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

Re: DCMTK support dicom video format?

#4 Post by J. Riesmeier »

First of all, make sure that you use the current DCMTK release, i.e. version 3.6.0 (or a newer snapshot if you prefer that). Then, storescu is pretty stupid, so you have to tell the tool that you would like to send JPEG Baseline compression DICOM images. This is done with option --propose-jpeg8 (-xy). However, the transfer might still fail if the receiver does not support/accept this transfer syntax ...

If you like to test a pretty new tool, then have a look at "dcmsend" from the current DCMTK snapshot. However, there is no ready-to-use binary for that, so you have to compile it on your own.

omarelgazzar
Posts: 101
Joined: Wed, 2009-07-08, 16:06
Location: Oldenburg, Germany

Re: DCMTK support dicom video format?

#5 Post by omarelgazzar »

The DICOM file seems to be Ultrasound Multi-frame image and compressed using the JPEG Baseline transfer syntax which is supported by DCMTK. To know how to access multiframe image, read this HowTo on Wiki. You can also try to use the tool dcmj2pnm to convert the multiframe image to bitamp(s).

bilanio
Posts: 8
Joined: Tue, 2012-11-13, 15:12

Re: DCMTK support dicom video format?

#6 Post by bilanio »

Thanks Guys for the replies,
I have a problem when accepting the images from the pacs, i was investigating by using storescu the problem and it worked on the uncompressed version of the images.
I resent the uncompressed images to a viewer and i was able to see all the images in the DICOM so no problem here.

bilanio
Posts: 8
Joined: Tue, 2012-11-13, 15:12

Re: DCMTK support dicom video format?

#7 Post by bilanio »

Hello Again,
So problem is with the storescu and not with the fact that DCMTK don't support the JPEG Baseline
I was wondering would movescu support this encoding or it's same as the storescu?

bilanio
Posts: 8
Joined: Tue, 2012-11-13, 15:12

Re: DCMTK support dicom video format?

#8 Post by bilanio »

I also tried with the option --propose-jpeg8 and it gave me the same error

getParamValue(CSTN_CONNECTION_TIMEOUT) = (30)
CONNECTION timeout: 30
Adding filename view0058.dcm
getParamValue(CSTN_ACSE_TIMEOUT) = ()
ASC_findAcceptedPresentationContextID: no match found for transfer syntax: 1.2.840.10008.1.2.4.50
getParamValue(CSTN_DIMSE_TIMEOUT) = (60)
DIMSE timeout: 60
old 4, new 0
DcmPixelData::canWriteXfer - couldn't find match
canWrite is false for JPEG Baseline to LittleEndianImplicit
DcmDataset::canWriteXfer - DcmItem::canWriteXfer returned false
DIMSE Warning: (CaptureImages,NOLOSS): sendMessage: unable to convert dataset
from 'JPEG Baseline' transfer syntax to 'LittleEndianImplicit'.

storescu: Store Failed, file: view0058.dcm:
0006:020e DIMSE Failed to send message
0006:020e DIMSE Failed to send message
storescu: SCU Failed:
0006:020e DIMSE Failed to send message
0006:020e DIMSE Failed to send message

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

Re: DCMTK support dicom video format?

#9 Post by J. Riesmeier »

The problem is that the SCP does not accept JPEG Baseline but prefers the default transfer syntax (LittleEndianImplicit).

Btw, are you using an old version of DCMTK, i.e. not the current release 3.6.0?

bilanio
Posts: 8
Joined: Tue, 2012-11-13, 15:12

Re: DCMTK support dicom video format?

#10 Post by bilanio »

Hi Riesmeier
yes i'm using an old version of DCMTK, i think its at least 5 years old, and updating to the latest is not an option for my company now.

Post Reply

Who is online

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