The method estimates, in each voxel, a mixture of radial symmetric tensors from the DWI data contained in an object of class "dtiData".

# S4 method for dtiData
dwiMixtensor(object, maxcomp=3,
          model=c("MT","MTiso","MTisoFA","MTisoEV"), fa=NULL,
          lambda=NULL, mask=NULL, reltol=1e-10, maxit=5000, ngc=1000,
          nguess=100*maxcomp^2, msc=c("BIC","AIC","AICC","none"),
          mc.cores = setCores(,reprt=FALSE))
# S4 method for dwiMixtensor,dwiMixtensor
dwiMtCombine(mtobj1, mtobj2, msc="BIC", where=NULL)

Arguments

object

Object of class "dtiData"

maxcomp

Maximal number of mixture components.

model

Specifies the mixture model used. "MT" corresponds to a mixture of prolate tensors, "MTiso" includes an isotropic compartment, "MTisoFA" additionally fixes FA to the value given in argument fa and "MTisoEV" uses eigenvalues specified by fa and lambda.

fa

Value for FA in case of model="MTisoFA" or model="MTisoEV"

lambda

Value for first eigenvalue in case of model="MTisoEV"

mask

Brain mask

reltol

Relative tolerance for R's optim() function.

maxit

Maximal number of iterations in R's optim() function.

ngc

provide information on number of voxel processed, elapsed time and estimated remaining time after ngc voxel.

nguess

number of guesses in search for initial estimates

msc

Criterion used to select the order of the mixture model, either BIC (Bayes Information Criterion) AIC (Akaike Information Criterion) or AICC ((Bias-)Corrected Akaike Information Criterion). None may be specified to only correct for under-estimation of variances.

mtobj1

For method "dwiMtCombine" an "dwiMixtensor"-object.

where

Mask of voxel for which "dwiMtImprove" or "dwiMtCombine" should be performed.

mtobj2

For method "dwiMtCombine" an "dwiMixtensor"-object obtained from the same "dwiData" object. The maximum number of components in mtobj2 should preferably be less or equal to the maximum number of components in mtobj1.

mc.cores

Number of cores to use. Defaults to number of threads specified for openMP, see documentation of package awsMethods. Our experience suggests to use 4-6 cores if available.

Details

For model=="MT" the function estimates, in each voxel, a mixture of radial symmetric (prolate) tensors from the DWI data contained in an object of class "dtiData". The number of mixture components is selected depending on the data, with a maximum number of components specified by maxcomp. Optimization is performed usin R's internal BFGS code with mixture weights (volumes of compartments corresponding to a tensor component) computed using the Lawson-Hannson NNLS code. model=="MT" is only available for single shell data. In case of model=="MTiso" the model additionally contains an isotropic compartment. Optimization uses the internal L-BFGS-B code. model=="MTisoFA" and model=="MTisoEV" fix FA and eigenvalues of the prolate tensors, respectively, in the tensor mixture model with isotropic compartment.

The method "dwiMtCombine" enables to combine results obtained for the same dwi data set with different specifications, e.g. for maximum number of components mcomp and settings that influence initial estimates. The combined result contains in each voxel the best result from both reconstructions with respect to the specified model selection criterion msc.

Value

An object of class "dwiMixtensor".

References

Jian et al. (2007), A novel tensor distribution model for the diffusion-weighted MR signal, NeuroImage 37, 164--176.

J. Polzehl, K. Tabelow (2019). Magnetic Resonance Brain Imaging: Modeling and Data Analysis Using R. Springer, Use R! series. Doi:10.1007/978-3-030-29184-6.

Author

Karsten Tabelow tabelow@wias-berlin.de
J\"org Polzehl polzehl@wias-berlin.de

See also

Examples

  if (FALSE) demo(mixtens_art)