Computes the so-called Propagator Anisotropy of diffusion at each voxel according to a linear convolutional model:
atti(u,b) = Integral_{S}Phi(v)exp(-b*((lpar-lperp)(u*v)^2+lperp))dv.
The PA is defined as the sine of the angle between the EAP, P(R), and its isotropic counterpart defined as the spherical average of P(R). The angle between two signals is defined in the common way in terms of their inner product.
- Parameters
-
shfile | A string specifying the file containing the SH coefficients of the ODF at each voxel up to order L. Should be computed with micro2shodf. |
lambdaparfile | A string specifying the parallel diffusivity modeling the impulse response (should fulfill 0<lpar<=Diso). This is obtained with atti2micro. |
lambdaperpfile | A string specifying the file containing the traverse diffusivity at each voxel, estimated with atti2micro. |
varargin | varargin: Optional arguments passed as -name value pairs (e.g. -flperp 0.001). |
- Returns
- - pafile: PA at each voxel.
Mandatory Inputs:
- shfile: A string specifying the file containing the SH coefficients of the ODF at each voxel up to order L. Should be computed with micro2shodf.
- lambdaparfile: A string specifying the parallel diffusivity modeling the impulse response (should fulfill 0<lpar<=Diso). This is obtained with atti2micro.
- lambdaperpfile: A string specifying the file containing the traverse diffusivity at each voxel, estimated with atti2micro.
- varargin: Optional arguments passed as -name value pairs (e.g. -flperp 0.001).
Optional Arguments - General Optional Parameters:
- mask: a MxNxP array of logicals. Only those voxels where mask is true are processed, the others are filled with zeros (default: all trues).
- micro: wether (true) or not (false) compute the microscopic version of the PA, which depends only on lpar and lperp but not on sh. Accordingly, sh input may be left empty in this case (default: false).
- epsilon: to improve the contrast of the raw PA, a gamma correction is usually performed with the form: pa = pa0^(3*epsilon)/(1-3*pa0^epsilon+3*pa0^(2*epsilon)); Use empty brackets, [], to avoid this correction and work with the raw PA (default: 0.4).
Sanity Checks On The Micro-Structure Model:
- chkmod: Whether (true) or not (false) perform sanity checks over lpar and lperp as provided by atti2micro. If true, three corrections are performed:
- lpar is ensured to be in the range (ADC0/20,ADC0);
- lperp is ensured to be greater than lpar*flperp (see below);
- lperp is ensured to be less than lpar*Flperp (see below). (default: true)
- flperp: If chkmod == true, this parameter provides a lower threshold for lperp as a function of lpar (default: 0.001).
- Flperp: If chkmod == true, this parameter provides an upper threshold for lperp as a function of lpar (default: 0.999).
- ADC0: estimated diffusivity of free water at body temperature (Diso). Should use the same as in atti2micro (default: 3.0e-3).
Examples:
micro2pa shfile.nii lambdaparfile.nii lambdaperpfile.nii pafile.nii -mask mask_file.nii
function micro2pa(in shfile, in lambdaparfile, in lambdaperpfile, in pafile, in varargin)
- Note
- This is the simplest use case
- See also
- micro2pa