Adapt extractor module for PixelMed generated RDSR from old Toshiba CT

Issue #447 resolved
Ed McDonagh created an issue

Was: Write extractor module for Toshiba Dose information image objects

Always been on the list, but somehow never logged as an issue!

Will be similar to the ct_philips.py extractor.

Now relates specifically to PixelMed generated RDSR from old Toshiba dose screen and image data.

Comments (22)

  1. David Platten

    I've spent some time looking in to this. Here are my thoughts so far:

    Manual method

    Use David Clunie's DoseUtility to create an RDSR object for each Toshiba study. It needs the dose summary and the images. Import the RDSR in to OpenREM.

    Automatic method

    Use David Clunie's PixelMed routines to automatically create an RDSR object for each Toshiba CT study (again, using the dose summary and the images) and then forward the object to OpenREM for import. This will require that OpenREM's DICOM node is able to recognise that an incoming study needs this doing so that it can deal with the study appropriately (Conquest and a Lua script, perhaps?).

    A problem

    The RDSR files created by DoseUtility for my Toshiba test studies won't import using the existing rdsr.py extractor. There is some information missing that the extractor expects. I've worked around this, and managed to import a study in to OpenREM. The summary page for the the study seems OK, but the detail page doesn't show any CTDI or DLP values for some reason. I've checked, and the information is in the database. This needs looking at too.

    @edmcdonagh, would you prefer an extractor that is specific to these incomplete Toshiba RDSR objects, or would you like me to modify the existing rdsr.py file so that it will allow the DoseUtility-created Toshiba ones in? I think it will be a very simple modification.

  2. Ed McDonagh reporter

    Depending on what the issue is, I'd rather the existing rdsr.py was able to cope with DoseUtility created RDSRs. It is already adapted to allow for GE poorly constructed Enhanced SRs.

    It would be good to put some of these objects into the test_files folder so we can add them to the automated testing...

    While I would like to do the automatic method within OpenREM using python, I agree that it would be quicker to implement and more robust to do it with Conquest and Lua.

    Did you get any response from David Clunie regarding the issues with the generated RDSR?

  3. David Platten

    OK - thanks. I've had no response from David Clunie re the generated RDSR objects yet. I'll put a DoseUtility-created RDSR file in to the test_files folder at some point in the next couple of days.

  4. Ed McDonagh reporter

    Thank you. I've been changing all the institutional identifiers, serial numbers and UIDs, but doing my best not to change them in any other way (as much as is possible). If you want me to do it, just send one over.

  5. Ed McDonagh reporter

    CT Detail page assumes there is an event ctxraysourceparameters entry and used it to display single and dual source details nicely. If there is no entry, it prevented all detail display. PixelMed generated RDSR from Toshiba ref #447 don't have this. Modified CT Detail page to not depend on it.

    → <<cset 2b8f19f36216>>

  6. Ed McDonagh reporter

    We need to change the name of this issue as I wrote it thinking of some Toshiba dose screen images I am convinced I have seen that had useful information in the headers, whereas this issue has been about ones that don't and need PixelMed to create an RDSR instead. Then we can close this one! After the documentation is updated of course.

  7. David Platten

    @edmcdonagh, thanks very much for looking at this and making these changes.

    I'll investigate how to automatically create RDSR files using PixelMed at the point that studies arrive at OpenREM's DICOM node.

  8. Ed McDonagh reporter

    Lovely. Using the GUI version, or the java thing on the command line...?

    I have some scripts (linux) that relate to the latter that you might be interested in?

  9. David Platten

    I'm planning on using the command line (I want it to be automatic, without any user-intervention required). Any scripts that you have (and can share) that relate to this sort of thing would probably come in handy.

  10. David Platten

    Added a Plotly box plot of DLP per requested procedure name. Doesn't show per-system at the moment. The usual plot is also shown. References issue #447

    → <<cset eef9943f611b>>

  11. Log in to comment