Hello @jdtournier ,
Hope you are doing great. I would like to know whether we have log domain intensity normalization of FODs for output of the dwi2response tournier algorithm, just like mtnormalise for multi-shell data. Is dwinormalise enough for tournier algorithm? I am looking forward to your response.
Thank you very much.
I must admit, Intensity normalisation is quite a tricky topic. But generally:
dwinormalise was developed before multi shell data were available – and before multi-tissue CSD. So it’s definitely appropriate for the original CSD (tournier) approach.
On the other hand,
mtnormalise is what we currently recommend for MSMT-CSD outputs, but I don’t think it would be suitable for single-shell regular CSD. We’ve looked into the possibility of using it for 2-tissue MSMT-CSD (just WM+CSF), and I think we concluded it was ok, though the full 3-tissue approach should be used if it’s an option.
Just trying to prevent different concepts getting blurred:
mtnormalise applies to multi-tissue data, since it’s the presumption of a unity sum of tissue fractions on which it operates. So this would be the output of
dwi2fod msmt_csd, regardless of what method was used to derive the response functions for such (though it would need to be a method that yields more than one response function).
dwi2response tournier, the output is a response function to be used for deconvolution, and so isn’t something that either bias field correction or intensity normalisation is directly applicable to. Use of that response function estimation algorithm however infers that one subsequently performs single-tissue deconvolution, to which a multi-tissue-based intensity normalisation is logically not applicable.
Note that you can actually theoretically run the multi-tissue normalisation algorithm but only provide it with a single tissue ODF image. Question is whether that is detrimental vs. beneficial, and whether it is preferable to some alternative approach (e.g.
dwinormalise group). For a genuine single-tissue deconvolution, I don’t think I’d be applying
It is true that, with single-shell DWI data, one can nevertheless perform a multi-tissue deconvolution by making use of the b=0 data and using WM and CSF response functions. However this would necessitate using something other than the
dwi2response tournier algorithm.
I think we need a figure in the documentation that explains the difference between single- and multi-shell data, single-tissue vs. multi-tissue response function estimation, single-tissue vs. 2-tissue vs. 3-tissue deconvolution, different forms of intensity normalisation, and the commands that get one from point to the next…
For my project, I have 260 subjects and want to create connectivity matrix base on the available parameters (mean FA and etc). I am looking for the best function for intensity normalization. My DWI data were acquired with a b0 (one and only one) and 64 volumes with b=1000 therefore I obtain the response function and fod image for white matter using the following codes:
dwi2response tournier dwi_den_preproc_unbiased.mif -fslgrad sub.bvec sub.bval wm.txt -voxels voxels.mif
dwiextract -shell 1000 dwi_den_preproc_unbiased.mif dwi_ss.mif
tail -1 wm.txt > wm_ss.txt
dwi2fod msmt_csd dwi_ss.mif -mask mask.mif wm_ss.txt wmfod.mif
but for intensity normalization, I am stuck at selection of the best function ( mtnormalise,dwinormalise and dwiintensitynorm). I read the Batman tutorial and followed this topic and couldn’t find a solution.
Can you please give me some advice regarding this issue?
Thanks in advance,
Hello @milad ,
You can use dwinormalise, and dwi2response tournier & dwi2fod csd. That’ll be fine,
Thanks for your response. Just for more clarification, I must use dwinormalise before extracting the response function, Am i right? Regarding the usage of this function, two algorithms are available (group and individual), which of them can be used for quantitative analyses in my subjects?
Hello @milad ,
You can use dwinormalise, that’s true. You can choose either group or individual. Having said that, individual will be fine, and you can compare quantitative metrics later.
Many thanks for your helps.
Direct use of
dwinormalise individual is not very typical;
dwinormalise group itself internally calls
dwinormalise individual, and that component was made accessible at the command-line rather than just embedding the code in case it is of use to anyone, but it’s not typically accessed directly.
If using that approach, you would typically want to use
dwinormalise group before estimating response functions, since it will better balance the magnitudes of the response functions across individuals prior to computing the group average. That’s less consequential now due to the internals of how
responsemean works, but it’s still logically the better sequence of steps.