This package provides an image reconstruction pipeline for real-world non-Cartesian MRI, designed particularly for spiral diffusion imaging. It is completely implemented in Julia using original code and external packages, e.g., MRIReco.jl for the off-resonance (B0) corrections & core iterative reconstruction tasks, and MRIGradients.jl for the correction of gradient waveforms due to system imperfections via the Gradient Impulse Response Function (GIRF).
This repository includes working examples for spiral reconstruction with GIRF correction of k-space trajectory (kx-ky-kz, or k1 as the first order GIRF) and B0 eddy currents (k0 as zeroth order GIRF), iterative reconstruction (cg-SENSE) and a Cartesian reconstruction example for coil sensitivity and off-resonance map calculation.
The data for the phantom reconstruction joss_demo.jl
is publicly available here. The path of the data, params_general[:project_path]
, needs to be modified accordingly in the config file.
For a full introduction, please refer to our manuscript for a full description of this package, including background, purpose, implementation, and the information of dependent packages.
To install the package, start Julia and type the following command in the REPL:
julia>]add GIRFReco
It is also possible to install the package with the following code:
using Pkg
Pkg.add("GIRFReco")
There is an example script in the example
folder. A quick start guide of this script can be found here.
git clone git@github:BRAIN-TO/GIRFReco.jl
or to copy it to the dev directory using the Quick Installation and the following command:
julia> ]dev GIRFReco
GIRFReco.jl
folder. Our own development configuration is Visual Studio Code with the Julia extension. Other environments for Julia should work in a similar way with possible extra configurations.]
to enter the package manager.activate .
to activate a the Julia environment defined in Project.toml
file in the GIRFReco.jl
repo.MRIGradients.jl
package by add MRIGradients
.add MRIReco
add MRIFiles
add MRIBase
add ImageUtils
add MRICoilSensitivities
add FileIO
instantiate
in Julia package manager to install all of the dependencies. This may be all you need to do (i.e you might be able to skip steps 7,8). joss_demo.jl
under the folder docs/lit/examples/
, make sure to set rootProjPath
as the folder that stores demo data, then run it in Julia REPL.Phantom Images. (Presented at ISMRM 2022, p.2435): using a dataset with 4 spiral interleaves for images with 1.1mm in-plane resolution. The code and dataset are both described in the previous section.
cd docs/lit/examples
julia joss_demo.jl
The final reconstructed spiral images are similar to the following ones: