Differences between revisions 36 and 37
Deletions are marked like this. Additions are marked like this.
Line 8: Line 8:
Make sure you have set your SUBJECTS_DIR to correct location. Make sure you have set your SUBJECTS_DIR to correct location as
----
{{{
setenv SUBJECTS_DIR <path_to_data>
}}}
----
Line 235: Line 240:
Set your SUBJECTS_DIR to the location where you have your subjects to be analyzed. Set your SUBJECTS_DIR to the path where you have your subjects to be analyzed.
----
{{{
setenv SUBJECTS_DIR <path_to_data>
}}}
----

top | previous

Anatomical ROI analysis

This tutorial gives a brief introduction to anatomical ROI analysis which includes working with label files, extracting ROI measures from the anatomical data, group statistics etc. Make sure you have set your SUBJECTS_DIR to correct location as


setenv SUBJECTS_DIR <path_to_data>


Relationship between segmentation, parcellation and LookUp Table (LUT)

Open the subject in tkmedit using the following command


tkmedit 004 orig.mgz -aux aparc+aseg.mgz \
  -seg aparc+aseg.mgz $FREESURFER_HOME/FreeSurferColorLUT.txt


Open another terminal to load the subject in tksurfer, using the following command.


tksurfer 004 lh inflated -annot aparc.annot


Run the following command to display the contents of LUT


less $FREESURFER_HOME/FreeSurferColorLUT.txt


Click on a point on the image loaded in tkmedit. You can see the structure name in the tkmedit toolbar. Look at the Aux value, find value in LUT, which you have opened using the command mentioned above. See that it is the same structure as listed in tkmedit.

Click on a point in tksurfer and see structure name. Note that the name does not have lh or rh in it. Click on the Save Point tool button icon_cursor_save.gif, and then click on Goto Point tool button icon_cursor_goto.gif on the tkmedit toolbar. You will notice that the structure name in tkmedit has lh or rh in it.

Label files

This section gives the details of commands to load an existing label file in text editor, tkmedit, and tksurfer.

To load an existing label, for example lh.BA45.label, run


less 004/label/lh.BA45.label


To load a label in tkmedit, first load the subject you want to work on, in tkmedit.


tkmedit 004 orig.mgz 


Then on the tkmedit toolbar, go to File-> Label --> Load Label --> lh.BA45.label

To load the label in tksurfer, make sure you load the subject in tksurfer.


tksurfer 004 lh inflated


On the tksurfer toolbar, go to File --> Label --> Load Label --> lh.BA45.label

Individual Stats files

During the normal FreeSurfer processing stream, via the recon-all script, (a freesurfer tutorial is available.) some statistical output files are generated. They are kept in each subjects stats/ subdirectory, and are a result of the subcortical segmentation, aseg, and the cortical parcellation, aparc. These tables include information on each labeled region for the individual subject.

aseg.stats

The statistical output from the subcortical segmentation, called aseg.stats, is a regular text file and will contain the volumes of specific structures. For example, you can obtain information such as the volume of left hippocampus and it's mean intensity from this file.


cd $SUBJECTS_DIR/004/stats
less lh.aseg.stats


At the head of the text file there will be information about the command that was run, the version used, the user who ran it and a time stamp. Following this there is information about the volume of the entire brain. This shows the number of voxels in the brainmask (BrainMaskNVox), the volume of the brainmask (BrainMaskVol), the number of voxels in the brainseg (BrainSegNVox), the volume of the brainseg (BrainSegVol), and the intracranial volume (ICV). This part of the file also tells us that the brainmask.mgz volume is being used as BrainMask (BrainMaskFile  mri/brainmask.mgz) and the aseg.mgz segmentation is being used as the SegVol (SegVolFile mri/aseg.mgz). The number of voxels and the volumes should be the same for this subject, since this part of the file also tells us that the voxel volume is 1 mm3 (VoxelVolume_mm3 1) - and volume is measured in mm3.

