dmipy icon indicating copy to clipboard operation
dmipy copied to clipboard

Calculating scalars for noddi-bingham distributions

Open rutgerfick opened this issue 4 years ago • 1 comments

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 avatar May 23 '20 10:05 rutgerfick

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.

rutgerfick avatar May 23 '20 10:05 rutgerfick