/MRIFieldmaps.jl

Julia methods for estimating fieldmaps in MRI

Primary LanguageJuliaMIT LicenseMIT

MRIFieldmaps

https://github.com/MagneticResonanceImaging/MRIFieldmaps.jl

action status codecov license docs-stable docs-dev code-style

This Julia language repo provides methods for regularized estimation of fieldmaps in MRI.

Currently there are methods for B0 fieldmap estimation from a water-only image signal model, or from a water-fat model with 1 or more lipid peaks.

Getting started

using Pkg
Pkg.add("MRIFieldmaps")

Example

For examples, see the documentation.

images = ... # complex images of size (nx, ny, ..., ncoil, nechotime)
images = ComplexF32.(imges) # 32-bit floats saves memory and thus time
echotime = [0, 2] * 1f-3 # echo times in seconds
b0fieldmap, _, _ = b0map(images, echotime) # regularized fieldmap in Hz

Citations

The algorithm in function b0map for B0 field map estimation is based on the paper: C Y Lin, J A Fessler, "Efficient Regularized Field Map Estimation in 3D MRI", IEEE TCI 2020 [http://doi.org/10.1109/TCI.2020.3031082] [http://arxiv.org/abs/2005.08661] Please cite this paper if you use this method.

The internal algorithm details are a bit different (and faster) because here we perform coil combination before starting the iterations, whereas the original Matlab code had loops over coils within each iteration.

Compatibility

Tested with Julia ≥ 1.8.

Related packages