fMRI Single Subject Analysis & Batch Programming
Download
Report
Transcript fMRI Single Subject Analysis & Batch Programming
ZURICH SPM COURSE 2009
[email protected]
[email protected]
fMRI Single Subject Analysis
&
Batch Programming
Lars Kasper
Institute for
Biomedical Engineering (ETH Zurich)
and Empirical Research in Economics (Univ. of Zurich)
SINGLE SUBJECT ANALYSIS
BATCH PROGRAMMING
ZURICH SPM COURSE 2009
Overview
Quality Assessment of Raw Data
Spatial Preprocessing
Realign and Unwarp
Coregister
General Linear Model: The Design Matrix
Estimating the Model
Results: Defining and Analyzing Contrasts
Reporting and Summarizing
Outlook: What to do with a lot of single subject results
Lars Kasper (11-Feb-09)
Computational Neuroeconomics (Prof. Stephan, IEW) / MR-Technology (Prof. Prüssmann, IBT)
2
SINGLE SUBJECT ANALYSIS
BATCH PROGRAMMING
Image time-series
Realignment
Kernel
Overview of SPM
Smoothing
Design matrix
ZURICH SPM COURSE 2009
Statistical parametric map
(SPM)
General linear model
Statistical
inference
Normalisation
Gaussian
field theory
p <0.05
Template
Parameter estimates
SINGLE SUBJECT ANALYSIS
BATCH PROGRAMMING
ZURICH SPM COURSE 2009
Goals of this tutorial
After finishing this session, you should be able to
Analyze single subject fMRI datasets using
1. the Graphical User Interface (GUI) of SPM
2. The Batch Editor of SPM
3. A template Matlab .m-file to batch very flexibly
Lars Kasper (11-Feb-09)
Computational Neuroeconomics (Prof. Stephan, IEW) / MR-Technology (Prof. Prüssmann, IBT)
4
SINGLE SUBJECT ANALYSIS
BATCH PROGRAMMING
ZURICH SPM COURSE 2009
Batch processing of data
Repeats same data analysis for many subjects (>=2)
Not prone to human errors, reproducible what was done
e. g. jobs mat-files
Runs automatically, no supervision needed
Researcher can concentrate on assessing the results
CAVEAT: Tempting to forget about all analysis steps in
between which could lead to errors in your conclusions
Therefore: Always make sure, that meaningful results were
created at each step
Using Display/CheckReg to view raw data, preprocessed data
Using spm_print to save reported supplementary data output
If anything went wrong, use debugging
Lars Kasper (11-Feb-09)
Computational Neuroeconomics (Prof. Stephan, IEW) / MR-Technology (Prof. Prüssmann, IBT)
5
SINGLE SUBJECT ANALYSIS
BATCH PROGRAMMING
ZURICH SPM COURSE 2009
Introducing the Dataset
Rik Henson‘s famous vs non-famous faces dataset
http://www.fil.ion.ucl.ac.uk/spm/data/face_rep/face_rep_SPM5.html
Includes a manual with step-by-step instruction for analysis
(homework ;-))
Download from SPM homepage (available for SPM5, but works fine
with SPM8b)
Lars Kasper (11-Feb-09)
Computational Neuroeconomics (Prof. Stephan, IEW) / MR-Technology (Prof. Prüssmann, IBT)
6
SINGLE SUBJECT ANALYSIS
BATCH PROGRAMMING
ZURICH SPM COURSE 2009
Introducing the Dataset
Factorial 2 x 2 design to investigate repetition suppression
Question: Influence of repeated stimulus presentation on brain
activity (accomodation of response)?
Each stimulus (pictures of faces) presented twice during a session
Condition Rep, Level: 1 or 2
lag between presentations randomized
26 Famous and 26 non-famous faces to differentiate between
familiarity (long-term memory) and repetition
Condition Fam, Level F(amous) and N(onfamous)
Task: Decision whether famous or nonfamous (button-press)
Lars Kasper (11-Feb-09)
Computational Neuroeconomics (Prof. Stephan, IEW) / MR-Technology (Prof. Prüssmann, IBT)
7
SINGLE SUBJECT ANALYSIS
BATCH PROGRAMMING
ZURICH SPM COURSE 2009
Introducing the Dataset: Published Results
a. Right Fusiform face area
Repetition suppression for familiar/famous faces
b. Left Occipital face area (posterior, occip. extrastriate)
Repetition suppression for familiar AND unfamiliar faces
c. Posterior cingulate and bilateral parietal cortex
Repetition enhancement
Lars Kasper (11-Feb-09)
Computational Neuroeconomics (Prof. Stephan, IEW) / MR-Technology (Prof. Prüssmann, IBT)
8
SINGLE SUBJECT ANALYSIS
BATCH PROGRAMMING
ZURICH SPM COURSE 2009
Overview
Quality Assessment of Raw Data
Spatial Preprocessing
Realign and Unwarp
Coregister
General Linear Model: The Design Matrix
Estimating the Model
Results: Defining and Analyzing Contrasts
Reporting and Summarizing
Outlook: What to do with a lot of single subject results
Lars Kasper (11-Feb-09)
Computational Neuroeconomics (Prof. Stephan, IEW) / MR-Technology (Prof. Prüssmann, IBT)
9
SINGLE SUBJECT ANALYSIS
BATCH PROGRAMMING
ZURICH SPM COURSE 2009
Overview
Quality Assessment of Raw Data
Spatial Preprocessing
Realign and Unwarp
Coregister
General Linear Model: The Design Matrix
Estimating the Model
Results: Defining and Analyzing Contrasts
Reporting and Summarizing
Outlook: What to do with a lot of single subject results
Lars Kasper (11-Feb-09)
Computational Neuroeconomics (Prof. Stephan, IEW) / MR-Technology (Prof. Prüssmann, IBT)
10
SINGLE SUBJECT ANALYSIS
BATCH PROGRAMMING
ZURICH SPM COURSE 2009
Spatial Preprocessing – Realign
GUI
sd
Lars Kasper (11-Feb-09)
Batch Editor
Batch File
FORMAT P =
spm_realign
(P,flags)
Computational Neuroeconomics (Prof. Stephan, IEW) / MR-Technology (Prof. Prüssmann, IBT)
11
SINGLE SUBJECT ANALYSIS
BATCH PROGRAMMING
ZURICH SPM COURSE 2009
Spatial Preprocessing – Unwarp
GUI
Batch Editor
Batch File
uw_params=
spm_uw_estimate
(P,uw_est_flags);
spm_uw_apply
(uw_params,uw_write_
flags);
Lars Kasper (11-Feb-09)
Computational Neuroeconomics (Prof. Stephan, IEW) / MR-Technology (Prof. Prüssmann, IBT)
12
SINGLE SUBJECT ANALYSIS
BATCH PROGRAMMING
ZURICH SPM COURSE 2009
Uh…this takes ages…
Now you can probably value the benefits of batch
processing. If you are still keen on doing all that by hand
(good exercise!), refer to the following
The SPM manual
Most current version in your spm8b-folder, sub-folder man/manual.pdf
Rik Henson‘s famous vs non-famous faces dataset
http://www.fil.ion.ucl.ac.uk/spm/data/face_rep/face_rep_SPM5.html
Included in SPM manual, chapter 29, with step-by-step instruction for
analysis
Available for SPM5, but works fine with SPM8b
Lars Kasper (11-Feb-09)
Computational Neuroeconomics (Prof. Stephan, IEW) / MR-Technology (Prof. Prüssmann, IBT)
13
SINGLE SUBJECT ANALYSIS
BATCH PROGRAMMING
ZURICH SPM COURSE 2009
Overview
Quality Assessment of Raw Data
Spatial Preprocessing
Realign and Unwarp
Coregister
General Linear Model: The Design Matrix
Estimating the Model
Results: Defining and Analyzing Contrasts
Reporting and Summarizing
Outlook: What to do with a lot of single subject results
Lars Kasper (11-Feb-09)
Computational Neuroeconomics (Prof. Stephan, IEW) / MR-Technology (Prof. Prüssmann, IBT)
14
SINGLE SUBJECT ANALYSIS
BATCH PROGRAMMING
ZURICH SPM COURSE 2009
Overview
Quality Assessment of Raw Data
Spatial Preprocessing
Realign and Unwarp
Coregister
General Linear Model: The Design Matrix
Estimating the Model
Results: Defining and Analyzing Contrasts
Reporting and Summarizing
Outlook: What to do with a lot of single subject results
Lars Kasper (11-Feb-09)
Computational Neuroeconomics (Prof. Stephan, IEW) / MR-Technology (Prof. Prüssmann, IBT)
15
SINGLE SUBJECT ANALYSIS
BATCH PROGRAMMING
ZURICH SPM COURSE 2009
General Workflow for the batch interface
Top-down approach
1. Specify subject-independent
data/analysis steps
2. Specify subject-independent
file-dependencies (data flow)
3. Specify subject-related data
(e.g. event-timing)
Lars Kasper (11-Feb-09)
Computational Neuroeconomics (Prof. Stephan, IEW) / MR-Technology (Prof. Prüssmann, IBT)
16
SINGLE SUBJECT ANALYSIS
BATCH PROGRAMMING
ZURICH SPM COURSE 2009
1. The subject-independent analysis parts
Load all modules first
(in right order!)
Then specify details
(where Xs are found)
which are subject
independent
Lars Kasper (11-Feb-09)
TR
Nslices
model factors
contrasts of interest
Computational Neuroeconomics (Prof. Stephan, IEW) / MR-Technology (Prof. Prüssmann, IBT)
17
SINGLE SUBJECT ANALYSIS
BATCH PROGRAMMING
ZURICH SPM COURSE 2009
2. Data-flow specification (subject-independent
dependencies)
Specify, which results of which steps are input
to another step (DEP-sign)
e.g. smoothed images needed for model spec
Afterwards save this job as template .mat file
Lars Kasper (11-Feb-09)
Computational Neuroeconomics (Prof. Stephan, IEW) / MR-Technology (Prof. Prüssmann, IBT)
18
SINGLE SUBJECT ANALYSIS
BATCH PROGRAMMING
ZURICH SPM COURSE 2009
3. Add subject-dependent data/information
Essentially go to all X‘s and fill in appropriate
values
e.g. the .mat-file of the conditions onsets/durations
Save this job as subject-batch file & Run
Lars Kasper (11-Feb-09)
Computational Neuroeconomics (Prof. Stephan, IEW) / MR-Technology (Prof. Prüssmann, IBT)
19
SINGLE SUBJECT ANALYSIS
BATCH PROGRAMMING
ZURICH SPM COURSE 2009
4. Making it multi-subject
1. Make sure, parameters to be adjusted have an X
(clear value) for the single subject template
2. Specify a meta-job with Run batch
3. Create one run for every subject and add missing
parameter values (in right order)
Lars Kasper (11-Feb-09)
Computational Neuroeconomics (Prof. Stephan, IEW) / MR-Technology (Prof. Prüssmann, IBT)
20
SINGLE SUBJECT ANALYSIS
BATCH PROGRAMMING
ZURICH SPM COURSE 2009
Resources and Useful Literature
All step-by-step instructions can be found in the SPM
manual, chapter 35
Also multiple-session and multiple subjects processing included
Batch templates are in your spm path:
Configured subject-independent analysis steps
<spm8b>/man/batch/face_single_subject_template_nodeps.m
With dependencies included
<spm8b>/man/batch/face_single_subject_template.m
With multiple subjects
<spm8b>/man/batch/face_multi_subject_template.m
Lars Kasper (11-Feb-09)
Computational Neuroeconomics (Prof. Stephan, IEW) / MR-Technology (Prof. Prüssmann, IBT)
21
SINGLE SUBJECT ANALYSIS
BATCH PROGRAMMING
ZURICH SPM COURSE 2009
Many, many thanks to
Klaas Enno Stephan
The SPM developers (FIL methods group)
Lars Kasper (11-Feb-09)
Computational Neuroeconomics (Prof. Stephan, IEW) / MR-Technology (Prof. Prüssmann, IBT)
22
SINGLE SUBJECT ANALYSIS
BATCH PROGRAMMING
ZURICH SPM COURSE 2009
Extending the batchfile with SPM GUI functions
Debugging
Generally a good idea to find out, how things work in SPM
Crucial for batch-programming using a .m-file
Here: debug spm.m by setting a breakpoint
If called function found, use edit <functionname>.m
to look at the %comments in the file
Lars Kasper (11-Feb-09)
Computational Neuroeconomics (Prof. Stephan, IEW) / MR-Technology (Prof. Prüssmann, IBT)
23
SINGLE SUBJECT ANALYSIS
BATCH PROGRAMMING
ZURICH SPM COURSE 2009
Tuning the engine – Matlab workspace variables
e.g. to manipulate SPM.mat or jobs by hand
also important during debugging, how variables are defined
and changed
Lars Kasper (11-Feb-09)
Computational Neuroeconomics (Prof. Stephan, IEW) / MR-Technology (Prof. Prüssmann, IBT)
24