Hi Ming Hsu,
You could certainly log-transform your images, using e.g. spm_imcalc,
but I don't think you can use OLS for a log model.
The problem is that the full model is y=x^beta + e, with the error
term, and some assumptions about its distribution (usually assumed iid
Gaussian). If you log-transform the images, then you could fit a model
log(y) = beta*log(x) + e (with e ~ iid Gaussian again), but this
wouldn't correspond to the original model.
It's possible you want the second model, I'm not sure, but if you do
need the first, then I think this requires a *Generalized* Linear
Model, rather than a *General* LM, and I don't think you can do this
with SPM (or any other neuroimaging software that I'm aware of).
If you have a small number of smallish images then it might be
practical to implement a voxel-wise Generalized LM, though I expect it
would be very slow to run. See e.g.
http://www.sci.usq.edu.au/staff/dunn/glmlab/glmlab.html
You could use spm_get_data to read bunches of voxels and then use
glmlab to fit a log-linear model at each voxel.
Hope this helps,
Ged.
Ming Hsu wrote:
> I have a perhaps naïve question about estimating log linear models in SPM.
> For example, if I have a model y = x^beta, I could estimate using OLS log(y)
> = beta*log(x).
>
> Is there anyway to do this in SPM? AFAIK, there is no way to transform the
> MR signal in SPM. Is there something about the hemodynamic response that
> prevents us from doing so?
>
> Thanks,
> Ming Hsu
>
|