ENH: Replace avscale with non-fsl tools #542
Merged
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.
Changes proposed in this pull request
Related to Issue 482 (#482) but does not complete all changes required to close issue.
Changes almost entirely restricted to one file (interfaces/gradients.py), and mostly to the get_fsl_motion_params() function within that file. Previously the FSL tool avscale was used to extract motion parameters (rotation, translation, shear, and scale/zoom) from the affine transform produced by ANTs. This was replaced by a series of custom functions, an affine decompose from the transforms3d package, and a rotation vector conversion from scipy.
Documentation that should be reviewed
No documentation changes necessary. No changes to usage, and the CombineMotions class interfaces that calls this motion extraction function can be treated exactly the same as it was prior to the change.