modalities.fmri.hemodynamic_models¶
Module: modalities.fmri.hemodynamic_models
¶
This module is for canonical hrf specification. Here we provide for SPM, Glover hrfs and finite timpulse response (FIR) models. This module closely follows SPM implementation
Author: Bertrand Thirion, 2011–2013
Functions¶
-
nipy.modalities.fmri.hemodynamic_models.
compute_regressor
(exp_condition, hrf_model, frametimes, con_id='cond', oversampling=16, fir_delays=None, min_onset=-24)[source]¶ This is the main function to convolve regressors with hrf model
- Parameters
exp_condition: descriptor of an experimental condition
hrf_model: string, the hrf model to be used. Can be chosen among:
‘spm’, ‘spm_time’, ‘spm_time_dispersion’, ‘canonical’, ‘canonical_derivative’, ‘fir’
frametimes: array of shape (n):the sought
con_id: string, optional identifier of the condition
oversampling: int, optional, oversampling factor to perform the convolution
fir_delays: array-like of int, onsets corresponding to the fir basis
min_onset: float, optional
minimal onset relative to frametimes[0] (in seconds) events that start before frametimes[0] + min_onset are not considered
- Returns
creg: array of shape(n_scans, n_reg): computed regressors sampled
at frametimes
reg_names: list of strings, corresponding regressor names
Notes
The different hemodynamic models can be understood as follows: ‘spm’: this is the hrf model used in spm ‘spm_time’: this is the spm model plus its time derivative (2 regressors) ‘spm_time_dispersion’: idem, plus dispersion derivative (3 regressors) ‘canonical’: this one corresponds to the Glover hrf ‘canonical_derivative’: the Glover hrf + time derivative (2 regressors) ‘fir’: finite impulse response basis, a set of delayed dirac models
with arbitrary length. This one currently assumes regularly spaced frametimes (i.e. fixed time of repetition).
It is expected that spm standard and Glover model would not yield large differences in most cases.
-
nipy.modalities.fmri.hemodynamic_models.
glover_hrf
(tr, oversampling=16, time_length=32.0, onset=0.0)[source]¶ Implementation of the Glover hrf model
- Parameters
tr: float, scan repeat time, in seconds
oversampling: int, temporal oversampling factor, optional
time_length: float, hrf kernel length, in seconds
onset: float, onset of the response
- Returns
hrf: array of shape(length / tr * oversampling, float),
hrf sampling on the oversampled time grid
-
nipy.modalities.fmri.hemodynamic_models.
glover_time_derivative
(tr, oversampling=16, time_length=32.0, onset=0.0)[source]¶ Implementation of the flover time derivative hrf (dhrf) model
- Parameters
tr: float, scan repeat time, in seconds
oversampling: int, temporal oversampling factor, optional
time_length: float, hrf kernel length, in seconds
onset: float, onset of the response
- Returns
dhrf: array of shape(length / tr, float),
dhrf sampling on the provided grid
-
nipy.modalities.fmri.hemodynamic_models.
spm_dispersion_derivative
(tr, oversampling=16, time_length=32.0, onset=0.0)[source]¶ Implementation of the SPM dispersion derivative hrf model
- Parameters
tr: float, scan repeat time, in seconds
oversampling: int, temporal oversampling factor, optional
time_length: float, hrf kernel length, in seconds
onset: float, onset of the response
- Returns
dhrf: array of shape(length / tr * oversampling, float),
dhrf sampling on the oversampled time grid
-
nipy.modalities.fmri.hemodynamic_models.
spm_hrf
(tr, oversampling=16, time_length=32.0, onset=0.0)[source]¶ Implementation of the SPM hrf model
- Parameters
tr: float, scan repeat time, in seconds
oversampling: int, temporal oversampling factor, optional
time_length: float, hrf kernel length, in seconds
onset: float, onset of the response
- Returns
hrf: array of shape(length / tr * oversampling, float),
hrf sampling on the oversampled time grid
-
nipy.modalities.fmri.hemodynamic_models.
spm_time_derivative
(tr, oversampling=16, time_length=32.0, onset=0.0)[source]¶ Implementation of the SPM time derivative hrf (dhrf) model
- Parameters
tr: float, scan repeat time, in seconds
oversampling: int, temporal oversampling factor, optional
time_length: float, hrf kernel length, in seconds
onset: float, onset of the response
- Returns
dhrf: array of shape(length / tr, float),
dhrf sampling on the provided grid