Finding tracts from one region to another region



Dear Mrtrix3 developers,

I am working on tractography related to VCID subjects. I just started using mrtrix3 probabilistic tractography IFOD2 method.
I am trying to generate fiber tracks from one region to another region.
I am using CSD-MSMT algorithm along with SIFT.
I have tried different ways of generating tracks using tckgen as,

  1. whole brain tractography with seed region as one region with 10M tracks, unidirectional, crop at gmwmi, maxlength 250, -seeds 0 -> then do SIFT to reduce to 1M -> then do tckedit with include region as another region
  2. tckgen with seed as one ROI and include region as another ROI and with all the above params -> then do SIFT to reduce
  3. do whole brain with dynamic seeding and with same above params -> then do SIFT to reduce to 1M -> then do tckedit with include regions as both ROIs
    And there are still many ways…
    I am getting different results for each of the different ways. Kindly advice me on the right steps and parameters to set in order to get reliable tracks.

One more question, I generated 1M tracts with tckgen+SIFT , say with the same settings in 1 above, and extracted desired tracts using tckedit for five different target ROIs (5 different tract bundles in this case). As I compare the tract counts between 2 healthy controls. The numbers vary so much. Any insights on this behavior or any suggestions on how to analyse/find where from the differences arise.

Thank you.


Hi Rajikha,

whole brain tractography with seed region as one region with 10M tracks …

If you are using one of your regions of interest as a seed region for tractography, this is not what we refer to as “whole-brain tractography”. I.e. Although you’re permitting tracking to go to the whole brain, you’re not permitting tracks to come from the whole brain. So this is still considered to be “targeted tracking” (at least by yours truly), even if there’s not actually a “target” in the context of the tracking algorithm itself (only a target in terms of the seeding).

This is an essential differentiation in the context of SIFT, which is not applicable unless you perform genuine whole-brain fibre-tracking. If you provide SIFT with only a subset of white matter pathways reconstructed, SIFT will erroneously try to attribute all of the fibre density in every fixel throughout the brain to just that subset. Therefore your approaches 1 and 2 are completely invalid; number 3 is the only approach that is technically sound with respect to the SIFT model.



Hi Rob,

Thank you so much for clarifying.

When I do whole brain tractography with dynamic seeding with 100M and then do SIFT to reduce to 10M, in order to extract tracts from say left thalamus to left frontal, should I define both the regions as include regions in tckedit or is there any other ways of extracting the tracts from one region to another region from the whole brain tracts from SIFT .
I got this doubt as extracting the tracts by including both ROIs as include regions resulted in very less amount of tracts between the 2 regions (apart from include regions, I am not setting any other options for tckedit).
Suggestions please.



If your regions of interest are grey matter regions as opposed to white matter, you would be better off using the connectome2tck command. This will ensure that the mechanism used in connectome construction for assigning streamlines to nodes - by default it searches within a 2mm radius circle from each streamline endpoint to select the nearest node - will contribute to the selection of these tracks.

When using tckedit, streamlines will only be selected if they genuinely intersect the ROI. If your regions of interest are entirely encapsulated within the cortical ribbon (e.g. from FreeSurfer), but streamlines are terminated precisely at the GM-WM interface, there may not be any intersection between the streamline and the ROI, even though a streamline may perceptually belong to that region. That will be why tckedit is selecting less tracks than you’d expect.

In one of my many development branches, MRtrix3 differentiates between “white matter” and “grey matter” ROIs, and includes a heuristic mechanism that will make the latter behave more like as one would intuitively expect when using ACT. Eventually this will hopefully also include surface-based ROIs. It’s still a while away though unfortunately.


Surface roi would be a nice feature add ! +1


Thank you Rob. Exactly my regions are freesurfer defined sub-cortical regions. Let me try the connectome2tck instead of tckedit.

Thank you again.



Hi Mrtrix3 developers,

I want to clarify few things which I couldn’t understand from the track results I got.

  1. I tried extracting tracks from left thalamus to say left frontal (freesurfer defined ROIs and in diffusion space) using connectome2tck after whole brain tractography(100M) and SIFT(10M).
    The number of tracks that I get differs significantly among healthy controls, is it the behaviour of the algorithms, could you please share me any insights on such results.

  2. I tried different ways of extracting the tracks between 2 regions like
    a) tckgen with seed as left thalamus and include region as left frontal, 1M tracks
    b) whole brain tractography 100M ->SIFT 10M->connectome2tck between the 2 regions
    c) tckgen with seed as thalamus 10M ->connectome2tck between the 2 regions
    For the same subject, I get different count of tracks for the different ways. Is it due to the number of desired tracks being different in each of the cases, is there a reliable method that I should follow for all the subjects (so that I can compare the track counts between the subjects)?

Thank you,


Note : The diffusion data for all healthy subjects were acquired using the same protocol


Hi again,

  1. Yes, the variability between healthy subjects will be larger than what we’d all like it to be; this is just the uncertainty in the whole reconstruction process. I tried to provide some insight into this variance using the scatterplots and reported statistics in this article.

  2. If you want the track counts to be biologically meaningful, approach b) is required. Indeed in the article linked above I showed that variance between subjects actually decreases with the application of SIFT. Fundamentally, approaches a) and c) are deriving a different property to that estimated via approach b) (“proportion of left thalamus connections that go to left frontal” v.s. “density of connections between left thalamus and left frontal”), which is an important concept to understand.