As a consumer of data, the generated DICOM should be standard compliant
[x] DICOM that has been processed by the PIXL pipeline should be validated against the DICOM standard (e.g. using https://pydicom.github.io/dicom-validator) in production - throw error if not and don't export
Testing
Validate known standards-compliant DICOM and ensure it passes checks
Remove required tags, and ensure that the non-compliance is caught
[x] negative test case for non-compliant dicom
Documentation
No response
Dependencies
No response
Details and Comments
Currently we have no check that modified DICOM (e.g. through de-identification) complies with the standard in terms of the tags included/modified. This means that de-identfication schemes and other processing has the potential to generate non-compliant DICOM. This can cause issues with downstream tools and analysis that may not accept the DICOM, or process it incorrectly due to missing tags (e.g. if some needed tags are missing from the MRI image module, then conversion to Nifti using dcm2niix can be in the wrong orientation).
Definition of Done / Acceptance Criteria
As a consumer of data, the generated DICOM should be standard compliant
Testing
Documentation
No response
Dependencies
No response
Details and Comments
Currently we have no check that modified DICOM (e.g. through de-identification) complies with the standard in terms of the tags included/modified. This means that de-identfication schemes and other processing has the potential to generate non-compliant DICOM. This can cause issues with downstream tools and analysis that may not accept the DICOM, or process it incorrectly due to missing tags (e.g. if some needed tags are missing from the MRI image module, then conversion to Nifti using dcm2niix can be in the wrong orientation).