The best understanding of what’s going on here comes on knowing what the code is actually doing:
- Draw a seed that is inside the seed ROI.
- Generate a track of sufficient length.
- Does the track traverse all of the mask images provided via
Now consider the case where a seed point is drawn in the red area top-left, does a 180-degree turn, and traverses the green area top-left. This satisfies all three steps.
This misconception has popped up more than once I think, though I can’t find an example thread easily to link to… When you provide to MRtrix3 a ROI image that contains two distinct blobs, MRtrix3 simply does not care that there are two distinct blobs; all it tests for here is that the seed point is within a red voxel, and the streamline traverses at least one green voxel along its length. The green
-include ROI is therefore effectively performing an “or” operation: a streamline only needs to traverse one of the two green blobs in order to satisfy all criteria.
Reconstruction of a pathway like this would more typically be performed as follows:
- Generate track file 1 using the top-left green region as the seed region and the bottom-right green region as the
- Generate track file 2 using the bottom-right green region as the seed region and the top-left green region as the
- Concatenate the two results.