Print

Print


Dear Hongbo,

    My fMRI experiment has 3 conditions: in two of them different visual patterns were presented to the participants and explicit categorization was required; in the 3rd, control, condition, only a fixation cross was presented and no task was required. According to my knowledge, I expected to see stronger activation of V1 in the two experimental conditions as compared with the control condition. However, after I compute GLM model using canonical HRF as basis function, I find the opposite result: V1 was highly activated by the control condition while remaining "silent" in the two experimental conditions.
    Then I extract the raw data from V1 of all participants and made an event-related average. I found a decrease of signal (peaking around the 4th second after event onset) in the control condition as compared with the experimental conditions. Then, from the 14th second after onset, the signal of the control condition exhibited a sharp incease while that of the experimental conditions exhibited a sharp decrease.
    Consequently, I used another set of basis functions in GLM model computation. This time I tried two gamma functions. The results thus yielded was quite different from that using HRF: V1 was more activated by the experiemental conditions as compared with the control condition.
     So what is the difference between HRF and two-gamma functions? If their shapes are similar (HRF is constructed by the linear combination of two gamma functions, if I understand it correctly), the mathematical procedure to fit them with the real signal must be different. I guess the shape of the 2-gamma functions is more flexible in that the parameters describing how the two gamma functions combined (peak value, relative distance, etc.) can be modulated during the computation process to best fit the signal.

Yes, that is exactly right. If you used the canonical HRF (without derivatives) you are fixing the
shape of the estimated HRF and you only need to optimize one parameter for each condition.
If you use a basis set with two gamma functions, then you have a more flexible model (that
requires two parameters per condition).

I should say that it is unusual to have a hemodynamic response that peaks after 14 seconds.
This suggests that your design may not be efficient to detect all the differences among the three
conditions. If you have not done so already, I would suggest just modeling the two active conditions
(and not the control condition). This will give a simpler model and more efficient estimates of the
differences (activations).

 Finally, if I want to use 2-gamma functions as basis functions, what are the scripts to specify the timewindow length and order?

All the computations are preformed by the script below.


I hope this helps - Karl



function [xBF] = spm_get_bf(xBF)
% fills in basis function structure
% FORMAT [xBF] = spm_get_bf(xBF);
%
% xBF.dt      - time bin length {seconds}
% xBF.name    - description of basis functions specified
% xBF.length  - window length (seconds)
% xBF.order   - order
% xBF.bf      - Matrix of basis functions
%
% xBF.name  'hrf'
%       'hrf (with time derivative)'
%       'hrf (with time and dispersion derivatives)'
%       'Fourier set'
%       'Fourier set (Hanning)'
%       'Gamma functions'
%       'Finite Impulse Response'};
%
% (any other specification will default to hrf)
%__________________________________________________________________________
%
% spm_get_bf prompts for basis functions to model event or epoch-related
% responses.  The basis functions returned are unitary and orthonormal
% when defined as a function of peri-stimulus time in time-bins.
% It is at this point that the distinction between event and epoch-related
% responses enters.
%__________________________________________________________________________
% Copyright (C) 2008 Wellcome Trust Centre for Neuroimaging