Diff for "AnalyzingData/MNE_ComputeEstimates" - Meg Wiki
location: Diff for "AnalyzingData/MNE_ComputeEstimates"
Differences between revisions 24 and 25
Revision 24 as of 2010-12-09 15:48:08
Size: 4715
Editor: YaaraErez
Comment:
Revision 25 as of 2011-02-04 15:30:07
Size: 5064
Editor: pc0339
Comment:
Deletions are marked like this. Additions are marked like this.
Line 6: Line 6:
The main ingredients are  The main ingredients are
Line 16: Line 16:
Line 20: Line 19:
Line 22: Line 20:
Line 24: Line 21:
Line 26: Line 22:
Line 28: Line 23:
Line 31: Line 25:

Line 39: Line 31:
Line 46: Line 37:

# MEG subdirectories (your directory structure may differ)      
# MEG subdirectories (your directory structure may differ)
Line 53: Line 43:
Line 55: Line 44:
Line 58: Line 46:
Line 61: Line 48:

Line 68: Line 53:
   for c in `seq 0 ${lastcond}`
 do
 
  
# Current Estimates
  mne_make_movie \
  --subject {subjects[m]} \
  
--inv ${datapath}/${subj_pre[m]}/${subj_dir[m]}/YourName_1L-MEG-loose0.2-inv.fif \
  --meas ${datapath}/${subj_pre[m]}/${subj_dir[m]}/${conds[c]}.fif \
  --morph average \

        
for c in `seq 0 ${lastcond}`
        do

                
# Current Estimates
                mne_make_movie \
                --subject {subjects[m]} \
                
--inv ${datapath}/${subj_pre[m]}/${subj_dir[m]}/YourName_1L-MEG-loose0.2-inv.fif \
                --meas ${datapath}/${subj_pre[m]}/${subj_dir[m]}/${conds[c]}.fif \
                --morph average \
Line 79: Line 64:
  --bmin -100 \                 --bmin -100 \
Line 81: Line 66:
  --stc ${outpath}/${subj_pre[m]}_${conds[c]}
     done # conditions
                --stc ${outpath}/${subj_pre[m]}_${conds[c]}
Line 85: Line 68:
        done # conditions
Line 87: Line 71:
Line 90: Line 73:
Some degree of smoothing (--smooth) is necessary for display.  Some degree of smoothing (--smooth) is necessary for display.
Line 92: Line 75:
The baseline definition (--bmin/bmax) can be omitted if input data are already appropriately baseline-corrected. Note that this option will not baseline-correct the source estimates.   The baseline definition (--bmin/bmax) can be omitted if input data are already appropriately baseline-corrected. Note that this option will not baseline-correct the source estimates.
Line 94: Line 77:
A few CBSU users have experienced an issue with mne_make_movie. It sometimes misses some output that it is supposed to produce. It is important for you to check whether the number of output stc files matches what you expect. Re-running the script again usually solves the problem.
Line 96: Line 80:
Line 97: Line 82:
Line 101: Line 85:
Line 104: Line 87:
Line 107: Line 89:
[[Anchor(grandaverage)]]
Line 108: Line 91:
[[Anchor(grandaverage)]]
Line 110: Line 92:
For grand-averaging, STC-files should have been created using the --morph option in mne_make_movie (see above). You can then average them using the command  For grand-averaging, STC-files should have been created using the --morph option in mne_make_movie (see above). You can then average them using the command
Line 114: Line 97:
Line 121: Line 103:
Line 124: Line 105:
Line 130: Line 110:
Line 135: Line 114:
[[Anchor(stcreadwritesubtract)]]
Line 136: Line 116:
[[Anchor(stcreadwritesubtract)]]
Line 143: Line 122:
Line 145: Line 123:
Line 147: Line 124:

Compute the Source Estimates (mne_make_movie)

Applying the Inverse Operator