The next section of this file defines the column headers, field name, and units for the rest of the table. We can expect to see the Segmentation Id, Number of Voxels, Volume, Structure Name, Intensity normMean, Itensity normStdDev, Intensity normMin, Intensity normMax, and Intensity normRange for each entry in the table.

The remainder of the table shows this information for all the structures that are labeled in the aseg.

# Title Segmentation Statistics
# generating_program mri_segstats
# cvs_version $Id: mri_segstats.c,v 1.33.2.4 2008/12/21 18:04:48 greve Exp $
# cmdline mri_segstats --seg mri/aseg.mgz --sum stats/aseg.stats --pv mri/norm.mgz --excludeid 0 --brain-vol-from-seg --brainmask mri/brainmask.mgz --in mri/norm.mgz --in-intensity-name norm --in-intensity-units MR --etiv --subject
004 --surf-wm-vol --ctab /usr/local/freesurfer/stable4/ASegStatsLUT.txt
# sysname  Linux
# hostname node0304
# machine  x86_64
# user     FS-user
# anatomy_type volume
# SUBJECTS_DIR /autofs/space/birn_045/users/BWH/buckner_data/tutorial_subjs
# subjectname 004
# BrainMaskFile  mri/brainmask.mgz
# BrainMaskFileTimeStamp  2009/01/11 15:41:05
# Measure BrainMask, BrainMaskNVox, Number of Brain Mask Voxels, 1750402, unitless
# Measure BrainMask, BrainMaskVol, Brain Mask Volume, 1750402.000000, mm^3
# Measure BrainSegNotVent, BrainSegVolNotVent, Brain Segmentation Volume Without Ventricles, 1175182.000000, mm^3
# Measure BrainSeg, BrainSegNVox, Number of Brain Segmentation Voxels, 1235011, unitless
# Measure BrainSeg, BrainSegVol, Brain Segmentation Volume, 1235011.000000, mm^3
# Measure IntraCranialVol, ICV, Intracranial Volume, 1796495.343836, mm^3
# SegVolFile mri/aseg.mgz
# SegVolFileTimeStamp  2008/11/22 04:53:19
# ColorTable /usr/local/freesurfer/stable4/ASegStatsLUT.txt
# ColorTableTimeStamp 2009/01/11 07:09:19
# InVolFile  mri/norm.mgz
# InVolFileTimeStamp  2008/11/21 19:10:07
# InVolFrame 0
# PVVolFile  mri/norm.mgz
# PVVolFileTimeStamp  2008/11/21 19:10:07
# surface-based-volume mm3 lh-cerebral-white-matter 256451.250000
# surface-based-volume mm3 rh-cerebral-white-matter 256024.875000
# surface-based-volume mm3 tot-cerebral-white-matter 512476.125000
# ExcludeSegId 0
# VoxelVolume_mm3 1
-
-
-
# TableCol  1 ColHeader Index
# TableCol  1 FieldName Index
# TableCol  1 Units     NA
# TableCol  2 ColHeader SegId
# TableCol  2 FieldName Segmentation Id
# TableCol  2 Units     NA
# TableCol  3 ColHeader NVoxels
# TableCol  3 FieldName Number of Voxels
# TableCol  3 Units     unitless
# TableCol  4 ColHeader Volume_mm3
# TableCol  4 FieldName Volume
# TableCol  4 Units     mm^3
# TableCol  5 ColHeader StructName
# TableCol  5 FieldName Structure Name
# TableCol  5 Units     NA
-
-
-
# ColHeaders  Index SegId NVoxels Volume_mm3 StructName normMean normStdDev normMin normMax normRange
  1   2    219775   219775.0  Left-Cerebral-White-Matter       104.1449     9.6298    23.0000   180.0000   157.0000
  2   3    249186   249186.0  Left-Cerebral-Cortex              68.4475    10.9191    19.0000   154.0000   135.0000
  3   4     31217    31217.0  Left-Lateral-Ventricle            21.2879     9.9687     6.0000    82.0000    76.0000
  4   5      1380     1380.0  Left-Inf-Lat-Vent                 37.2319    12.6153    13.0000    85.0000    72.0000
  5   7     13337    13337.0  Left-Cerebellum-White-Matter      86.1768     7.6600    42.0000   124.0000    82.0000
  6   8     49087    49087.0  Left-Cerebellum-Cortex            58.4803     9.5375    19.0000    96.0000    77.0000
