Estimate of CSF signal fraction

Dear MRtrix experts,

I would like to obtain an estimate of the CSF signal fraction from single-shell data. I tried two different approaches and I would be glad to hear your feedback:

  1. Response function estimation followed by Single-Shell 3-Tissue CSD (Single-Shell 3-Tissue CSD (SS3T-CSD) | MRtrix3Tissue):
  • dwi2response dhollander preprocessed_dwi.mif wm.txt gm.txt csf.txt
  • ss3t_csd_beta1 preprocessed_dwi.mif wm.txt wm.mif gm.txt gm.mif csf.txt csf.mif -mask brain_mask.mif
    After that, to get a signal fraction, I normalize the 3 compartments to sum to unity: for CSF csf/(wm+gm+csf)
  1. Response function estimation followed by Multi-Shell Multi-Tissue CSD:
  • dwi2response dhollander preprocessed_dwi.mif wm.txt gm.txt csf.txt
  • dwi2fod msmt_csd preprocessed_dwi.mif wm.txt wm.mif csf.txt csf.mif -mask brain_mask.mif
    Again, I normalize the 2 compartments (WM and CSF) to sum to unity: for CSF csf/(wm+csf)

When comparing the two approaches, the values that I obtain with the second approach are larger than those obtained with the first approach. I understand that, for single-shell data, MSMT CSD is limited to resolve 2 compartments and this may result in an overestimated CSF signal fraction. Thus, I would tend to use, for this specific application, the SS3T CSD approach. On the other hand, I was wondering whether there are any drawbacks that I should consider when using MRtrix3Tissue, which is still a fork of the main MRtrix3.

Thanks a lot for your help!


1 Like

Hi Vincenzo,

Thanks for your interest in using SS3T-CSD for your application. You’re right that using 3 tissues provides a better free water (CSF) fraction estimation. Your steps (with normalisation for the sum of all 3 tissues) are otherwise correctly implemented. As you mention, this results then in a tissue signal fraction (not to be confused with volume fractions, which we can’t obtain from this kind of dMRI data in the first place).

About the fork, this is independent from MRtrix3, and not maintained by its developers. I advise to use it only specifically for the 3-tissue CSD steps at the moment, and use the most recent version of MRtrix3 for other steps in your pipeline, including preprocessing or other post-processing. The fork currently only exists to support running the 3-tissue CSD steps themselves. It’s otherwise not a competing MRtrix3 version or anything of that kind. I will update the website in the near future to reflect this better. If you need any SS3T-CSD support specifically, this is best done via the GitHub issues interface of the fork. I’m always happy to look over your maps if you’ve got any doubts. I hope that helps.