GREMWI

Gradient-echo based (diffusion informed) myelin water imaging (GRE-MWI).

gpuGREMWI

Usage

obj = gpuGREMWI(te,fixed_params);
[out] = obj.estimate( data, mask, extraData, fitting);

Model parameters

% S0        : T1w signal [a.u.]
% MWF       : myelin water fraction [0,1]
% IWF       : intracellular volume ratio (=Vic or ICVF in DWI) [0,1]
% R2sMW     : R2* MW [1/s]
% R2sIW     : R2* IW [1/s]
% R2sEW     : R2* EW [1/s]
% freqMW    : frequency MW [ppm]
% freqIW    : frequency IW [ppm]
% dfreqBKG  : background frequency in addition to the one provided [ppm]
% dpini     : B1 phase offset in addition to the one provided [rad]
model_params    = { 'S0';   'MWF';  'IWF';  'R2sMW';'R2sIW';'R2sEW'; 'freqMW';'freqIW';'dfreqBKG';'dpini'};
ub              = [    2;     0.3;      1;      200;     50;     50;     0.25;    0.05;       0.4;   pi/2];
lb              = [    0;       0;      0;       50;      2;      2;    -0.05;    -0.1;      -0.4;  -pi/2];
startpoint      = [    1;     0.1;    0.8;      100;     15;     21;     0.04;       0;         0;      0];

I/O overview

obj = gpuMCRMWI(te,tr,fa,fixed_params);

Input

Description

te

1xNte echo time [s]

fixed_params

parameters to be fixed (Optional)

fixed_params.x_i

isotropic susceptibility of myelin [ppm], default = 0.1

fixed_params.x_a

anisotropic susceptibility of myelin [ppm], default = 0.1

fixed_params.E

exchange induced frequency shift [ppm], default = 0.02

fixed_params.rho_mw

myelin water proton ratio, default = 0.4186

fixed_params.B0

main magnetic field strength [T], default = 3

fixed_params.B0_dir

main magnetic field direction, [x,y,z], default = [0;0;1]

[out] = obj.estimate( data, mask, extraData, fitting);

Input

Description

data

5D MRI data, [x,y,z,t,fa]

mask

3D mask, [x,y,z]

extraData

Structure array with additional data

extraData.freqBKG

3D initial estimation of total field [Hz] (highly recommended), [x,y,z]

extraData.pini

3D initial estimation of B1 offset [rad] (highly recommended), [x,y,z]

extraData.ff

3D/4D fibre fraction map, [x,y,z,Nfibre] (for DIMWI only)

extraData.theta

3D/4D angle between B0 and fibre orientation, [x,y,z,Nfibre] (for DIMWI only)

extraData.fo

4D/5D fibre orientation vector map, [x,y,z,Nfibre,3] (for DIMWI only)

extraData.IWF

3D volume fraction Intracellular/(Intracellular+extracellular), [x,y,z] (for DIMWI only)

fitting

Structure array for model parameter estimation

fitting.optimiser

Algorithm for parameter update, ‘adam’ (default) | ‘sgdm’ | ‘rmsprop’

fitting.isdisplay

boolean, display optimisation process in graphic plot

fitting.convergenceValue

tolerance in loss gradient to stop the optimisation

fitting.convergenceWindow

# of elements in which ‘convergenceValue’ is computed

fitting.iteration

maximum # of optimisation iterations

fitting.initialLearnRate

initial learn rate of Adam optimiser

fitting.tol

tolerance in loss

fitting.lambda

regularisation parameter(s)

fitting.regmap

model parameter(s) in which regularisation is applied,

fitting.TVmode

Mode for total variation (TV) regularisation, ‘2D’ | ‘3D’

fitting.lossFunction

loss function, ‘L1’ | ‘L2’ | ‘huber’ | ‘mse’

fitting.isWeighted

is cost weighted, true|false, default = true

fitting.weightMethod

Weighting method, ‘1stecho’ (default) | ‘norm’

fitting.weightPower

power order of the weight, default = 2

fitting.DIMWI

Structure variable for DIMWI options

fitting.DIMWI.isFitIWF

‘IWF’ is a free parameter, default = true

fitting.DIMWI.isFitFreqMW

Myelin water frequency is a free parameter, default = true

fitting.DIMWI.isFitFreqIW

Intracellular water frequency is a free parameter, default = true

fitting.DIMWI.isFitR2sEW

Extracellular water R2* is a free parameter, default = true