I'm getting some puzzling discrepancies when comparing the ocn and the cluster outputs. The summary file indicates there should be five significant clusters (see below).
The cluster file only shows four of the clusters, although I'm guessing that the supramarginal one is not being displayed because it did not pass the three-space Bonferroni (so the cluster file only includes clusters that pass that additional correction)? What is really confusing me is that the ocn file does display the supramarginal cluster but does not show the rostral anterior cingulate cluster. How does this work? See attached images below.
This is with Freesurfer 5.20 on OS X 10.8.3.
Cheers!
Joe
tksurfer fsaverage lh inflated -aparc -overlay CPA.sm05.lh/CS-v-OTHERS/CS-v-OTHERS.wls/osgm/cache.th20.pos.sig.ocn.nii.gz
tksurfer fsaverage lh inflated -aparc -overlay CPA.sm05.lh/CS-v-OTHERS/CS-v-OTHERS.wls/osgm/cache.th20.pos.sig.cluster.nii.gz
# Cluster Growing Summary (mri_surfcluster)
# $Id: mri_surfcluster.c,v 1.51.2.3 2012/05/31 22:10:05 greve Exp $
# $Id: mrisurf.c,v 1.693.2.4 2012/11/07 22:38:00 nicks Exp $
# CreationTime 2013/05/26-22:53:59-GMT
# cmdline mri_surfcluster --in CS-v-OTHERS.wls/osgm/sig.nii.gz --csd /Applications/freesurfer/average/mult-comp-cor/fsaverage/lh/cortex/fwhm12/pos/th20/mc-z.csd --mask CS-v-OTHERS.wls/mask.nii.gz --cwsig CS-v-OTHERS.wls/osgm/cache.th20.pos.sig.cluster.nii.gz --vwsig CS-v-OTHERS.wls/osgm/cache.th20.pos.sig.voxel.nii.gz --sum CS-v-OTHERS.wls/osgm/cache.th20.pos.sig.cluster.summary --ocn CS-v-OTHERS.wls/osgm/cache.th20.pos.sig.ocn.nii.gz --oannot CS-v-OTHERS.wls/osgm/cache.th20.pos.sig.ocn.annot --annot aparc --csdpdf CS-v-OTHERS.wls/osgm/cache.th20.pos.pdf.dat --cwpvalthresh .05 --o CS-v-OTHERS.wls/osgm/cache.th20.pos.sig.masked.nii.gz --no-fixmni --bonferroni 3 --surf white
# cwd /Volumes/Data/CP1/fsfast/secondLevel/CPA.sm05.lh/CS-v-OTHERS
# sysname Darwin
# hostname megajoe.home
# machine x86_64
# FixVertexAreaFlag 1
# FixSurfClusterArea 1
#
# Input CS-v-OTHERS.wls/osgm/sig.nii.gz
# Frame Number 0
# srcsubj fsaverage
# hemi lh
# surface white
# annot aparc
# SUBJECTS_DIR /Applications/freesurfer/subjects
# SearchSpace_mm2 65416.6
# SearchSpace_vtx 148649
# Bonferroni 3
# Minimum Threshold 2
# Maximum Threshold infinity
# Threshold Sign pos
# AdjustThreshWhenOneTail 1
# CW PValue Threshold: 0.05
# Area Threshold 0 mm^2
# CSD thresh 2.000000
# CSD nreps 10000
# CSD simtype null-z
# CSD contrast NA
# CSD confint 90.000000
# Overall max 5.96965 at vertex 140670
# Overall min -3.06064 at vertex 162717
# NClusters 5
# Total Cortical Surface Area 65416.6 (mm^2)
# FixMNI = 0
#
# ClusterNo Max VtxMax Size(mm^2) MNIX MNIY MNIZ CWP CWPLow CWPHi NVtxs Annot
1 5.970 140670 2209.93 -5.9 40.9 -0.0 0.00030 0.00000 0.00060 4223 rostralanteriorcingulate
2 4.146 49359 1566.01 -4.0 -19.8 35.8 0.00030 0.00000 0.00060 3668 posteriorcingulate
3 3.860 111375 446.35 -44.6 -37.3 25.1 0.02558 0.02204 0.02911 1037 supramarginal
4 3.711 128614 652.01 -24.4 -26.8 -24.3 0.00150 0.00060 0.00240 1539 parahippocampal
5 3.647 25172 1334.99 -48.7 -50.3 17.3 0.00030 0.00000 0.00060 2700 inferiorparietal

