Hello, I am a student who is fairly new to Mrtrix/dMRI in general.
I am interested in studying degeneration of specific white matter tracts and computing FD for each tract.
I understand that the use of an atlas to segment different tracts is required, and looked at this thread: Fixel-based analysis - assign significant fixels to tracks, but I was confused at how to where to obtain the white matter atlases. Is there a specific one recommended for FBA? As well, I am unsure how to manually create the inclusion and exclusion ROIs. Are these ROIs sourced from other publications, or are they derived from oneās subject data using Mrtrix commands?
Lastly, Iām assuming that one can use the WM atlas to āguideā categorization of fixels into a specific ROI/tract of interest, as was mentioned in the thread. Is there a command in Mrtrix to do this?
The questions youāre asking are indeed quite broad, and thereās many different ways to go about it. Thereās certainly no single way that is best here: itās about choosing what works best for your data, hypothesis/es and even just practically (or pragmatically).
If indeed youāre looking to get FD per tract āa prioriā, you might want go get a fixel masks for each tract of your interest. Note this is a bit different from the post you link to: Remika Mitoās (@rmito) work there performed a whole-brain fixel-based analysis first: i.e. without hypothesising a set of tracts. Once the fixel-wise results were obtained, they were essentially labelled by identifying structures/tracts present in those results. So on an abstract level, itās a bit the other way around, you could say. Iāll highlight your question to Remika: she might be able to clarify some details of the atlases used. But in the end, this was quite a bit of manual work; itās not an automated approach combining an existing atlas to get that kind of output.
So sadly, no, thereās no simple solution available: it takes some manual work. A PhD student is working on creating a fixel-wise tract atlas that might eventually serve this purpose, but itās still a ways off.
Yes, approaches using TractSeg might help you quite a bit along the road to make a few things more automated or simpler. In the end, the challenge will still partially be that the main TractSeg output is voxel-wise maps: so you need to bridge a gap to link it to the fixels in the FOD template (and a tract shouldnāt contain all fixels in each voxel it passes through of course!). These days, TractSeg also outputs ātract orientation mapsā ("TOM"s): I can imagine with a slight bit of trickery you could use that output and correspond it with the fixel in your fixel analysis mask, as derived from the FOD template. @jpalm, how did you go about it in practice? (again, I can imagine some alternatives, but would be great to hear some experiences!)
@Ana_Han, there was another recent question on this topic you mightāve missed: see also some of the things I wrote over here, as well as the follow-up replies. That might also inspire a few options. @jpalm, take a look as well: might be interesting to see how it relates to your approach to deal with this!
These days, TractSeg also outputs ātract orientation mapsā ("TOM"s): I can imagine with a slight bit of trickery you could use that output and correspond it with the fixel in your fixel analysis mask, as derived from the FOD template. @jpalm, how did you go about it in practice?
@jpalm@ThijsDhollander Iām interested in what this trickery may be.
Iāve segemented via TractSeg and now want to map the tracts back to the fixels.
Do I use tck2fixel?
No worries. The ātrickeryā I was referring to was actually something slightly differently: TractSeg outputs ātract orientation mapsā (they call them āTOMsā as I wrote, I believe). Together with the voxel-masks of the tracts, those TOMs are actually the ārealā output from TractSeg itself. Theyāre basically peak orientations, which indeed makes them very much like fixels! So the trickery I was hinting at would be first making those peaks into actual fixels (this only refers to the data format, nothing really changes to what they are otherwise) via peaks2fixel. That would then be a āstand-aloneā fixel image so as to say, with itās own index.mif and directions.mif (with only fixels for a given tract/bundle). Then Iād make some handy use of fixelcorrespondence to āmapā those onto the fixel analysis mask (the one that youād have derived earlier in the pipeline from your FOD template).
However, in the meantime TractSeg also outputs streamlines (.tck) itself indeed. This is not a ādirectā TractSeg output, in a strict sense: those streamlines donāt pop out the neural net itself, but theyāre computed via the TOMs actually. In short, the TOMs are turned into āFOD-likeā ODFs, and those are then fed to tckgen (all wrapped in the TractSeg code).
But in some ways, the latter is actually a great thing: by applying actual streamline tractography on those ODFs-derived-from-TOMs, the ātractā (streamlines) you get is inherently more regularised, i.e., smoother; whereas the TOMs themselves might be (slightly) more noisy depending on the original data quality. So then using those streamlines with tck2fixel, as you suggest, will actually be more robust in the end.
In practice, this has now also become much more convenient since the TractSeg package itself directly does all the steps up until and including generating streamlines for you, and it does it very well (in my experience). So Iād say: for most purposes, ignore the the ātrickeryā I was originally referring to, and go with tck2fixel; for both practical simplicity as well as improved robustness. Weāve been using this in our lab now routinely to generate fixel ROIs in templates; both for (fixel) ROI-based analyses as well as almost fully automatically labelling whole-brain FBA results themselves, i.e., as a somewhat more objective and standardised way of reporting FBA results. It works extremely well if your data has been processed with any form of 3-tissue CSD (either MSMT-CSD or SS3T-CSD), since thatās the kind / quality of WM FODs TractSeg has effectively been trained on.