Differences between revisions 22 and 38 (spanning 16 versions)
Revision 22 as of 2007-08-15 17:34:09
Size: 4708
Editor: icebox
Comment:
Revision 38 as of 2011-03-30 16:10:27
Size: 4370
Comment:
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
[wiki:Self:FsTutorial top] | [wiki:Self:FsTutorial/FslFeatFreeSurfer previous]
== Overlaying FSL Feat statistical maps ==
[[FsTutorial|top]] | [[FsTutorial/FslFeatFreeSurfer|previous]]
== Overlaying FSL Feat statistical maps  ==
Line 4: Line 4:
 *To follow this exercise exactly be sure you've downloaded the [wiki:Self:FsTutorial/Data tutorial data set] before you begin. If you choose not to download the data set you can follow these instructions on your own data, but you will have to substitute your own specific paths and subject names.  *To follow this exercise exactly be sure you've downloaded the [[FsTutorial/Data|tutorial data set]] before you begin. If you choose not to download the data set you can follow these instructions on your own data, but you will have to substitute your own specific paths and subject names.
Line 6: Line 6:
In this exercise, the data set of subject '''bert''' is used for demonstration. To begin the exercises, first enter the following directory, and then set the current directory to be the default subjects directory using this command: In this exercise, the data set of subject '''bert''' is used for demonstration. Type the following prior to beginning the exercises:
----
Line 8: Line 9:
cd $FREESURFER_HOME/subjects/buckner_data/tutorial_subjs
setenv SUBJECTS_DIR ${PWD}
tcsh
setenv SUBJECTS_DIR $TUTORIAL_DATA/buckner_data/tutorial_subjs
cd $SUBJECTS_DIR/fbert-feat
ln -s $FREESURFER_HOME/subjects/fsaverage
ln -s $FREESURFER_HOME/subjects/bert
Line 11: Line 15:
----
The subjects 'fsaverage' and 'bert' may already exist in the subjects directory, so ignore any warnings that might be issued that say 'File exists'.
Line 14: Line 20:
Use the following command to display the zmap (zstat1.img) overlaid onto the bert's orig volume. It will display the automatic segmentation, and will also set the threshold at z = 2.3: Use the following command to display the zmap (zstat1.nii.gz) from the first run overlaid onto the bert's orig volume. It will display the automatic segmentation, and will also set the threshold at z = 2.3:
----
Line 21: Line 28:

You should see the image below:[[BR]]
attachment:tkm-zstat1-cor-128.th23.small.jpg
----
You should see the image below:<<BR>>
{{attachment:tkm-zstat1-cor-128.th23.small.jpg}} <<BR>>
Line 28: Line 35:
----
Line 34: Line 42:
----
Change the cortical parcellation to outline mode with View->LabelStyle->Outline. You should see the image below:<<BR>>
{{attachment:tks-zstat1-rh-lat.th23.small.jpg}}
<<BR>>
When you click or mouse over a vertex, the control panel will display the name of the cortical structure. You can view any of the volumes in the stats dir in this way as well as the clustered maps in the feat directory. You can also run the tkmedit and tksurfer commands above in separate shells and use the Save-Point/Goto-Point functionality to navigate through the volume and surface.
Line 35: Line 48:
You should see the image below:[[BR]]
attachment:tks-zstat1-rh-lat.th23.small.jpg
[[BR]]
To load the cortical parcellation, goto File->Label->Import Annotation, and enter lh.aparc.annot. The parcellation will be opaque. To show only the ouline (as above), View->LabelStyle->Outline.When you click or mouse over a vertex, the control panel will display the name of the cortical structure. You can view any of the volumes in the stats dir in this way as well as the clustered maps in the feat directory. You can also run the tkmedit and tksurfer commands above in separate shells and use the Save-Point/Goto-Point functionality to navigate through the volume and surface.
=== 3.0 Displaying Same-Subject, Cross-Run GFEAT Results ===
Line 40: Line 50:
=== 3.0 Resampling COPEs to common surface === Typically, one collects more than one run/series of functional data
for each subject. The individual runs are analyzed separately, then
combined in standard space with GFEAT using a fixed-effects
model. Since the data are no longer in the subject's native functional
space, a different registration matrix is needed to map the GFEAT
results to the individual. Each run of reg-feat2anat will create a
reg/freesurfer/anat2std.register.dat. Any one of these can be used to
map the GFEAT data to the subject's anatomy.
Line 42: Line 59:
When performing surface-based group analysis of functional data, the COPEs must be sampled to the common surface space (similar to how you must reslice the COPEs from the native functional space into standard space prior to group analysis). The surface sampling can be done in two ways. First, verify that the registration is good with:
----
{{{
tkregister2 --mov fbert.gfeat/mean_func.nii.gz --surf \
  --reg fbert1.feat/reg/freesurfer/anat2std.register.dat
}}}
----
mean_func.nii.gz is the mean of the example_func's in standard space. Since this is the mean func, it will be
blurry if you have spatially smoothed. Note: if there
is a problem with this registration, you need to repair the registrations
for each individual run.
Line 44: Line 71:
First, you can use feat2surf as in:
Now show gfeat results on anatomical volume:
----
Line 46: Line 75:
feat2surf --feat fbert1.feat --cope-only tkmedit bert orig.mgz -seg aparc+aseg.mgz \
  -ov fbert.gfeat/cope1.feat/stats/zstat1.nii.gz \
  -ovreg fbert1.feat/reg/freesurfer/anat2std.register.dat \
  -fthresh 2.3 -fmax 4.3