On May 31, 2013, at 4:44 PM, Joseph Dien <jdien07@mac.com> wrote:
It looks like the corrected vertex p-values (ex: cache.th13.abs.sig.voxel.nii.gz) are only available for the surface-based lh and rh spaces. For the subcortical volume-based analysis I don't see the corresponding corrected voxel p-values being available?
On May 31, 2013, at 2:46 PM, Joseph Dien <jdien07@mac.com> wrote:
On May 31, 2013, at 12:11 PM, Douglas N Greve <greve@nmr.mgh.harvard.edu> wrote:
On 05/31/2013 01:49 AM, Joseph Dien wrote:
I was able to make more progress so I'm mostly good at this point but
I have a remaining question:
I assume the contents of sig.nii.gz (which I assume are the vertex
p-values) are not FWE corrected. Is it possible to get FWE-corrected
vertex p-values? Or are only clusterwise corrections available?
There should be something like cache.th13.abs.sig.voxel.mgh which is
corrected on a voxelwise basis (the th13 is just part of the name but it
should be the same regardless of the threshold you choose)
doug
Excellent! Thanks! :)
Thanks again for your patience!
Joe
On May 30, 2013, at 4:37 PM, Joseph Dien <jdien07@mac.com
<mailto:jdien07@mac.com>> wrote:
Just to make sure I'm doing this right, I'm going to summarize what
I've taken away from your answers and to ask some new questions. In
order to present the results, I need two things:
1) A set of histograms (with error bars) for each cluster figure to
show the % signal change for each of the four contrasts of interest.
The cache.th20.pos.y.ocn.dat file only gives it for the condition
where the cluster was significant so I can't use that.
So I could use mri_label2vol to convert cache.th20.neg.sig.ocn.annot
from the group level analysis to generate a mask for each cluster of
interest.
Then I could extract the value of the voxels from each
subject's cespct file for each contrast, average them across the
cluster ROI, then average them across each subject, to generate the
histogram?
This would suffice to give me the %age signal change?
I would be doing these computations in Matlab using MRIread.
2) A results table with the headings:
Cluster p (FWE corrected)
Cluster size
Peak Voxel p (FWE corrected)
Peak Voxel T
Peak Voxel Coords
BA
Anatomical Landmark
I can get the first two from
the cache.th20.pos/neg.sig.cluster.summary files from the group level
analysis.
I can get the peak voxel coordinates from the summary files as well.
I can use this to get the peak voxel p from the group
level sig.nii.gz file. Is this FWE corrected? If not, how can I get
this information?
I can use these coordinates to get the peak voxel T by getting the
value from the group level F.nii.gz file and taking its square root.
How can I get the sign of the T statistic?
I can use the Lancaster transform to convert the MNI305 peak voxel
coordinates into the Atlas coordinates to look up the putative BA and
landmarks (unless there is a better way with Freesurfer? I'm seeing
some references to some BA labels in the forum but it doesn't look
like this is a complete set yet?).
Sorry for all these questions! I got some nice results from FSFAST
and would like to get them written up.
Cheers!
Joe
On May 29, 2013, at 10:53 PM, Douglas Greve
<greve@nmr.mgh.harvard.edu <mailto:greve@nmr.mgh.harvard.edu>> wrote:
On 5/29/13 10:42 PM, Joseph Dien wrote:
On May 29, 2013, at 11:40 AM, Douglas N Greve
<greve@NMR.MGH.HARVARD.EDU <mailto:greve@NMR.MGH.HARVARD.EDU>> wrote:
Hi Joe,
On 05/29/2013 01:00 AM, Joseph Dien wrote:
I need to extract the beta weights from a cluster identified with
FS-Fast in order to compute percentage signal change.
1) I see a file called beta.nii.gz that appears to have the beta
weight information. It has a four dimensional structure and the
fourth dimension appears to be the beta weights. Is there an index
somewhere as to which beta weight is which? Or if not, how are they
organized?
For the first level analysis, the first N beta weights correspond
to the
N conditions in the paradigm file. The rest are nuisance variables.
Ah, very good! In order to compute the percent signal change
statistic (I'm following the MarsBaR approach:
http://marsbar.sourceforge.net/faq.html#how-is-the-percent-signal-change-calculated)
I'm also going to need the beta weights for the session mean
regressors. How are the nuisance regressors organized?
You can just use the meanfunc.nii.gz. Also, each contrasts is
computed as the simple contrast (ces) and as a percent of the
baseline at the voxel (cespct, cesvarpct).
2) In order to extract the cluster, it looks like I would
use mri_label2vol to convert cache.th20.neg.sig.ocn.annot into a
volume where the voxels are tagged with the number of the
corresponding cluster.
Is that from a group analysis?
Yes, that's right.
I could then use that to generate masks to extract the information I
need for each cluster from beta.nii.gz.
If this is from a group analysis, then there should already be a file
there (something.y.ocn.dat) that has a value for each subject in the
rows and a value for each cluster in the columns.
I see it. Are these values already scaled as percent signal
change? If so, that would be wonderful! :)
Only if you specified it when you ran isxconcat-sess. Note that the
"non-scaled" values are actually scaled to percent of grand mean
intensity.
Is that correct?
3) The final information that I would need is the canonical hrf
shape
generated by FSFAST for a single event. I guess I could generate
that
by setting up a dummy analysis run with a single event of the
desired
duration and then look in the X variable in the resulting X.mat file?
try this
plot(X.runflac(1).flac.ev(2).tirf, X.runflac(1).flac.ev(2).Xirf)
Perfect! :)
Sorry for all the questions!
Joe
--------------------------------------------------------------------------------
Joseph Dien,
Senior Research Scientist
University of Maryland
E-mail: jdien07@mac.com
Phone: 301-226-8848
Fax: 301-226-8811
http://joedien.com//