DICOM / neuroimaging conversion packages based on languages other than Python

This is a Wiki-post - anyone can edit; please do.

A more comprehensive list is included in the Alternatives section of the dcm2niix home page, though some of these are niche or no longer supported.

Features that differentiate converters include:

  • Ability to decode DICOM images using a compressed Transfer Syntax. Be aware that these are often specific to DICOM images, or observed in incorrect or peculiar ways in medical images (as discussed here).
  • Ability to handle images where Instance Number (0020,0013) is not meaningful (e.g. Philips images where instance number is not influenced by order of spatial or temporal acquisition) or duplicated (e.g. Siemens multi-echo fieldmaps).
  • Ability to create BIDS JSON sidecars.
  • Ability to create FSL format bvec/bval files for diffusion data. This format is in image space and demands a negative determinant. Encoding of gradients in DICOM is vendor specific: Canon, GE, Philips, Siemens and UIH, and can differ across manufacturer software (e.g. Siemens V* vs X* series).
  • Ability to handle both classic as well as modern Enhanced DICOM images.
  • Speed of conversion.
1 Like