Conversation
Where the gradient direction vector is zero, but the b-value is non-zero, when FSL's "eddy" attempts to rotate the directions of b>0 volumes according to subject rotation, this results in corrupted gradient directions. This change prevents such data from reaching "eddy" within dwifslpreproc, by detecting volumes where the gradient vector is zero and the b-value is non-zero but is classified by MRtrix3 as non-zero based on BZeroThreshold and forcing the value within the bvals file to be zero. Relates to #2577.
|
@Lestropie generating a Singularity image for that branch to test today. |
|
That works. |
|
Scope of PR has been expanded from just "clamp b-values interpreted by MRtrix3 as b=0 to a value of 0 when exporting bvals" to "change bvecs&bvals import/export for more robust interplay with FSL", closing #2577 in the process. The new tests (here attributed to |
6e90b23 to
ecaacef
Compare
|
Ok, that one took a bit of fixing up for the merge. It might be wise to run this PR through your testing again, unless that's already all taken care of with a regular |
3998277 to
955e4ab
Compare
|
This seems to work as expected in my (limited) testing - happy to approve. But someone else will need to approve before we can merge... |
- #2968: Absent - #3049: Absent - #2767: Partially absent - # 3027: Almost all absent (the new tests were in place but that was all) - #3047: Absent - #3071: Absent - #3011: Fill in gaps of changes that were applied to #3011 prior to its derivation from #2917. - #2609: Fixed a couple of small omissions. - #2602: Bits and pieces missing.
Potential solution to #2577. Not a unique solution, but works for me, and the warning message is generated appropriately.
@araikes want to test?