Major changes in the tracking algorithm?

85 views
Skip to first unread message

Patryk Filipiak

unread,
Jan 25, 2023, 12:09:45 PM1/25/23
to DSI Studio
Dear Frank,

I've been using DSI Studio for a few years. I try not to update it in the middle of the project to ensure consistency of results. My version of software had been compiled on Jun 8, 2021 until I updated it this week to version Chen (Jan 23, 2023). 

I'm impressed by the number of new features and improvements. In particular, the tractography is running much faster. However, the streamlines computed for the same image look very different now. 

For example, the mouse optic pathway that I generated with the older version:
Screenshot from 2023-01-25 11-55-49.png

Looks now like a single streamline:
Screenshot from 2023-01-25 11-56-06.png
The number of generated tracts, though, is 2527. I exported them to the text file and found out that these are 2527 copies of the exact same streamline (all coordinates are the same).

I also double checked that my tracking parameters were identical in both versions (including the parameter_id):

OLD VERSION
NEW VERSION

A deterministic fiber tracking algorithm (Yeh et al., PLoS ONE 8(11): e80713, 2013) was used.
A deterministic fiber tracking algorithm (Yeh et al., PLoS ONE 8(11): e80713, 2013) was used.

An ROI was placed at rl (1.1e+02,70,96) with a volume size of 0.67 mm cubic.
An ROI was placed at rl (1.1e+02,70,96) .

A seeding region was placed at chiasm.
A seeding region was placed at chiasm (86,99,83) .

An ROI was placed at lgn_l (1.1e+02,1.3e+02,1.1e+02) with a volume size of 0.67 mm cubic.
An ROI was placed at lgn_l (1.1e+02,1.3e+02,1.1e+02) .

An ROA was placed at roa (86,1.1e+02,1.1e+02) with a volume size of 31 mm cubic.
An ROA was placed at roa (86,1.1e+02,1.1e+02) .

The anisotropy threshold was 0.01.
The anisotropy threshold was 0.01.

The angular threshold was 60 degrees.
The angular threshold was 60 degrees.

The step size was 0.05 mm.
The step size was 0.05 mm.

The fiber trajectories were smoothed by averaging the propagation direction with 20% of the previous direction.
The fiber trajectories were smoothed by averaging the propagation direction with 20% of the previous direction.

Tracks with length shorter than 1 or longer than 15 mm were discarded.
Tracks with length shorter than 1 or longer than 15 mm were discarded.

A total of 10000000 seeds were placed.
A total of 10000000 seeds were placed.

parameter_id=0AD7233C9A99193Fba3FCDCC4C3DCDCC4C3Eb803Fb7041809698dcaCDCC4C3Ec
parameter_id=0AD7233C9A99193Fba3FCDCC4C3DCDCC4C3Eb803Fb7041809698dcaCDCC4C3Ec 

Could you please tell me where these changes in streamlines come from? Is it possible to obtain similar results (to the ones I had before) on the new version of DSI Studio?

Best,
Patryk

Fang-Cheng Yeh

unread,
Jan 25, 2023, 7:44:06 PM1/25/23
to dsi-s...@googlegroups.com
Sorry for the issue and thanks for the detailed report to help identify the problem.

Did you use command line to generate the tract? If yes, could you post the command you used?

Could you also upload the FIB file and ROI files for me to test?

I will do my best to fix the issue.

Best
Frank

--
You received this message because you are subscribed to the Google Groups "DSI Studio" group.
To unsubscribe from this group and stop receiving emails from it, send an email to dsi-studio+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/dsi-studio/462cfebb-ab9a-4a4d-8694-bf34819cc936n%40googlegroups.com.

Patryk Filipiak

unread,
Jan 27, 2023, 5:55:14 PM1/27/23
to DSI Studio
Hi Frank,

Thank you for your rapid response. 
The images I showed you earlier come from our yet unpublished study, but I managed to reproduce a similar behavior using DSI Studio only. 

Here are all the files that are necessary (i.e., the FIB file and the ROI/ROA files)

I tried it in GUI and CLI with the following parameters:

--action=trk --source=fib_bare120_gqi.fib.gz --method=0 --seed_count=10000000 --step_size=0.05 --threshold_index=nqa --fa_threshold=0.01 --turning_angle=60 --min_length=1 --max_length=15 --seed=rois/rl.nii.gz --roi=rois/chiasm.nii.gz --roi2=rois/lgn_l.nii.gz --roa=rois/roa.nii.gz

Old version output (25843 streamlines in a thicker bundle):
Screenshot from 2023-01-27 17-50-37.png

New version output (79525 streamlines in a thinner bundle):
Screenshot from 2023-01-27 17-49-29.png

Best,
Patryk

Fang-Cheng Yeh

unread,
Jan 27, 2023, 7:31:04 PM1/27/23
to dsi-s...@googlegroups.com
Thank you. I will review code and get back to you.
Frank

Fang-Cheng Yeh

unread,
Feb 16, 2023, 12:29:43 PM2/16/23
to dsi-s...@googlegroups.com
Hi Patryk,

    Thank you for your help. The bug was fixed.

     The cause is that DSI Studio used a voxel center at the starting location and failed to apply a subvoxel starting point for the seed regions. 

     Usually, this was not a problem if there is enough variability if larger seeding regions or whole brain seeding is used, or if the randomized parameter is applied to the step size (set it to zero). The variability is not enough if the seeding region is much smaller and the step size is set to a fixed value.

     I fixed this problem, and the new build is undergoing at https://github.com/frankyeh/DSI-Studio/actions/runs/4196575548

     Please see if the updated version works for you.

     Thank you for your help!

Best,
Frank

Patryk Filipiak

unread,
Feb 21, 2023, 5:47:45 PM2/21/23
to DSI Studio
Thank you so much, Frank!
I'll install the newest version and get back to you soon.
Best,
Patryk

Patryk Filipiak

unread,
Mar 10, 2023, 10:48:40 AM3/10/23
to DSI Studio
Hi again,
Sorry for my late reply. The updated version is great. Works fast and effective.
Thank you so much for this, Frank.
Best,
Patryk

Reply all
Reply to author
Forward
0 new messages