-
-
-

aparc.stats

The statistical output from the cortical parcellation, called lh.aparc.stats and rh.aparc.stats, is a regular text file and will contain the thickness of specific structures. For example, you can obtain information such as, how big is left superior temporal gyrus and it's average thickness from this file.


cd $SUBJECTS_DIR/004/stats
less lh.aparc.stats


At the head of the text file there will be information about the command that was run, the version used, the user who ran it and a time stamp. Following this there is information about the volume of the entire brain. This shows the total white matter volume (TotalWhiteMatterVolume), the number of vertices in the cortex (NumVert), and the surface area of the cortex (SurfArea). This part of the file also tells us that the lh.aparc.annot is being used as the annotation file (AnnotationFile ../label/lh.aparc.annot).

The next section of this file defines the column headers, field name, and units for the rest of the table. We can expect to see the Structure Name, Number of Vertices, Surface Area, Gray Matter Volume, Average Thickness, Thickness StDev, Integrated Rectified Mean Curvature, Integrated Rectified Gaussian Curvature, Folding Index and Intrinsic Curvature Index for each entry in the table.

The remainder of the table shows this information for all the structures that are labeled in the aseg.

# Table of FreeSurfer cortical parcellation anatomical statistics
# CreationTime 2009/01/13-02:24:40-GMT
# generating_program mris_anatomical_stats
# cvs_version $Id: mris_anatomical_stats.c,v 1.54.2.4 2009/01/09 22:23:40 nicks Exp $
# mrisurf.c-cvs_version $Id: mrisurf.c,v 1.557.2.17 2009/01/08 17:16:51 nicks Exp $
# cmdline mris_anatomical_stats -mgz -f ../stats/lh.aparc.stats -b -a ../label/lh.aparc.annot -c ../label/aparc.annot.ctab 004 lh
# sysname  Linux
# hostname node0323
# machine  x86_64
# user     FS-user
# SUBJECTS_DIR /autofs/space/birn_045/users/BWH/buckner_data/tutorial_subjs
# anatomy_type surface
# subjectname 004
# hemi lh
# AnnotationFile ../label/lh.aparc.annot
# AnnotationFileTimeStamp 2009/01/12 02:40:55
# Measure Cortex, NumVert, Number of Vertices, 151295, unitless
# Measure Cortex, SurfArea, Surface Area,  100640, mm^2
-
-
-
# TableCol  1 ColHeader StructName
# TableCol  1 FieldName Structure Name
# TableCol  1 Units     NA
# TableCol  2 ColHeader NumVert
# TableCol  2 FieldName Number of Vertices
# TableCol  2 Units     unitless
# TableCol  3 ColHeader SurfArea
# TableCol  3 FieldName Surface Area
# TableCol  3 Units     mm^2
# TableCol  4 ColHeader GrayVol
# TableCol  4 FieldName Gray Matter Volume
# TableCol  4 Units     mm^3
# TableCol  5 ColHeader ThickAvg
# TableCol  5 FieldName Average Thickness
# TableCol  5 Units     mm
-
-
-
# ColHeaders StructName NumVert SurfArea GrayVol ThickAvg ThickStd MeanCurv GausCurv FoldInd CurvInd
unknown                                 13332   8382  11785  1.313 1.553     0.117     0.146     1134    56.2
bankssts                                 1372    939   2157  2.249 0.512     0.138     0.048       17     2.9
caudalanteriorcingulate                  1188    783   2316  2.561 0.829     0.176     0.102       38     4.9
caudalmiddlefrontal                      3278   2160   6170  2.555 0.565     0.143     0.056       45     7.8
cuneus                                   2460   1561   3093  1.800 0.406     0.165     0.071       47     6.9
entorhinal                                544    371   1617  3.130 0.717     0.183     0.177       36     4.2
fusiform                                 5421   3746  10126  2.281 0.708     0.155     0.067       98    14.7
inferiorparietal                         7558   5112  13237  2.269 0.589     0.154     0.066      154    19.6
-
-
-