This script applies the inverse operator to MEG data and outputs the current estimates. The current estimates are morphed to the [#averagebrain average brain] (see below), for [#grandaverage grand-averaging] (see further below). The results (*.stc-files) can be viewed in mne_analyze, and [#stcreadwritesubtract read into Matlab] using mne_read_stc_file. You can get infos on your stc-files (e.g. maximum value, relevant for scaling your display) using mne_process_stc.

The main ingredients are

* the inverse operator

* the averaged MEG data (fiff-files)

* the average cortical surface (see below)

The parameters below are reasonable choices for standard analyses. However, these Wiki pages are not supposed to substitute the [http://www.nmr.mgh.harvard.edu/meg/manuals/MNE-manual-2.6.pdf MNE manual], [http://imaging.mrc-cbu.cam.ac.uk/meg/MEGpapers reading papers], and [http://imaging.mrc-cbu.cam.ac.uk/imaging/ImagersInterestGroup discussions] with more experienced researchers.

#
## Your variables
datapath='<myMEGdatapath>'    # root directory for your MEG data
MRIpath='/myMRIdirectory/'    # where your MRI subdirectories are
outpath='/myoutpath'  # path for output files
#condition names as used in file names to which inverse operator shall be applied
conds=('cond1' 'cond2' 'cond3')
# subjects names used for MRI data
subjects=(\
        'Subject1' \
        'Subject2' \
        'Subject3' \
)
# MEG IDs (your directory structure may differ)
subj_pre=(\
        'meg10_0001' \
        'meg10_0002' \
        'meg10_0003' \
        )
# MEG subdirectories (your directory structure may differ)
subj_dir=(\
         '100001' \
         '100002' \
         '100003' \
        )
## Processing:
nsubjects=${#subjects[*]}
lastsubj=`expr $nsubjects - 1`
nconds=${#conds[*]}
lastcond=`expr $nconds - 1`
for m in `seq 0 ${lastsubj}`
do
  echo " "
  echo " Computing movies  for SUBJECT  ${subjects[m]}"
  echo " "

        for c in `seq 0 ${lastcond}`
        do

                # Current Estimates
                mne_make_movie \
                --subject {subjects[m]} \
                --inv ${datapath}/${subj_pre[m]}/${subj_dir[m]}/YourName_1L-MEG-loose0.2-inv.fif \
                --meas ${datapath}/${subj_pre[m]}/${subj_dir[m]}/${conds[c]}.fif \
                --morph average \
                --smooth 5 \
                --bmin -100 \
                --bmax 0 \
                --stc ${outpath}/${subj_pre[m]}_${conds[c]}

        done # conditions
done # subjects

The --morph option produces source estimates morphed to the average brain (necessary for grand-averaging). If you don't use it, source estimates will be computed on individual cortical surfaces.

Some degree of smoothing (--smooth) is necessary for display.

The baseline definition (--bmin/bmax) can be omitted if input data are already appropriately baseline-corrected. Note that this option will not baseline-correct the source estimates.

A few CBSU users have experienced an issue with mne_make_movie. It sometimes misses some output that it is supposed to produce. It is important for you to check whether the number of output stc files matches what you expect. Re-running the script again usually solves the problem.

Anchor(averagebrain)

Computing the Average Cortical Surface

#
make_average_subject --subjects   Subject1 Subject2 Subject3

"Subject1, Subject2..." etc. are the MRI sub-directories created by Freesurfer. The paths to these sub-directories have to be specified in the environment variables, e.g. "setenv SUBJECTS_DIR /MyMriDirectory/".

Anchor(grandaverage)

Grand-averaging STC-files

For grand-averaging, STC-files should have been created using the --morph option in mne_make_movie (see above). You can then average them using the command

mne_average_estimates --desc <descriptionfile.txt>

where descriptionfile.txt is of the form

stc /yourpath/filetoaverage1.stc
stc /yourpath/filetoaverage2.stc
stc /yourpath/filetoaverage3.stc
deststc <youroutputfile>

You can create description files for every average you want to compute, and execute them in one script

#
mne_average_estimates --desc <descriptionfile1.txt>
mne_average_estimates --desc <descriptionfile2.txt>
mne_average_estimates --desc <descriptionfile3.txt>

Anchor(stcreadwritesubtract)

Reading, Writing, Subtracting STC-files

This simple Matlab script demonstrates how to read and manipulate STC-files.

data1 = mne_read_stc_file( STCfile1 );  % read STC-file 1
data2 = mne_read_stc_file( STCfile2 );  % read STC-file 2
data3 = data2;  % data3 will contain subtracted data, but keep other information from STC-file 2
data3.data = data2.data - data1.data; % subtract STC-file 1 from STC-file 2
mne_write_stc_file( STCfile_out, data3 );  % Write subtracted data to STC-file

CbuMeg: AnalyzingData/MNE_ComputeEstimates (last edited 2013-03-08 10:02:25 by localhost)