Description
Summary
We are using heudiconv
to automatically convert data from our Siemens scanner (Prisma) based on reproin. An issue arises when a sequence has different kinds of scanner post-processing operations, e.g. one volume without normalization and the same volume with normalization, etc. In this case reproin identifies the same volume processed differently by the scanner as duplicates, with the latest version kept as the correct one (although it is usually the non post-processed one).
Then what about adding support for Siemens scanner post-processed data annotation ? This processing is indicated in the single field ImageType
which is quite helpful for any implementation. For example a T1 image can have "ImageType": ["ORIGINAL", "PRIMARY", "M", "ND", "NORM"]
with normalization but no distortion (ND) correction, and "ImageType": [ "ORIGINAL", "PRIMARY", "M", "NORM", "DIS3D", "DIS2D"]
for normalization and distortion correction.
Normalization and susceptibility distortion corrections are very common post-processing steps, so they could be individually coded in the BIDS filenames. However a more straightforward implementation could be to add the sorted list of post-processing steps as value to the rec
BIDS key (or optionally the proc
BIDS key). There is the question of the proper separator in between processing step names. Meanwhile, since all step names are capitalized, x
could be used as a separator such as in sub-01_rec-DIS2DxDIS3DxNORM_T1w
.
I would be happy to help working on a PR to address this issue if appropriate.