Group stats files

This section will run you through using the stats directory in the subjects to perform group stats of certain structures that may be of interest to your study. The following commands will help you combine the data of the subjects you are analyzing into one table that will be easily read into a spreadsheet program. We have considered 6 subjects as examples (004, 021, 040, 067, 080, 092) in the following sections.

Set your SUBJECTS_DIR to the path where you have your subjects to be analyzed.


setenv SUBJECTS_DIR <path_to_data>


Table of segmentation volumes

This section explains how to create a table of segmentation volumes using the 6 subjects mentioned above.


asegstats2table --subjects 004 021 040 067 080 092 \
  --segno 11 17 18 \
  --t aseg.vol.table


where 11, 17 and 18 correspond to the segmentation label of left caudate, left hippocampus and left amygdala respectively. You can get the segmentation labels and the corresponding subcortical structures using the following command.


less $FREESURFER_HOME/FreeSurferColorLUT.txt


To load the resulting table into a spreadsheet, run


oocalc aseg.vol.table


and then select Space in the Separated by menu.

Please note that the oocalc command is meant to be run on a Linux machine. In the table, the first cell is volume indicating that the measure is a volume in mm3. In addition to segmentations, you can also get IntraCranialVol (ICV) and BrainSegVol into the table.

About the subject IDs, you'll notice that in the examples we've considered here, each subject is a 3 digit number. Therefore oocalc thinks it is a number and removes leading 0s. This is an oocalc issue but probably it would not happen if subject names has characters in them instead of integers.

Table of segmentation mean intensities

Purpose of this section is to demonstrate how you can change the measure from volume to mean intensity using asegstats2table command.


asegstats2table \
  --subjects 004 021 040 067 080 092 \
  --segno 11 17 18 \
  --meas mean \
  --t aseg.mean-intensity.table


You can load the table into a spread sheet as explained in the previous section. Please refer to the file FreeSurferColorLUT.txt for the segmentation labels and the corresponding subcortical structures.


less $FREESURFER_HOME/FreeSurferColorLUT.txt


Table of white matter parcellation volumes

The purpose of this section is to show how you can change the segmentation atlas


asegstats2table \
  --subjects 004 021 040 067 080 092 \
  --segno 3007 3021 3022 4022 \
  --stats wmparc.stats \
  --t wmparc.vol.table


Please refer to the file FreeSurferColorLUT.txt for the segmentation labels and the corresponding subcortical structures.


less $FREESURFER_HOME/FreeSurferColorLUT.txt


Table of the surface area of each cortical parcellation in the Desikan atlas

This section explains how to create a table of the surface area of each cortical parcellation in the Desikan atlas.


aparcstats2table --hemi lh \
  --subjects 004 021 040 067 080 092 \
  --t lh.aparc.area.stats


Table of the average thickness of each cortical parcellation in the Destrieux atlas

The purpose of this section is to show how to change the summary measure and the parcellation atlas.


aparcstats2table --hemi lh \
  --subjects 004 021 040 067 080 092 \
  --meas thickness \
  --parc aparc.a2005s \
  --t lh.aparc.a2005.thickness.stats


FsTutorial/AnatomicalROI_tktools (last edited 2013-11-01 14:32:41 by MaritzaEbling)