Streamlines between two ROI

#1

Dear MRtrix experts,
I created a whole-brain tractograms using pipeline described in BATMAN tutorial. Now, I want to obtain streamlines between the cerebellum and thalamic nuclei. I got masks of cerebellum and thalamus from atlases and transformed them to individual space. I used tckedit

with -include option, but the result is not the one that I aim for. Also, I tried -mask option but it does not show me the connections between two regions.
Here is the result for -include option:

Could you guide me on how can I remove unwanted streamlines that go from thalamus to frontal region?

#2

I did a almost same thing of making a few ROI connectivity.
The extraction of specific bundles is done by tck2connectome and connectome2tck command as know as I know.

1 Like
#3

Thank you for your reply.
I think tck2connectome needs a parcellation image, as I reed in Tutorial. I do not know any atlas that has thalamic nuclei and cerebellum together. I got cerebellum atlas from SUIT package and thalamic nuclei from Morel atlas. Is there any way to combine them?

#4

It’s certainly possible to combine parcellations from different sources (as long as they don’t overlap). But it’s not something for which a push-button command solution is provided: you need to figure out exactly how the images you have need to be combined together in order to produce an image where each parcel contains an integer index label, and the indices of the different parcels increment from 1. So for instance, if you had one image with parcels labelled 1-10, and another with parcels labelled 1-20, you could use mrcalc to add 20 to the values in the first image, then use mrcalc or mrmath to compute the sum across the two images; you would then have a single image with parcels uniquely valued from 1-30.

1 Like
#5

I followed the instruction, and combined parcellations from different atlases and then registered them to individual space. Then, using tck2connectome and connectome2tck commands, streamlines between thalamus and left dentate nucleus were reconstructed. Now, I think the result seems somehow odd. Based on the literature and biology, I expect more streamlines connecting these two regions. Do you have any idea if I make a mistake in my pipeline? It might be worth mentioning that I used SUIT atlas to extract dentate nucleus.

one more question, in addition to this stage, I want to quantify the results and measure the strength of connectivity between these ROIs. since I am very new to this field can you guide me how to do this? or refer me to the post that has been discussed this issue before?

#6

Hi again,
A short update,
I tried another way to generate streamlines between dentate nucleus and thalamus, I used LDentate as an additional seed image with inclusion of right thalamus. here is the command I used:
tckgen –act 5tt_coreg.mif –backtrack –seed_gmwmi gmwmSeed_coreg.mif -seed_image DentateLeft -include Right_thalamus –select 3000 wmfod_norm.mif tracks_3k.tck
the resulting streamlines

Then, I performed tck2connectome using a numbered ROI image that consists of LeftDentate and RightThalamus and then connectome2tck to see the results. However, no streamlines were reconstructed.
*tck2connectome -symmetric -zero_diagonal -scale_invnodevol tracks_3k.tck LDenRThal.mif DenThal.csv -out_assignment assignments_DenThal.csv *

connectome2tck –nodes 1,2 –exclusive tracks_3k.tck assignments_DenThal.csv DenThal/LDen-LThal.tck

I observed the results more in detail and found that just a few of streamlines are within dentate nucleus mask that seem not terminating in thalamus to be written in connectome2tck step.

Do you have any opinion how can I change the pipeline to get the streamlines?

#7

Hi there,

in my experience, I found that if you tell connectome2tck to return streamlines which are connected to nodes 1 and 2, it will return the streamlines that start or finish in node 1 and 2 but do not necessarily connect the node 1 and 2. So the filtered streamlines can go from node 1 and end somewhere else and the same to node 2, even when using the -exclusive argument.

I wish some expert can propose a solution using this command line… Sometimes I do a custom script to extract the desired streamlines.

1 Like
#8

Then, using tck2connectome and connectome2tck commands, streamlines between thalamus and left dentate nucleus were reconstructed. Now, I think the result seems somehow odd. Based on the literature and biology, I expect more streamlines connecting these two regions.

I tried another way to generate streamlines between dentate nucleus and thalamus, I used LDentate as an additional seed image with inclusion of right thalamus

I think the issue here might relate to the difference in mechanism between how streamlines are assigned to ROIs in tckgen / tckedit, and how streamlines are assigned to parcels in tck2connectome:

  • The former relies entirely on testing whether, for any vertex along the length of the streamline, the voxel in which that vertex resides is included in the corresponding mask. As such, a streamline can intersect a ROI at any point along its length to be included.

  • The latter (by default) deals only with streamlines endpoints, assigning each endpoint individually to the nearest labelled voxel (as long as the distance is less than by default 2mm).

My suspicion is that the dentate nucleus is more-or-less entirely segmented as “white matter” in the 5TT image; as such, streamlines go straight through it, terminate elsewhere, and are consequently not assigned to the parcel corresponding to that structure, because of the mechanism by which that assignment takes place. Therefore for your specific use case the tckedit approach may be preferable. Though if you feel like going down a rabbit-hole you could try tck2connectome with “-assignment_all_voxels” :nerd_face:

one more question, in addition to this stage, I want to quantify the results and measure the strength of connectivity between these ROIs

One day I will publish this manuscript, everyone, I promise :sweat_smile:
@alan-connelly: :pleading_face:
I can’t explain the whole thing here, but I would strongly advise carefully reading the SIFT and SIFT2 manuscripts.

In my experience, I found that if you tell connectome2tck to return streamlines which are connected to nodes 1 and 2, it will return the streamlines that start or finish in node 1 and 2 but do not necessarily connect the node 1 and 2.

Not sure whether or not we disagree on the appropriate usage of the word “connect” :laughing:

Certainly in the context of the discussion here it’s possible for a streamline to traverse a node without being assigned to it; but rather than considering this as a node that is “connected” to the streamline but to which it is not being assigned, I would instead argue that axons don’t synapse in the white matter, and therefore streamlines shouldn’t “connect” to a node underlying which the voxels are segmented as white matter; rather, there is incongruence in imposed prior expectations between the tissue segmentation and the parcellation data :exploding_head:

1 Like