Line 48: Line 80:
This will create fbert.feat/reg_surf-lh-fsaverage/stats for the left hemi (and another for the right). There will be cope1.nii.gz. This looks like a volume because it is in nifti format, but it is really a surface stored in a volume format (note it's dimensions are 1974 x 1 x 83 = 163842 = number of vertices in fsaverage's surface). You can then concatenate these files from different subjects to perform group analysis with FreeSurfer's mri_glmfit or FSL's randomise or flame. ----
Here we've used the anat2std.register.dat from the first run.
Line 50: Line 83:
Alternatively, when you have multiple runs/subjects, you can use mris_preproc, something like: Now show gfeat results on the surface:
----
Line 52: Line 86:
mris_preproc --target fsaverage --hemi lh --out xrun/lh.cope1.nii.gz \
  --iv fbert1.feat/stats/cope1.nii.gz fbert1.feat/reg/freesurfer/anat2exf.register.dat \
  --iv fbert2.feat/stats/cope1.nii.gz fbert2.feat/reg/freesurfer/anat2exf.register.dat
tksurfer bert lh inflated -annot aparc.annot \
  -ov fbert.gfeat/cope1.feat/stats/zstat1.nii.gz \
  -ovreg fbert1.feat/reg/freesurfer/anat2std.register.dat \
  -fthresh 2.3 -fmid 3.3 -fslope 1
Line 56: Line 91:
This will create the output directory (xrun) and lh.cope1.nii.gz, the copes from each run sampled onto the left hemi of the common surface.
In this case it will have only two frames for the two runs. This can then be used as input mri_glmfit, randomise, or flame. You can also
resample the variances of the copes with:
{{{
mris_preproc --target fsaverage --hemi lh --out xrun/lh.varcope1.nii.gz \
  --iv fbert1.feat/stats/varcope1.nii.gz fbert1.feat/reg/freesurfer/anat2exf.register.dat \
  --iv fbert2.feat/stats/varcope1.nii.gz fbert2.feat/reg/freesurfer/anat2exf.register.dat
}}}

{{{
mri_glmfit --y xrun/lh.cope1.nii.gz --yffxvar xrun/lh.varcope1.nii.gz --ffxdof 163 \
           --osgm --glmdir xrun/osgm.ffx --surf fsaverage lh --label lh.cortex.label
}}}
----

top | previous

Overlaying FSL Feat statistical maps

  • To follow this exercise exactly be sure you've downloaded the tutorial data set before you begin. If you choose not to download the data set you can follow these instructions on your own data, but you will have to substitute your own specific paths and subject names.

