This is getting quite deep into the guts of exactly how the streamlines algorithms operate…
For the iFOD2 algorithm specifically, the threshold is applied at this point. The algorithm draws a series of “candidate paths”, which are arcs through space constrained by the step size and the maximum turning angle. For the number of samples specified for the algorithm (4 by default), the FOD field is interpolated at a spatial position along the arc, and the amplitude of the FOD in the direction specified by the tangent of the arc at that location in space is measured. If that amplitude is less than the specified threshold for any of the samples along that arc, then that candidate path is given a “probability” of zero, i.e. it’s not a valid candidate path.
So essentially, In the case of iFOD1 & iFOD2, the FOD amplitude in the direction of the tangent of the streamline must be above this threshold. That threshold is not applied to the maximum amplitude of the FOD, since that would require determination of the direction of the FOD peak, and such is never actually performed within iFOD1 / iFOD2. Conversely, the
SD_STREAM algorithm, which explicitly determines the orientation of the local FOD peak and traverses in that direction, there the equivalent cutoff would in fact apply to the amplitude of the peak being traversed.
I hope that makes sense. If not, @jdtournier will need to write a paper explaining how iFOD2 works…