diff --git a/nipype/interfaces/fsl/preprocess.py b/nipype/interfaces/fsl/preprocess.py index c6c03ac06a..5c9de2341e 100644 --- a/nipype/interfaces/fsl/preprocess.py +++ b/nipype/interfaces/fsl/preprocess.py @@ -407,13 +407,13 @@ class FLIRTInputSpec(FSLCommandInputSpec): argstr='-datatype %s', desc='force output data type') cost = traits.Enum('mutualinfo', 'corratio', 'normcorr', 'normmi', - 'leastsq', 'labeldiff', + 'leastsq', 'labeldiff','bbr', argstr='-cost %s', desc='cost function') # XXX What is the difference between 'cost' and 'searchcost'? Are # these both necessary or do they map to the same variable. cost_func = traits.Enum('mutualinfo', 'corratio', 'normcorr', 'normmi', - 'leastsq', 'labeldiff', + 'leastsq', 'labeldiff','bbr', argstr='-searchcost %s', desc='cost function') uses_qform = traits.Bool(argstr='-usesqform', @@ -475,6 +475,37 @@ class FLIRTInputSpec(FSLCommandInputSpec): verbose = traits.Int(argstr='-verbose %d', desc='verbose mode, 0 is least') + # BBR options + wm_seg = File( + argstr='-wmseg %s', min_ver='5.0.0', + desc='white matter segmentation volume needed by BBR cost function') + wmcoords = File( + argstr='-wmcoords %s', min_ver='5.0.0', + desc='white matter boundary coordinates for BBR cost function') + wmnorms = File( + argstr='-wmnorms %s', min_ver='5.0.0', + desc='white matter boundary normals for BBR cost function') + fieldmap = File( + argstr='-fieldmap %s', min_ver='5.0.0', + desc='fieldmap image in rads/s - must be already registered to the reference image') + fieldmapmask = File( + argstr='-fieldmapmask %s', min_ver='5.0.0', + desc='mask for fieldmap image') + pedir = traits.Int( + argstr='-pedir %d', min_ver='5.0.0', + desc='phase encode direction of EPI - 1/2/3=x/y/z & -1/-2/-3=-x/-y/-z') + echospacing = traits.Float( + argstr='-echospacing %f', min_ver='5.0.0', + desc='value of EPI echo spacing - units of seconds') + bbrtype = traits.Enum( + 'signed', 'global_abs', 'local_abs', + argstr='-bbrtype %s', min_ver='5.0.0', + desc='type of bbr cost function: signed [default], global_abs, local_abs') + bbrslope = traits.Float( + argstr='-bbrslope %f', min_ver='5.0.0', + desc='value of bbr slope') + + class FLIRTOutputSpec(TraitedSpec): out_file = File(exists=True,