CSD testing (Investigating the prevalence of complex fiber configurations in white matter tissue with diffusion magnetic resonance imaging)


I am hoping to follow the steps of this paper - Investigating the prevalence of complex fiber configurations in white matter tissue with diffusion magnetic resonance imaging - PMC. I was wondering if the code for the simulation of DWI signals with different numbers of fibers is available anywhere? Also I was wondering if the results of this paper have been reproduced with more a clinically applicable number of dw images? Any information on either of those would be greatly appreciated!


1 Like

I did not publish any code related to that paper. There is nothing particularly fancy about what I did, I just added the DWI signals from multiple reoriented axially symmetric diffusion tensors.

Note however that the tensor model is not a good fit for multi-shell data involving higher b-values. In general, I would recommend performing multi-fiber simulations by means of a forward spherical convolution operation with a response function from actual data. This way any non-gaussian behaviour in the data (that cannot be captured by the DTI model) is captured by the response. Unfortunately, we currently don’t have a command to perform a forward spherical convolution in MRtrix (only its inverse). It might be worthwhile to add that in a future release. (as pointed out by @jdtournier below)

Alternatively you could use a DKI model for a single fiber population, which can account for non-gaussian behaviour. Dipy has code and examples on how to do this at DIPY : Docs 1.7.0 - Examples. Note that I have not tested or used this code myself.

If you want to resolve multiple fiber orientations, the dataset used in my paper is far from ideal. You would be much better off using higher b-values to better resolve crossing fibers and to use multiple b-values to help suppress partial volume effects with non-WM while you are at it. And you can definitely get away with using a lot less samples than the 720 used in my paper. Those were used because we had them, not because they were necessary or optimal by any means.

We do! See this pull request.

Oh shoot! I completely forgot about this! My bad…