-
Notifications
You must be signed in to change notification settings - Fork 191
Description
Hi there,
I am new to study MRtrix. I ran tckgen using a single-voxel seed image
tckgen -algorithm iFOD2 -mask MaskImage.nii.gz -seed_image OneVoxelSeedImage.nii.gz -nthread 16 -step 0.5 -minlength 30 -maxlength 2000 -cutoff 0.1 -select 100 -stop FODImage0T.nii.gz -force FODmOutT.tck -downsample 1 -output_seeds seesInd.txt
tckconvert FODmOutT.tck -force FODmOutiFOD2T_forDebug.vtk
tckstats FODmOutT.tck -dump lengths.txt -forceThen I used VTK to read all streamlines from FODmOutiFOD2T_forDebug.vtk, found out the longest one, and dumped all points inside. I then found that the step size between each successive point ( I keep -sample 4 as default) became around 0.66, not 0.5 (spacings of my image is 1mm along all axes). Looking at MRtrix's code, void SharedBase::set_step_and_angle() and float vox () const, the step size should be 0.5mm. I cannot find out where MRtrix changed the value internally as I have examined all init(), next(), and other functions in exec.h and iFOD2.h etc. Could you please explain what MRtrix does internally, and show me the location of the code? Many thanks.
The second issue is that from MRtrix's code, it seems that is pre-computed a set of calibrate list of directions that are independent of FOD images. Given all parameters being default and lmax=2, I found that it always produces 7 directions. Is it correct?
Best Wishes,
Yours faithfully,
Theron