330 likes | 480 Views
fBIRN Image Processing Stream (FIPS). Overview. Goals Hierarchy and Local Upload FIPS Database Stimulus Schedule Files First-Level Analysis Configuration. Design Goals. } Conflict. Automated Analysis Highly flexible Multi-site Calibration Data Sharing Query-Driven
E N D
Overview • Goals • Hierarchy and Local Upload • FIPS Database • Stimulus Schedule Files • First-Level Analysis Configuration
Design Goals } Conflict • Automated Analysis • Highly flexible • Multi-site Calibration • Data Sharing • Query-Driven • Portalized • Assure same analysis
Local Human Upload and Data Hierarchy • $LOCAL_SRB_HOME_BIRN/ • ProjectName_ProjectId • SubjectID/ • Visit__SiteId_VisitNo/ • Study__StudyId/ • ExperimentSeries/ • Native/ • Original__0001/ • Analyze_7.5/ /space/BIRN/ fBIRNPhaseII__000010/ 00900000103/ Visit__009_0001/ Study__0001/ sm3/ Native/ Original__0001/ Analyze_7.5/ In Analyze_7.5/: Pixel Data: f0001.img, f0002.img, … (analyze format + .mat) ImageWrapper.xml – geometry, voxel size, slice order fips-process.xml – paradigm, run, site, BIRN Id, etc (redundant) XML files contain data-specific information. Disk Space Management
fips-process.xml • paradigm – eg, SIRP • run number within paradigm • All hierarchy information (BIRNID, etc) • Analysis Level (none, FirstLevel) • Stored with Raw and Analyzed data
FIPS Resource File: ~/.fipsrc setenv LOCAL_SRB_HOME_BIRN /space/mojave/1/users/swallace/SRB setenv MY_FIPS_DIR /birn/users/share/fips/db setenv FIPS_FLAC_DIR /birn/users/share/fips/flac LOCAL_SRB_HOME_BIRN: root of Local SRB MY_FIPS_DIR: Local FIPS Database (low storage) FIPS_FLAC_DIR: Place were FLACs are saved (low storage)
FIPS Database • fips-build-db • Finds all fips-process.xml files 9 levels down • Creates a table in $MY_FIPS_DIR • Creates html in $MY_FIPS_DIR • $MY_FIPS_DIR not in the hierarchy (~/.fipsrc)
Analysis Parameters Data-Independent Data-Specific • Event Definitions • HRF • Smoothing Level • Use Slice Timing or not • Contrasts • Slice Timing (XML) • Discarded Acqs (XML) • Stimulus Schedules Lower-level, Hidden, Nuisance. Handled at upload, within-hierarchy. ImageWrapper.xml, fips-process.xml Higher-level, Share, Save in DB, Queryable, extra-hierarchy. FLAC.
Stimulus Schedules and Data Hierarchy • $LOCAL_SRB_HOME_BIRN/ • ProjectName_ProjectId • SubjectID/ • Visit__SiteId_VisitNo/ • Study__StudyId/ • ExperimentSeries/ • Native/ • Original__0001/ • StimulusSchedules/ /space/BIRN/ fBIRNPhaseII__000010/ 00900000103/ Visit__009_0001/ Study__0001/ sm3/ Native/ Original__0001/ StimulusSchedules/ In StimulusSchedules/: Happy.stf, Sad.stf, … fips-import-sched – program to copy stimulus schedules for a data set into the correct place in the hierarchy.
Stimulus Identification and Timing 1 2 3 4 5 6 7 8 Time t=0 t=3.0 t=10.0 t=15.0 t=30.0 t=28.7 t=37.1 t=43.1 t=13.0 SAD HAPPY Sad.stf: 3.0 2 1 13.0 2 1 15.0 2 1 37.1 2 1 Happy.stf: 10.0 2 1 30.0 2 1 28.7 6 1 43.1 2 1 • Columns: • Onset Time • Duration • Weight
Stimulus Schedule Issues • Automatically? fips-process.xml • On-upload? • Predefined analysis? • Post Hoc Event Definitions? • Keep in SRB Hierarchy or save in DB? • SIRP and MM schedules for Phase II in fips/etc (thanks Bryon!)
Analysis Parameters Data-Independent Data-Specific • Event Definitions • HRF • Smoothing Level • Use Slice Timing or not • Contrasts • Slice Timing (XML) • Discarded Acqs (XML) • Stimulus Schedules • Smoothness Lower-level, Hidden, Nuisance. Handled at upload. Higher-level, Share, Save in DB, Queryable.
First Level Analysis Configuration (FLAC) • Motion Correction • Slice-timing Correction • Spatial Smoothing • Intensity Normalization (Grand Mean) • Fit General Linear Model (GLM) • Event Types and Schedules • HRF Type and Parameters, Derivatives • Contrasts of Regression Coefficients • Register to Standard Space • Configure ONCE
Creating the FLAC • fips-fla-config – program that uses FSL’s FEAT GUI to configure • first-level analyses. Saves FLAC to FLAC “library”. • fips-fla-config --flac sirp-stc-smth5mm –paradigm SIRP • –projectname fBIRNPhaseII • --flac: name of the FLAC to be used in later calls • --paradigm: as specified during upload • --projectname: as specified during the upload • Creates: $MY_FLAC_DIR/fBIRNPhaseII/SIRP/sirp-stc-smth5mm • sirp-stc-smth5mm is a text file crated by FSL. • FLAC “Library” $MY_FLAC_DIRnot in the hierarchy (~/.fipsrc) • DO THIS ONCE!
What fips-fla-config is doing • Creates temporary staging directory • Copies the data and schedules from a template subject (confusing but required by FEAT) • Runs FSL’s FEAT GUI • User specifies the config (including schedules) • User saves to “design.fsf” • Renames design.fsf and copies to FLAC Library
Analyzing Data: fips-fla USAGE: fips-fla --projectname name : eg, fBIRNPhaseII --paradigm name : eg, SIRP --flac FLACName : eg, sirp-stc-smth5mm Analyzes all matching data sets, unless: --birnid id : eg, 00042105 --siteid id : eg, 0006 --visitid id : eg, L0001 --studyname name : eg, bay4-trio --run nthrun --visitname name --studyid id
FLA and Data Hierarchy • $LOCAL_SRB_HOME_BIRN/ • ProjectName_ProjectId • SubjectID/ • Visit__SiteId_VisitNo/ • Study__StudyId/ • ExperimentSeries/ • Analysis/ • Original__0001/ • FLACName.feat/ /space/BIRN/ fBIRNPhaseII__000010/ 00900000103/ Visit__009_0001/ Study__0001/ sirp3/ Analysis/ Original__0001/ sirp-stc-smth5mm.feat/ In FLACName.feat/: FSL Analysis results, fips-process.xml. Rebuild DB (fips-build-db) to see results in HTML.
What fips-fla is doing • Finds a matching data set • Copies FLAC file (FSL FEAT format) • Customizes for that data set (eg, slice order) • Runs FEAT scripts (does “everything”) • Runs a check to catch errors • Creates a new fips-process.xml (changes “Analysis Level” to “FirstLevel”)
First-Level Analysis Visualization • FSL-created HTML File • fips-view • AFNI • FreeSurfer (tkmedit) • Slicer
First Level Analysis Workflow 0.Define and upload FLAC (once for all sessions) For each session: • Collect data for a session • Local Upload • (Re)Build FIPS DB • Upload stimulus timing files (if necessary) • Analyze (First Level) • Rebuild FIPS DB • Visualize
Configure First-Level Analysis Stimulus Timing Scanner Human Upload FLAC Library Import First-Level Analysis Hierarchy (Local SRB) FIPS Database PixelData ImageWrapper.xml fips-process.xml Stimulus Schedules FIPS Overview
FIPS and MBIRN/FreeSurfer • Visualization • ROI Definition and Analysis • fips-fsreg – register functional to anatomical • fips-feat2surf – sample results on surface • fips-fsroi – maps ROIs to functional space • fips-fsroisum – summarizes ROIs
Outstanding Issues • Higher-Level Analysis (where in hierarchy?) • Analyze on Upload (stimulus timing files) • Include FLAC in DB? • Portalize • Continue to use FEAT?
Data Hierarchy and Local Disk Managment • $LOCAL_SRB_HOME_BIRN/ • ProjectName_ProjectId • SubjectID/ • Visit__SiteId_VisitNo/ • Study__StudyId/ • ExperimentSeries/ • Native/ • Original__0001/ • Analyze_7.5/
Higher/Group Level Analysis • Select First Level Analysis (FLAC) • Select Contrast from First Level • Select Subjects (Query) • Group Model and Group Contrasts (GLM) • Talairach Space (FSL-MNI152) • Fit GLM • Regression Coefficients • Residual Variance • Contrasts of Regression Coefficients • t, z maps of contrasts • Clusters (GRF)
Group Analysis • Group Level Analysis Configuration (GLAC?) • Specify: • FLAC as input • FLAC contrast • Group model (eg, Age, IQ, diagnosis, etc) • Group contrasts • Can be done within FSL
FIPS RC File (~/.fipsrc) setenv LOCAL_SRB_HOME_BIRN /space/birn/26/users/greve/srb-mirror setenv FIPS_FLAC_DIR ~/flac setenv FIPS_DEFAULT_DATABASE Human setenv FIPS_DEFAULT_PROJECT_NAME fBIRNHumanPhantom setenv FIPS_DEFAULT_PROJECT_ID 000005
Stimulus Identification and Timing 1 2 3 4 5 6 7 8 Time t=0 t=3.0 t=10.0 t=15.0 t=30.0 t=28.7 t=37.1 t=43.1 t=13.0 SAD HAPPY Example: Happy and Sad Faces as defined by the experimenter. Sad.stf: 3.0 2 1 13.0 2 1 15.0 2 1 37.1 2 1 • Columns: • Onset Time • Duration • Weight Happy.stf: 10.0 2 1 30.0 2 1 28.7 6 1 43.1 2 1
Stimulus Identification and Timing 1 2 3 4 5 6 7 8 Experimenter 1 2 3 4 5 6 7 8 Subject Experimenter Subject SAD HAPPY SAD HAPPY Sad.stf: 3.0 2 1 13.0 2 1 15.0 2 1 37.1 2 1 SadSubj.stf: 3.0 2 1 13.0 2 1 28.7 6 1 37.1 2 1 Happy.stf: 10.0 2 1 30.0 2 1 28.7 6 1 43.1 2 1 HappySubj.stf: 10.0 2 1 15.0 2 1 30.0 2 1 43.1 2 1
1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8 Subject SS.stf: 3.0 2 1 13.0 2 1 37.1 2 1 HH.stf: 10.0 2 1 28.7 6 1 43.1 2 1 HS.stf: 28.7 6 1 SH.stf: 15.0 2 1 H S H HH HS Experimenter S SH SS