bvec signs for GE DTI with Coronol + ROW (#970)#971
Merged
neurolabusc merged 1 commit intorordenlab:developmentfrom Sep 2, 2025
Merged
bvec signs for GE DTI with Coronol + ROW (#970)#971neurolabusc merged 1 commit intorordenlab:developmentfrom
neurolabusc merged 1 commit intorordenlab:developmentfrom
Conversation
Collaborator
|
Thanks! |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
dcm2niix(v1.0.20250626) produces incorrect bvec signs for GE DTI acquired with Coronal + ROW phase-encoding (with warnings). Other plane/phase combinations appear correct (Axial/Sagittal with COL/ROW and Coronal with COL).Root cause: For Coronal + ROW, performing the ROW swap/negate before the plane-flip yields an incorrect combination of sign flips.
Proposed fix: Apply the plane‑dependent flip first, then apply the ROW remap, and negate the first element after the swap. This preserves existing, validated behavior for all other cases while correcting Coronal+ROW.
Impact: Affects GE DTI with Coronal+ROW only
Order Change:
Implementation (GE → FSL bvec)
While dcm2niix GE → FSL bvec code is somewhat complicated (derived from xiangruili's dicm2nii) with some differences:
Current sequence:
- swap X ↔ Y, then negate Y
Proposed sequence:
- swap X ↔ Y, then negate X
See #970 for Validation Results and Investigation Details