T30481 DICOM handling multiple images with no position
Summary:
BREAKING: DICOMGDCMImageFrameInfo does not return a default image position or orientation any more.
Why: Lead to inconsistencies/exceptions in other reader code
because it was not clear if data was missing or realy that values.
That default branch is very old and was coded before
DICOMDatasetFinding were introduced. The allow now to communicate
if a value is valid or not. This should be used by calling
code to decide how to behave if tags are not present.
BREAKING What: mitk::ThreeDnTDICOMSeriesReader now never condense blocks to 3D+t if they do not have a valid origin or instance UID.
Why: Valid data that has no image position (like screenshots)
should not be merge into dynamic image (which would anyways fail
due to the failing OrientationSorter.
How to adapt: If you need to condense images without image position
tag then a dedicated reader must be implemented that modifies the
Condense3DBlocks method
Introduced a delimiter to make the UID more robust. W/o it could happen (very unlikely) that UIDs are the same if multiple consecutiv tags are invalid.
Test Plan: unit test, code review, testing with dicom data
Reviewers: O1 MITK Reviewer Group I, kislinsk
Reviewed By: O1 MITK Reviewer Group I, kislinsk
Subscribers: kislinsk
Maniphest Tasks: T30481
Differential Revision: https://phabricator.mitk.org/D974