lamyj / dicomifier

A medical image converter
https://dicomifier.readthedocs.io/
Other
30 stars 7 forks source link

Bruker: empty framegroups do not create an extra dimension #37

Open lamyj opened 6 years ago

lamyj commented 6 years ago

In Bruker format, an empty frame group (i.e. in VisuFGOrderDesc one where the last value is 0) does not create an extra dimension in resulting NIfTI files.

5 dimensions: innermost is based on Echo Time, outermost is based on repetitions, but unspecified

##$VisuFGOrderDescDim=2
$$ @vis= VisuCore VisuCoreWordType VisuCoreByteOrder VisuPixel
##$VisuFGOrderDesc=( 2 )
(5, <FG_ECHO>, <>, 0, 1) (3, <FG_CYCLE>, <>, 1, 0)
##$VisuGroupDepVals=( 1 )
(<VisuAcqEchoTime>, 0)

5 dimensions: innermost is ASL (tagged vs. untagged), outermost is based on repetitions, but unspecified


##$VisuFGOrderDescDim=2
##$VisuFGOrderDesc=( 2 )
(2, <FG_MOVIE>, <PCASL>, 0, 1) (24, <FG_CYCLE>, <>, 1, 0)
##$VisuGroupDepVals=( 2 )
(<VisuFGElemComment>, 0) (<>, 0)```
lamyj commented 6 years ago

Potential solution: store the Frame Group Index in a DICOM field and use that field in addition to the current splitters when generating the NIfTI files

  1. Use a private field
  2. Use Device Sequence from the Device module. With this model, we would have:
    • Manufacturer (0008,0070): "Dicomifier" [LO]
    • Manufacturer's Model Name (0008,1090): "Bruker Frame Group index" [LO]
    • Device ID (0018,1003): "[x,y,z]" [LO]
  3. Use Contributing Equipment Sequence from the SOP Common module. With this model, we would have:
    • Purpose of Reference Code Sequence (0040,A170)
      • Code Value (0008,0100): "109102" [SH]
      • Coding Scheme Designator (0008,0102): "DCM" [SH]
      • Code Meaning (0008,0104): "Processing Equipment" [LO]
    • Manufacturer (0008,0070): "Dicomifier" [LO]
    • Manufacturer's Model Name (0008,1090): "Bruker Frame Group index" [LO]
    • Contribution Description (0018,A003): "[x,y,z]" [ST]
lamyj commented 6 years ago

Frame Group information added to DICOM in bedcddc

lamyj commented 6 years ago

Multi-frame handled in 0eb4439

lamyj commented 6 years ago

Empty framegroups are fully handled in 05f225e (DICOM and NIfTI). The resulting NIfTI is still 4D.