In this exercise, the data set of subject bert is used for demonstration. Type the following prior to beginning the exercises:


tcsh
setenv SUBJECTS_DIR $TUTORIAL_DATA/buckner_data/tutorial_subjs
cd $SUBJECTS_DIR/fbert-feat
ln -s $FREESURFER_HOME/subjects/fsaverage
ln -s $FREESURFER_HOME/subjects/bert


The subjects 'fsaverage' and 'bert' may already exist in the subjects directory, so ignore any warnings that might be issued that say 'File exists'.

1.0 Overlaying the statistical map onto the bert's orig volume

Use the following command to display the zmap (zstat1.nii.gz) from the first run overlaid onto the bert's orig volume. It will display the automatic segmentation, and will also set the threshold at z = 2.3:


 tkmedit bert orig.mgz lh.white -aux brain.mgz \
   -overlay ./fbert1.feat/stats/zstat1.nii.gz \
   -overlay-reg ./fbert1.feat/reg/freesurfer/anat2exf.register.dat \
   -segmentation aparc+aseg.mgz  -fthresh 2.3 -fmax 4.3


You should see the image below:
tkm-zstat1-cor-128.th23.small.jpg
When you click or mouse over a voxel, the cortical or subcortical structure that that voxel belongs to will be displayed in the control panel. You can view any of the volumes in the stats dir in this way as well as the clustered maps in the feat directory.

2.0 View statistical maps on bert's surface

To view any of the statistical maps on bert's surface, close the tkmedit GUI (or open a new terminal window) and run:


tksurfer bert lh inflated \
  -overlay ./fbert1.feat/stats/zstat1.nii.gz \
  -overlay-reg ./fbert1.feat/reg/freesurfer/anat2exf.register.dat \
  -fthresh 2.3 -fmid 3.3 -fslope 1 -annot aparc.annot


Change the cortical parcellation to outline mode with View->LabelStyle->Outline. You should see the image below:
tks-zstat1-rh-lat.th23.small.jpg
When you click or mouse over a vertex, the control panel will display the name of the cortical structure. You can view any of the volumes in the stats dir in this way as well as the clustered maps in the feat directory. You can also run the tkmedit and tksurfer commands above in separate shells and use the Save-Point/Goto-Point functionality to navigate through the volume and surface.

3.0 Displaying Same-Subject, Cross-Run GFEAT Results

Typically, one collects more than one run/series of functional data for each subject. The individual runs are analyzed separately, then combined in standard space with GFEAT using a fixed-effects model. Since the data are no longer in the subject's native functional space, a different registration matrix is needed to map the GFEAT results to the individual. Each run of reg-feat2anat will create a reg/freesurfer/anat2std.register.dat. Any one of these can be used to map the GFEAT data to the subject's anatomy.

First, verify that the registration is good with:


tkregister2 --mov fbert.gfeat/mean_func.nii.gz --surf \
  --reg fbert1.feat/reg/freesurfer/anat2std.register.dat 


mean_func.nii.gz is the mean of the example_func's in standard space. Since this is the mean func, it will be blurry if you have spatially smoothed. Note: if there is a problem with this registration, you need to repair the registrations for each individual run.

Now show gfeat results on anatomical volume:


tkmedit bert orig.mgz -seg aparc+aseg.mgz \
  -ov fbert.gfeat/cope1.feat/stats/zstat1.nii.gz \
  -ovreg fbert1.feat/reg/freesurfer/anat2std.register.dat \
  -fthresh 2.3 -fmax 4.3


Here we've used the anat2std.register.dat from the first run.

Now show gfeat results on the surface:


tksurfer bert lh inflated -annot aparc.annot \
  -ov fbert.gfeat/cope1.feat/stats/zstat1.nii.gz \
  -ovreg fbert1.feat/reg/freesurfer/anat2std.register.dat \
  -fthresh 2.3 -fmid 3.3 -fslope 1


FsTutorial/OverlayFeatStatisticalMaps (last edited 2021-09-22 11:40:04 by DevaniCordero)