DClient.find_series return Series Description (0008,103E)?

140 views
Skip to first unread message

Marc Kohli

unread,
Dec 12, 2012, 1:38:49 PM12/12/12
to ruby-...@googlegroups.com
We have a project where we want to harvest CT Dose Sheets from our production PACS periodically.

I currently have a script where I wrap the dcm4che tools, which works like this:

After finding the study UID, I find the series and loop over the series description tag (0008,103E) until I find the Series UID for the Dose Sheet.

Then I initiate a C-Move for the Study UID, and Series UID.

I'd like to replace the wrapped dcm4che tools with ruby-dicom but it's not clear to me how to get the series description from the find_series method since it's not one of the tags that's returned.

I know that in the dcm4che dcmqr I had to specifically specify that I wanted to have series description returned from our PACS.

Thanks in advance!

Marc Kohli, MD

Christoffer Lervåg

unread,
Dec 12, 2012, 4:06:52 PM12/12/12
to ruby-...@googlegroups.com
Hello Marc,
and welcome to the forum!

You can find the documentation for this method here:

If you want to have any tag returned other than the default ones for this query, you need to specify it in your query. If you don't have a particular query value for it, but want it to be populated in the returned data, I believe you can just set it as an empty string. Try something like this:
node.find_series('0020,000D' => '1.2.840.1145.342', '0008,103E' => '')
Hope that answered your question! If not, please let me know.

Best regards,
Chris

Marc Kohli

unread,
Dec 12, 2012, 5:39:00 PM12/12/12
to ruby-...@googlegroups.com
Fabulous - answered completely.  I did look at the documentation but didn't realize that I got back what I specified, and that I could specify an empty string without searching for instances that have empty series descriptions.

Works perfectly.

ruby-dicom is great work, I've been lurking here for a long time and have been really impressed with the community and the development effort.  Really top notch.

Marc

Catalina Bustamante

unread,
Dec 10, 2014, 7:28:28 AM12/10/14
to ruby-...@googlegroups.com
 Hi Marc,

Have you figurate out how to retrieve the image using get_image of ruby DICOM?, I have problems using it, it fails with a error message: "  ERROR -- DICOM: Unknown or unsupported request (32784) encountered.
TypeError: no implicit conversion of nil into Integer"

I´m using it like that:  node.get_image('path', '0008,0018' => "1.2.840.113704.1.111.2732...",  "0020,000E"=>"1.2.840.113704.1.111.4040....", "0020,000D"=>"1.2.840.113704.1.111.4900...." )

Thanks

Marc Kohli

unread,
Dec 10, 2014, 8:41:41 AM12/10/14
to ruby-...@googlegroups.com
Catalina,

The most likely issue you're facing is that many PACS do not support the DICOM C-GET operation, only supporting C-MOVE.  You'll need to set up another DICOM listener and configure it as a destination in your source PACS.  Then you'll use node.move_image instead.

--Marc

--
You received this message because you are subscribed to the Google Groups "ruby-dicom" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ruby-dicom+...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Christoffer Lervåg

unread,
Dec 10, 2014, 3:16:20 PM12/10/14
to ruby-...@googlegroups.com
Marc is right, C-GET is very tricky, Ive never seen it work anywhere so far myself.

The most compatible way to get DICOM images is to setup your own DICOM server using the DServer class, the use a DClient instance to move DICOM images to your DICOM server. It may feel overly elaborate, but it will get the job done.

Best regards,
Chris


Catalina Bustamante

unread,
Dec 10, 2014, 9:22:55 PM12/10/14
to ruby-...@googlegroups.com
Thank you!!
Reply all
Reply to author
Forward
0 new messages