Skip to content

Commit 171f71f

Browse files
committed
ENH: Specify motion parameter source in modelgen
1 parent 0366859 commit 171f71f

File tree

4 files changed

+12
-1
lines changed

4 files changed

+12
-1
lines changed

nipype/algorithms/modelgen.py

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -187,6 +187,8 @@ class SpecifyModelInputSpec(BaseInterfaceInputSpec):
187187
realignment_parameters = InputMultiPath(File(exists=True),
188188
desc="Realignment parameters returned by motion correction algorithm",
189189
copyfile=False)
190+
parameter_source = traits.Enum("SPM", "FSL", "AFNI", "NiPy", "FSFAST",
191+
desc="Source of motion parameters")
190192
outlier_files = InputMultiPath(File(exists=True),
191193
desc="Files containing scan outlier indices that should be tossed",
192194
copyfile=False)
@@ -375,10 +377,16 @@ def _generate_standard_design(self, infolist,
375377
def _generate_design(self, infolist=None):
376378
"""Generate design specification for a typical fmri paradigm
377379
"""
380+
par_selection = slice(6)
381+
if isdefined(self.inputs.parameter_source):
382+
source = self.inputs.parameter_source
383+
if source == 'FSFAST':
384+
par_selection = slice(1, 7)
378385
realignment_parameters = []
379386
if isdefined(self.inputs.realignment_parameters):
380387
for parfile in self.inputs.realignment_parameters:
381-
realignment_parameters.append(np.loadtxt(parfile))
388+
realignment_parameters.append(
389+
np.loadtxt(parfile)[:, par_selection])
382390
outliers = []
383391
if isdefined(self.inputs.outlier_files):
384392
for filename in self.inputs.outlier_files:

nipype/algorithms/tests/test_auto_SpecifyModel.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ def test_SpecifyModel_inputs():
1919
),
2020
outlier_files=dict(copyfile=False,
2121
),
22+
parameter_source=dict(),
2223
realignment_parameters=dict(copyfile=False,
2324
),
2425
subject_info=dict(mandatory=True,

nipype/algorithms/tests/test_auto_SpecifySPMModel.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@ def test_SpecifySPMModel_inputs():
2323
),
2424
output_units=dict(usedefault=True,
2525
),
26+
parameter_source=dict(),
2627
realignment_parameters=dict(copyfile=False,
2728
),
2829
subject_info=dict(mandatory=True,

nipype/algorithms/tests/test_auto_SpecifySparseModel.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ def test_SpecifySparseModel_inputs():
2020
model_hrf=dict(),
2121
outlier_files=dict(copyfile=False,
2222
),
23+
parameter_source=dict(),
2324
realignment_parameters=dict(copyfile=False,
2425
),
2526
save_plot=dict(),

0 commit comments

Comments
 (0)