Skip to content

Examples (MR)

evgueni-ovtchinnikov edited this page Jan 26, 2018 · 4 revisions

MATLAB and Python demo files are provided. Matlab demos will provide improved graphical output if the user has the MATLAB Image Processing Toolbox installed.

All MR demo files currently use Gadgetron behind-the-scenes as the reconstruction engine, however the demos located in the folders named "MR" (with no "Gadgetron" in the name) hide this from the user and in principle could use a different engine in the future. The folders are:

SIRF/examples/Matlab/MR
SIRF/examples/Matlab/MR/Gadgetron
SIRF/examples/Python/MR
SIRF/examples/Python/MR/Gadgetron

For MATLAB, the demo and code folders need to be on your MATLAB path. Assuming there is an environment variable set called "HOME" you can modify the MATLAB path as follows:

addpath( fullfile( getenv('HOME'), 'SIRF', 'examples', 'Matlab' , 'MR')) ;
addpath( fullfile( getenv('HOME'), 'SIRF', 'examples', 'Matlab' , 'MR', 'Gadgetron' )) ;

Although most demos make use of gadgets from the Gadgetron, this is hidden from the user in the 'MR' demos. Only demos in 'MR/Gadgetron' use gadgets explicitly.

GRAPPA Undersampled reconstructions

generate_undersampled_data.m (requires add_noise.m) creates an ISMRMRD HDF5 data file simulating a GRAPPA undersampled acquisition.

grappa_and_steepest_descent.m & grappa_and_steepest_descent.py show how to use MR acquisition model to improve the accuracy of GRAPPA reconstruction.

grappa_basic.m & grappa_basic.py show basic reconstruction of data acquired with GRAPPA undersampling without explicit use of Gadgetron gadgets.

Gadgetron/grappa_detail.m & Gadgetron/grappa_detail.py are similar to grappa_basic.m or grappa_basic.py but with more annotations in code, output of g-factors and explicit use of gadgets.

Fully Sampled Data Reconstructions

fully_sampled_recon.m & fully_sampled_recon.py show the reconstruction of fully sampled data without explicit use of Gadgetron gadgets.

Gadgetron/fully_sampled_recon_single_chain.m & Gadgetron/fully_sampled_recon_single_chain.py show the reconstruction of fully sampled data with explicit use of a chain of Gadgetron gadgets.

Gadgetron/fully_sampled_recon_three_chains.m & Gadgetron/fully_sampled_recon_three_chains.py show how to split a Gadgetron reconstruction chain into 3 separate chains with data filtering applied between the chains.

Other

using acquisition_data.m & using acquisition_data.py show how to access and manipulate acquisition data.

using acquisition_model.m & using acquisition_model.py show how to generate simulated acquisition data and backproject it into image space (see grappa_and_steepest_descent demos for an illustration on how this functionality can be employed in the improvement of the accuracy of reconstruction).

coil_sensitivity_maps.py demonstrates methods for calculating coil sensitivity maps (Python only).