@@ -174,6 +174,98 @@ class MaxImage(MathsCommand):
174
174
_suffix = "_max"
175
175
176
176
177
+ class PercentileImageInput (MathsInput ):
178
+
179
+ dimension = traits .Enum ("T" , "X" , "Y" , "Z" , usedefault = True ,
180
+ argstr = "-%sperc" , position = 4 ,
181
+ desc = "dimension to percentile across" )
182
+ perc = traits .Range (low = 0 , high = 100 , usedefault = False ,
183
+ argstr = "%f" , position = 5 ,
184
+ desc = ("nth percentile (0-100) of FULL RANGE "
185
+ "across dimension" ))
186
+
187
+
188
+ class PercentileImage (MathsCommand ):
189
+ """Use fslmaths to generate a percentile image across a given dimension.
190
+
191
+ Examples
192
+ --------
193
+ >>> from nipype.interfaces.fsl.maths import MaxImage
194
+ >>> percer = PercentileImage()
195
+ >>> percer.inputs.in_file = "functional.nii" # doctest: +SKIP
196
+ >>> percer.dimension = "T"
197
+ >>> percer.perc = 90
198
+ >>> percer.cmdline # doctest: +SKIP
199
+ 'fslmaths functional.nii -Tperc 90 functional_perc.nii'
200
+
201
+ """
202
+ input_spec = PercentileImageInput
203
+ _suffix = "_perc"
204
+
205
+
206
+ class MaxnImageInput (MathsInput ):
207
+
208
+ dimension = traits .Enum ("T" , "X" , "Y" , "Z" , usedefault = True ,
209
+ argstr = "-%smaxn" , position = 4 ,
210
+ desc = "dimension to index max across" )
211
+
212
+
213
+ class MaxnImage (MathsCommand ):
214
+ """Use fslmaths to generate an image of index of max across
215
+ a given dimension.
216
+
217
+ """
218
+ input_spec = MaxnImageInput
219
+ _suffix = "_maxn"
220
+
221
+
222
+ class MinImageInput (MathsInput ):
223
+
224
+ dimension = traits .Enum ("T" , "X" , "Y" , "Z" , usedefault = True ,
225
+ argstr = "-%smin" , position = 4 ,
226
+ desc = "dimension to min across" )
227
+
228
+
229
+ class MinImage (MathsCommand ):
230
+ """Use fslmaths to generate a minimum image across a given dimension.
231
+
232
+ """
233
+ input_spec = MinImageInput
234
+ _suffix = "_min"
235
+
236
+
237
+ class MedianImageInput (MathsInput ):
238
+
239
+ dimension = traits .Enum ("T" , "X" , "Y" , "Z" , usedefault = True ,
240
+ argstr = "-%smedian" , position = 4 ,
241
+ desc = "dimension to median across" )
242
+
243
+
244
+ class MedianImage (MathsCommand ):
245
+ """Use fslmaths to generate a median image across a given dimension.
246
+
247
+ """
248
+ input_spec = MedianImageInput
249
+ _suffix = "_median"
250
+
251
+
252
+ class AR1ImageInput (MathsInput ):
253
+
254
+ dimension = traits .Enum ("T" , "X" , "Y" , "Z" , usedefault = True ,
255
+ argstr = "-%sar1" , position = 4 ,
256
+ desc = ("dimension to find AR(1) coefficient"
257
+ "across" ))
258
+
259
+
260
+ class AR1Image (MathsCommand ):
261
+ """Use fslmaths to generate an AR1 coefficient image across a
262
+ given dimension. (Should use -odt float and probably demean first)
263
+
264
+ """
265
+ input_spec = AR1ImageInput
266
+ _suffix = "_ar1"
267
+
268
+
177
269
class IsotropicSmoothInput (MathsInput ):
178
270
179
271
fwhm = traits .Float (mandatory = True , xor = ["sigma" ],
0 commit comments