AthenaEPI / dmipy

The open source toolbox for reproducible diffusion MRI-based microstructure estimation
MIT License
97 stars 31 forks source link

Calculating scalars for noddi-bingham distributions #95

Open rutgerfick opened 4 years ago

rutgerfick commented 4 years ago

issue copied from email from Faye McKenna.

I am using the Noddi-Bingham model (https://github.com/AthenaEPI/dmipy/blob/master/examples/example_noddi_bingham.ipynb) and see that the code outputs several parameters (psi, beta fraction, ODI etc) but not ODIp, ODIs or DA. If possible, could you please point me to the correct code to obtain these outputs as well? Maybe something as follows:

ODI_p = np.arctan2(1.0, kappa - beta) 2 / np.pi ODI_s= np.arctan2(1.0, kappa) 2 / np.pi DAI= np.arctan2(beta, kappa - beta) * 2 / np.pi

rutgerfick commented 4 years ago

response:

I will add some helper functions to make the calculations of your scalars more easy. Briefly, odi and beta_fraction are just optimization parameters that stand in for the actual kappa and beta of the bingham:

  • you can go from odi to kappa using the function dmipy.distributions.distibrutions.odi2kappa
  • you can go from beta_fraction to beta by beta = beta_fraction * kappa from there you can calculate your scalars using that kappa and beta.

Keep in mind that any derived scalar like the ones you want to calculate are just different ways of looking at the same beta and kappa. They add only microstructure interpretation if the fitted model was good for the underlying tissue, e.g. if you fit noddi-bingham to anything that has multiple bundles these values are hard to interpret and just reflect some signal fit.