MRtrix3 / mrtrix3

MRtrix3 provides a set of tools to perform various advanced diffusion MRI analyses, including constrained spherical deconvolution (CSD), probabilistic tractography, track-density imaging, and apparent fibre density
http://www.mrtrix.org
Mozilla Public License 2.0
294 stars 181 forks source link

Tolerance for dw_scheme differences on header merge #3027

Open Lestropie opened 1 month ago

Lestropie commented 1 month ago

Closes #3015.

As part of this change, I decided that the "b=0 threshold" is more appropriate in dwi/gradient.h rather than dwi/shells.h, since it may be applied to individual volumes rather than shells. Here it's used to say "if two images both have a b=0 volume here, then their diffusion gradient tables are compatible; I don't care if their unit directions are different".

Also fixed some transitive includes in the process.

The new tests should hopefully demonstrate the fix:

(They also neatly demonstrate why having just a list of tests per command is restrictive; with ctest I'll be able to name these tests according to what they are actually evaluating, which isn't specific to any one command)