Seed-based tractography

Hello, MRtrix3 experts!

I’m trying to do seed-based tractography to 1) get all the streamlines from one roi to all the other brain voxels, 2) get all the streamlines from one roi to the other.

But the results were different with what I expected. Streamlines did not spread throughout the brain, but only in local areas.

I ran the following commands. Algorithm which I used is FACT.

  1. getting all the streamlines from one roi to all the other brain voxels
os.system(f'tckgen {data_dir}/dhollander_FOD_wm_norm_{sub}.mif {output_dir}/ctx_com_{algorithm}_max_unidirection_500M_{sub}.tck \
    -act 5TT2b0_{sub}.mif -crop_at_gmwmi -maxlength 250 -algorithm {algorithm} -seeds 50M -seed_unidirectional \
    -seed_image {output_dir}/vos_ctx_com_130316_FA_max_top5.nii.gz') 

os.system(f'tckgen {data_dir}/dhollander_FOD_wm_norm_{sub}.mif {output_dir}/ctx_com_{algorithm}_max_bidirection_500M_{sub}.tck \
    -act 5TT2b0_{sub}.mif -crop_at_gmwmi -maxlength 250 -algorithm {algorithm} -seeds 50M \
    -seed_image {output_dir}/vos_ctx_com_130316_FA_max_top5.nii.gz')
  1. getting all the streamlines from one roi to the other
os.system(f'tckgen {data_dir}/dhollander_FOD_wm_norm_{sub}.mif {output_dir}/ctx_com_{algorithm}_max+min_unidirection_500M_{sub}.tck \
    -act 5TT2b0_{sub}.mif -crop_at_gmwmi -maxlength 250 -algorithm {algorithm} -seeds 50M -seed_unidirectional \
    -seed_image {output_dir}/vos_ctx_com_130316_FA_max_top5.nii.gz -seed_image {output_dir}/vos_ctx_com_130316_FA_min_top5.nii.gz') 

os.system(f'tckgen {data_dir}/dhollander_FOD_wm_norm_{sub}.mif {output_dir}/ctx_com_{algorithm}_max+min_bidirection_500M_{sub}.tck \
    -act 5TT2b0_{sub}.mif -crop_at_gmwmi -maxlength 250 -algorithm {algorithm} -seeds 50M \
    -seed_image {output_dir}/vos_ctx_com_130316_FA_max_top5.nii.gz -seed_image {output_dir}/vos_ctx_com_130316_FA_min_top5.nii.gz')


The other results look similar.

Can you tell me what I did wrong and what I should do to do the work I wanted?
Any response will help me!

Joseph

1 Like

Hi Joseph,

I have done similar work as you do, I first generated the whole brain tractography and used tckedit to select the streamlines through ROIs.
Maybe you can try this approach to locate the problem. :grinning:

Best,
Volcano

1 Like

Hi, Volcano!
Thanks for your response.

In fact, I tried the method you told me, but my PI asked whether streamlines departing from specific seeds can be obtained immediately without additional work. So I did the commands above. :sweat_smile:

Best,
Joseph

Hi Joseph,

I think I got the point. You should use -include instead of -seed_image to assign the ROI.
For more details, I think the docs can help a lot.

Best,
Volcano

1 Like

Hi Volcano,

I changed the following commands based on your recommendation.

os.system(f'tckgen {data_dir}/dhollander_FOD_wm_norm_{sub}.mif {output_dir}/ctx_com_{algorithm}_max_unidirection_include_1M_{sub}.tck \
    -act 5TT2b0_{sub}.mif -crop_at_gmwmi -maxlength 250 -algorithm {algorithm} -select 1M -seed_unidirectional \
    -seed_dynamic {data_dir}/dhollander_FOD_wm_norm_{sub}.mif -include {output_dir}/vos_ctx_com_130316_FA_max_top5.nii.gz') 

Then, as shown in the picture below, the number of seeds per select increased a lot. :smiling_face_with_tear:
image

Because the ROI I used is a combination of 5 separate ROIs, I think it’s hard to find streamlines that connect all 5 ROIs.

Anyway, thank you for replying again! :grinning:

Best,
Joseph