HomePhabricator
Diffusion MITK c07e7ef1cdb4

T30481 DICOM handling multiple images with no position

Description

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

Details

Provenance
flocaAuthored on Jun 27 2024, 9:30 AM
flocaPushed on Jun 28 2024, 11:43 AM
Reviewer
O1: MITK Reviewer Group I
Differential Revision
Restricted Differential Revision
Parents
rMITK946a07dd286f: fixed review remarks
rMITK846e41531a9c: Merge branch 'bugfix/T29421-RemoveCPPRestSDK' into develop
Branches
Unknown
Tags
Unknown
Tasks
T30481: [DICOM] Handle multiple images with no position information correctly