Hi,
On 26 Sep 2007, at 16:19, Clare Kelly wrote:
> When entering the motion covariates manually, should they be
> orthogonalised with respect to each other, or are they already
> orthogonal? I orthogonalise all other regressors in the model with
> respect to the motion regressors.
There is no need to do either:
- it makes no difference to inference on the main regressors if
you orthogonalise the confound regressors (here the motion regresors)
wrt each other
- we do not recommend orth. the motion regressor wrt the main
regressors, as the generally sensible and safe approach is that any
naturally shared covariance between the two kinds of regressors
should be left in
> Also, using ICA I have identified some motion-related artifacts and
> would like to include the time courses for these in my model.
> Presumably I should orthogonalise all other regressors, except the
> motion regressors, with respect to these artifact regressors. But
> should I leave these artifact regressors unorthogonalised with
> respect to anything else, or should I orthogonalise with respect to
> the motion regressors?
Again - you can just leave these as they are (though you should make
sure they have zero mean - they probably do already).
The reason for the above is that: say you have EV1 which is what you
care about and EV2 which is a confound covariate. It is only the part
of EV1 which is orthogonal to EV2 which gets used in the inference on
EV1 - the shared variance is not used - this happens naturally from
the GLM maths. Hence there is no need to orth EV1 wrt EV2.
Though - you could just do MELODIC denoising before running FEAT,
instead.
> To complicate matters more, I have a "global signal" regressor
> (mean voxel timecourse averaged across all voxels in the brain) in
> the mix - should this be treated like the other (e.g., task-
> related) regressors and orthogonalized with respect to the motion
> and artifact regressors or not? And should the motion or artifact
> regressors be orthogonalised with respect to this global signal?
Again - you can just include this as is (after demeaning it) - OR you
could just turn on intensity normalisation which has almost exactly
the same effect as including the global mean timecourse.
Cheers.
>
> Sorry for all the questions! I really appreciate any advice you
> have to offer!
>
> Clare Kelly
>
>
> On 9/26/07, Joseph T. Devlin < [log in to unmask]> wrote:
> For what it's worth, I wrote some shell scripts that do this and
> generate TCL code to add to a *.fsf file. It's from version 3.3 of
> FSL so it's probably basically what you want. Hope it helps.
>
> Joe
>
> ------------------------
> Joseph T. Devlin, Ph. D.
> Dept. of Psychology
> UCL
> Gower Street
> London, WC1E 6BT, UK
> email: [log in to unmask]
>
>
>
>
>
> 1. First run the following script to do the motion preproc:
>
> #!/usr/bin/ksh
>
> #
> # This script computes the motion params and extracts the relevant
> info
> # to include as regressors of no interest. It also provides a summary
> # of motion parameters per run.
> #
>
> #
> # The full path name for the original directories
> #
> ORIG=~/local/patricia
>
> #
> # The list of subject directories
> #
> DIRS="12099 12127 12149 12150 12238 12268 12269 12270 12272"
>
> #
> # Runs. Here I had three EPI runs at first level called
> sem.nii.gz, phon.nii.gz, main.nii.gz
> #
> RUNS="sem phon main"
>
> #---------------------------------------------------------------------
> # Do not edit below this point
> #---------------------------------------------------------------------
>
> rm -f motion.report 2>/dev/null
> for D in $DIRS; do
>
> print "Subject: $D" | tee -a motion.report
> for R in $RUNS; do
>
> if [[ -a $ORIG/$D/$R.nii.gz ]] ; then
>
> #
> # Motion correcting, assuming 4 dummy volumes
> #
> LEN=$(( $(avwnvols $ORIG/$D/$R) - 4))
> avwroi $ORIG/$D/$R tmp 4 $LEN
> mcflirt -in tmp -o mctmp -plots
>
> #
> # Extracting summary info + EVs
> #
> if [[ -a mctmp.par ]]; then
> print -n $R " "
> awk -f ~/scripts/max_params.awk mctmp.par | tee -a
> motion.report
> awk '{print $4}' mctmp.par > $ORIG/$D/model/trans_x.$R
> awk '{print $5}' mctmp.par > $ORIG/$D/model/trans_y.$R
> awk '{print $6}' mctmp.par > $ORIG/$D/model/trans_z.$R
> awk '{print $1}' mctmp.par > $ORIG/$D/model/rot_x.$R
> awk '{print $2}' mctmp.par > $ORIG/$D/model/rot_y.$R
> awk '{print $3}' mctmp.par > $ORIG/$D/model/rot_z.$R
> fi
> fi
>
> #
> # Clean up files
> #
> rm -f mctmp.par tmp.nii.gz 2>/dev/null
>
> done
> print "" | tee -a motion.report
> done
>
> 2. This is the max_params.awk script
> BEGIN { pi=3.14159;
> mintx=0; minty=0; mintz=0; minrx=0; minry=0; minrz=0;
> maxtx=0; maxty=0; maxtz=0; maxrx=0; maxry=0; maxrz=0 }
> {
> if ($4 > maxtx)
> maxtx = $4;
> if ($4 < mintx)
> mintx = $4;
> if ($5 > maxty)
> maxty = $5;
> if ($5 < minty)
> minty = $5;
> if ($6 > maxtz)
> maxtz = $6;
> if ($6 < mintz)
> mintz = $6;
>
> if ($1 > maxrx)
> maxrx = $1;
> if ($1 < minrx)
> minrx = $1;
> if ($2 > maxry)
> maxry = $2;
> if ($2 < minry)
> minry = $2;
> if ($3 > maxrz)
> maxrz = $3;
> if ($3 < minrz)
> minrz = $3;
>
> }
>
> END {
> printf(" %0.2f %0.2f %0.2f %0.2f %0.2f %0.2f\n",
> maxtx-mintx, maxty-minty, maxtz-mintz,
> (maxrx-minrx)*180/pi, (maxry-minry)*180/pi, (maxrz-
> minrz)*180/pi);
> }
>
> 3. Finally, this snippet of shell script will add the motion params
> to your model without HRF convolutions or temporal derivatives.
> IDX should be the number of of the EV you want the covariates to
> start at.
> # Put in motion params as covariates of no interest
> COVS="trans_x trans_y trans_z rot_x rot_y rot_z"
> for C in $COVS; do
> print "# Basic waveform shape (EV "$IDX")" >> model.fsf
> print "set fmri(shape"$IDX") 2" >> model.fsf
> print "set fmri(convolve"$IDX") 0" >> model.fsf
> print "set fmri(convolve_phase"$IDX") 0" >> model.fsf
> print "set fmri(tempfilt_yn"$IDX") 1" >> model.fsf
> print "set fmri(deriv_yn"$IDX") 0" >> model.fsf
> print "set fmri(custom"$IDX")" "\""$HOME/$D/model/$C.$S"\""
> >> model.fsf
> print "set fmri(ortho"$IDX".0) 0" >> model.fsf
> ((IDX=$IDX+1))
> done
>
>
------------------------------------------------------------------------
---
Stephen M. Smith, Professor of Biomedical Engineering
Associate Director, Oxford University FMRIB Centre
FMRIB, JR Hospital, Headington, Oxford OX3 9DU, UK
+44 (0) 1865 222726 (fax 222717)
[log in to unmask] http://www.fmrib.ox.ac.uk/~steve
------------------------------------------------------------------------
---
|