Skip to content

Releases: lamyj/dicomifier

v2.4.0

27 Feb 11:36
v2.4.0
cf3826a
Compare
Choose a tag to compare

Diffusion-related goodness!

  • Add conversion of diffusion meta-data during conversion to NIfTI (--diffusion-scheme, -s)
  • Add option to keep effective b-values (--effective-b-values, -e)
  • Fix conversion to bvecs/bvals for anisotropic images

Assorted freebies

  • Add user-defined layout to to-nifti (--layout, -l)
  • Add loading Bruker dataset from string data

v2.3.1

02 Oct 08:20
v2.3.1
4dace9d
Compare
Choose a tag to compare

Improvements:

  • Conversion of PV360 files
  • Direct conversion of PvDatasets to NIfTI

v2.3.0

11 Feb 16:07
v2.3.0
708e4e1
Compare
Choose a tag to compare

New features

  • Easier definition of stack for previously-unseen data: extra splitters can be supplied in dicomifier.to_nifti.convert module

Improvements

  • Better robustness of series splitting on Siemens XA
  • Fixed rescaling data of multi-frame images
  • Better handling of GE private data (phase images & multi-shell diffusion data)
  • Support for Python 3.10

v2.2.1

20 Oct 14:53
v2.2.1
727d6e6
Compare
Choose a tag to compare

Minor release with the following changes

  • Apply LGTM recommendations (thanks @DimitriPapadopoulos)
  • Origin in NIfTI image converted from Siemens mosaic images
  • Parsing Siemens protocol data with WiPMemBlock entries of different types

v2.2.0

03 Sep 12:39
v2.2.0
3099c12
Compare
Choose a tag to compare

Dicomifier 2.2.0 adds parsing the protocol data contained in the private DICOM fields generated by Siemens MR scanners. They can be read from the JSON metadata created by Dicomifier as follows:

import base64
import json

import dicomifier

with open("/somewhere/1.json") as fd:
    meta_data = json.load(fd)
csa = dicomifier.dicom_to_nifti.siemens.parse_csa(base64.b64decode(meta_data["00291020"][0]))
protocol = dicomifier.dicom_to_nifti.siemens.parse_ascconv(csa["MrPhoenixProtocol"][0])

# `protocol` is a dictionary of all items in the ASCCONV section, e.g.
train_length = protocol["sFastImaging"]["lEPIFactor"]

This release also fixes a bug in reading the private DICOM fields.

v2.1.0

03 Apr 10:18
v2.1.0
0976e5e
Compare
Choose a tag to compare

Dicomifier now has a search command to better target the partial conversion of a data set. By default, this lists the files matching search criteria based on the DICOM tags:

$ dicomifier search -m SeriesDescription="*Something*" huge_directory
huge_directory/2_DEV_ME/24_MT_MA/IM000001
huge_directory/2_DEV_ME/24_MT_MA/IM000002
huge_directory/2_DEV_ME/24_MT_MA/IM000003
...

It can also be piped to dicomifier to-nifti:

$ dicomifier search -m SeriesDescription="*Something*" -p huge_directory | dicomifier to-nifti -v info - nifti_directory 
INFO - dicomifier: Splitting 3840 DICOM files in series
INFO - dicomifier: 10 series found
...

Other improvements and bug fixes:

  • Robustness of list
  • Conversion of multi-frame data with stack indices split between Shared and Per-Frame sequences
  • Conversion of single-slice data with no thickness
  • Compatibility with Python 3.5

v2.0.5

23 Jan 10:51
v2.0.5
5c19a5a
Compare
Choose a tag to compare

This is a bugfix release:

  • Conversion of Bruker data with non-ASCII characters

v2.0.4

15 Jan 08:44
v2.0.4
3afce0d
Compare
Choose a tag to compare

Bugfix release:

  • Reading diffusion data from Paravision 5
  • Compatibility with Python 3.9
  • Sorting multiframe data

v2.0.3

05 Nov 14:50
5a58cab
Compare
Choose a tag to compare

This is a bugfix release:

  • Fix conversion of Siemens data with separate coil elements
  • Fix a random error with binary stack keys
  • Fix warnings related to new versions of numpy and nibabel

v2.0.2

02 Nov 14:00
8b24abf
Compare
Choose a tag to compare

This is a bugfix release

  • Fix the layout option in to-dicom
  • Improve the robustness of GE diffusion meta-data getter
  • Fix the conversion of multi-volume data created by Paravision 5