Page MenuHomePhabricator

MITK Flow - Save Segmentation - Error/Exception Handling
Open, NormalPublic

Description

In T28934 I describe a bug, where a missing Tag in dcmqi results in an invalid saved segmentation.
DCMQI writes an Error to the MITK log:

E: CodeValue (0008,0100) absent in CodeSequenceMacro (type 1)
E: Could not write item #0 in ProcedureCodeSequence: Invalid Value
FATAL ERROR: Writing of the SEG dataset failed! Error: Invalid Value. Please report the problem to the developers, ideally accompanied by a de-identified dataset allowing to reproduce the problem!

But still in the MITK GUI, neither an exception is thrown, nor an error message is shown. So in this case in Kaapana the user terminates the MITK container and therefore the logs cannot be seen anymore when realizing, that the created file is corrupted.

So MITK should not create a corrupted dcm file and should tell the user, that something went wrong in the GUI:
Either throw an exception or print a message, that it did not work.
Currently it is still showing:

image.png (145×291 px, 12 KB)

Event Timeline

gaoh triaged this task as Normal priority.Jan 26 2022, 11:40 AM
gaoh edited projects, added Kaapana (internal); removed Request for Discussion.

We discussed in the meeting:

  1. Exception handling is a good idea and should be the way to handle it. So mitk has to throw the exception and not show a success.
  2. Since in the input image a required tag is missing, MITK cannot provide a fix, allowing a success in dcmqi
  1. MITK has not to store an additional log-error e.g. txt file instead of the stored dcm, to allow kaapana to read/reflect the error in this step, since MITK is an GUI interaction step, a user is involved anyway at this step. This step can be further discussed in kaapana.

Input data to reproduce the error:

E130-Personal/Gao/T28946

Since in the input image a required tag is missing, MITK cannot provide a fix, allowing a success in dcmqi

This is not a fault of MITK or dcmqi, but the sad reality is that it is likely to be happening in practice. Did you discuss if it is acceptable to the user of MITK?

dcmqi does not provide a remedy, but at least in 3D Slicer there is a tool that allows to patch input DICOM to allow user to proceed: https://github.com/Slicer/Slicer/tree/master/Modules/Scripted/DICOMPatcher

More discussions are in the related dcmqi issues: https://github.com/QIICR/dcmqi/issues/250 and https://github.com/QIICR/dcmqi/issues/212

Unknown Object (User) added a subscriber: Unknown Object (User).Jan 28 2022, 6:47 AM
This comment was removed by kislinsk.
Unknown Object (User) added a comment.Jan 28 2022, 6:48 AM
This comment was removed by kislinsk.
Unknown Object (User) added a comment.Jan 28 2022, 6:49 AM
This comment was removed by kislinsk.
Unknown Object (User) added a comment.Jan 28 2022, 6:50 AM
This comment was removed by kislinsk.