Conversation
For first-order algorithms for which 4th-order Runge-Kutta is available, make the default step size 1/4 of a voxel, rather than 1/10th.
Resolve divergence between #1630 and #1507. Use a single function Tractography::Shared::set_step_and_angle() that is responsible for setting up both the step size and maximum deviation angle per step. Remove calculation of maximum angle based on radius of curvature, in favour of a fixed angle for each algorithm. Use separate member variables for maximum angles and related quantities between first-order and higher-order integration as was introduced in #1507. Conflicts: src/dwi/tractography/algorithms/fact.h src/dwi/tractography/algorithms/iFOD1.h src/dwi/tractography/algorithms/iFOD2.h src/dwi/tractography/algorithms/nulldist.h src/dwi/tractography/algorithms/sd_stream.h src/dwi/tractography/algorithms/seedtest.h src/dwi/tractography/algorithms/tensor_det.h src/dwi/tractography/tracking/shared.cpp src/dwi/tractography/tracking/shared.h src/dwi/tractography/tracking/tractography.cpp
Missed unused variable in the process of generating merge commit bc68b7d.
…tracking_parameters Items that required manual resolution: - For iFOD1 in conjunction with RK4, permit the standard 15 degrees sampling cone for each internal RK4 sampling step; don't enforce angle thresholds at all for the complete RK4 step. Conflicts: src/dwi/tractography/algorithms/iFOD1.h src/dwi/tractography/algorithms/nulldist.h src/dwi/tractography/algorithms/sd_stream.h src/dwi/tractography/algorithms/tensor_det.h
|
Initial image dump; only a coarse parameter set right now, can generate more fine-grained results as we hone in on targets for particular algorithms. Note that Without ACTFACTiFOD1iFOD2SD_STREAMWith ACT (no back-tracking)FACTiFOD1iFOD2SD_STREAM |
|
|
Similar for targeted tracking. Without ACTFACTiFOD1iFOD2SD_STREAMWith ACT (no back-tracking)FACTiFOD1iFOD2SD_STREAM |
- Change all tracking default parameters from macros to constexprs. - Fix description of default angle for nulldist1. - Clarification of -trials option.
New data to reflect change to default angular threshold in #1833. Note that code at this commit does reproduce the old reference data if the former default angular threshold is specified explicitly at the command-line.
|
😱 Thanks! |
















This will become a central PR for multiple proposed changes to tracking parameters, due to the potential for interplay between them.
PR is to encapsulate:
tckgen: change default angles #1630: Changing default angles, which the original issue / PR began as altering only deterministic algorithms but is now proposing to make all tracking algorithms operate using fixed angle thresholds independently of step size (closes tckgen: use more appropriate angle for SD_STREAM algorithm #930);
tckgen: Change default step size for RK4 #1747: Changing default step size when utilising 4th-order Runge-Kutta to be 1/4 voxel size.
Re-addressing appropriate cutoffs for various algorithms. This will be a repeat of aspects of Fix SH precomputer and update associated thresholds so existing practices and pipelines don't break. #1228, but specifically to address the combination of:
Changes to default WM response function estimation in Update dwi2response dhollander #1545;
Fix to the SH precomputer in Fix sh precomputer again #1715 due to the erroneous fix in fix SH precomputer #1206.
Once I've written a script to generate output data for a range of prospective cutoffs for all possible algorithms & configurations, it'll go here for discussion.
Other points that we may want to consider in this context given we're performing "an overhaul of default tracking parameters":
Add some downsampling by default for first-order algorithms without RK4 to decrease file size.
Change iFOD2 power from (1/nsamples) to (1/(nsamples-1)). There may be a more appropriate derivation for such, but for the current derivation the arithmetic is nevertheless incorrect.