def demo_spm_multimodal_fmri(output_dir="/tmp/spm_multimodal_fmri_output"): """Demo for SPM multimodal fmri (faces vs scrambled) Parameters ---------- data_dir: string, optional where the data is located on your disk, where it will be downloaded to output_dir: string, optional where output will be written to """ # fetch data spm_multimodal_fmri = fetch_spm_multimodal_fmri() # subject data factory def subject_factory(): subject_id = "sub001" yield SubjectData(subject_id=subject_id, func=spm_multimodal_fmri.func1, output_dir=os.path.join(output_dir, subject_id)) # invoke demon to run de demo _fmri_demo_runner(subject_factory(), "SPM Multimodal fMRI faces vs scrambled session 1")
def demo_spm_multimodal_fmri(output_dir): """Demo for SPM multimodal fmri (faces vs scrambled) Parameters ---------- output_dir: string where output will be written to """ output_dir = os.path.join(output_dir, "spm_multimodal_fmri_output") spm_multimodal_fmri = fetch_spm_multimodal_fmri() subject_id = "sub001" subjects = [SubjectData(subject_id=subject_id, func=[spm_multimodal_fmri.func1, spm_multimodal_fmri.func2], output_dir=os.path.join(output_dir, subject_id))] _demo_runner(subjects, "SPM Multimodal fMRI faces vs scrambled", n_sessions=2)
def demo_spm_multimodal_fmri(output_dir="/tmp/spm_multimodal_fmri_output"): """Demo for SPM multimodal fmri (faces vs scrambled) Parameters ---------- data_dir: string, optional where the data is located on your disk, where it will be downloaded to output_dir: string, optional where output will be written to """ spm_multimodal_fmri = fetch_spm_multimodal_fmri() subject_id = "sub001" subjects = [SubjectData(subject_id=subject_id, func=[spm_multimodal_fmri.func1, spm_multimodal_fmri.func2], output_dir=os.path.join(output_dir, subject_id))] _demo_runner(subjects, "SPM Multimodal fMRI faces vs scrambled", n_sessions=2)
def demo_spm_multimodal_fmri(output_dir): """Demo for SPM multimodal fmri (faces vs scrambled) Parameters ---------- output_dir: string where output will be written to """ output_dir = os.path.join(output_dir, "spm_multimodal_fmri_output") spm_multimodal_fmri = fetch_spm_multimodal_fmri() subject_id = "sub001" subjects = [ SubjectData( subject_id=subject_id, func=[spm_multimodal_fmri.func1, spm_multimodal_fmri.func2], output_dir=os.path.join(output_dir, subject_id)) ] _demo_runner(subjects, "SPM Multimodal fMRI faces vs scrambled", n_sessions=2)
def demo_spm_multimodal_fmri(output_dir): """Demo for SPM multimodal fmri (faces vs scrambled) Parameters ---------- output_dir: string where output will be written to """ output_dir = os.path.join(output_dir, "spm_multimodal_fmri_output") # fetch data spm_multimodal_fmri = fetch_spm_multimodal_fmri() # subject data factory def subject_factory(): subject_id = "sub001" yield SubjectData(subject_id=subject_id, func=spm_multimodal_fmri.func1, output_dir=os.path.join(output_dir, subject_id)) # invoke demon to run de demo _fmri_demo_runner(output_dir, subject_factory(), "SPM Multimodal fMRI faces vs scrambled session 1")
def demo_spm_multimodal_fmri(output_dir="/tmp/spm_multimodal_fmri_output"): """Demo for SPM multimodal fmri (faces vs scrambled) Parameters ---------- data_dir: string, optional where the data is located on your disk, where it will be downloaded to output_dir: string, optional where output will be written to """ spm_multimodal_fmri = fetch_spm_multimodal_fmri() subject_id = "sub001" subjects = [ SubjectData( subject_id=subject_id, func=[spm_multimodal_fmri.func1, spm_multimodal_fmri.func2], output_dir=os.path.join(output_dir, subject_id)) ] _demo_runner(subjects, "SPM Multimodal fMRI faces vs scrambled", n_sessions=2)
from pypreprocess.reporting.glm_reporter import generate_subject_stats_report from pypreprocess.nipype_preproc_spm_utils import do_subject_preproc from pypreprocess.subject_data import SubjectData # file containing configuration for preprocessing the data this_dir = os.path.abspath(os.path.dirname(sys.argv[0])) jobfile = os.path.join(this_dir, "multimodal_faces_preproc.ini") # set dataset dir if len(sys.argv) > 1: dataset_dir = sys.argv[1] else: dataset_dir = os.path.join(this_dir, "spm_multimodal_faces") # fetch spm multimodal_faces data subject_data = fetch_spm_multimodal_fmri() dataset_dir = os.path.dirname(os.path.dirname(os.path.dirname( subject_data.anat))) # preprocess the data subject_id = "sub001" subject_data = SubjectData( output_dir=os.path.join(dataset_dir, "pypreprocess_output", subject_id), subject_id=subject_id, func=[subject_data.func1, subject_data.func2], anat=subject_data.anat, trials_ses1=subject_data.trials_ses1, trials_ses2=subject_data.trials_ses2, session_ids=["Session1", "Session2"]) subject_data = do_subject_preproc(subject_data, realign=True, coregister=True, segment=True, normalize=True) # experimental paradigm meta-params stats_start_time = time.ctime()
""" Author: DOHMATOB Elvis Dopgima elvis[dot]dohmatob[at]inria[dot]fr Synopsis: single_subject_pipeline.py demo """ from pypreprocess.datasets import fetch_spm_multimodal_fmri from pypreprocess.purepython_preproc_utils import do_subject_preproc # fetch data sd = fetch_spm_multimodal_fmri() sd.output_dir = "/tmp/sub001" sd.func = [sd.func1, sd.func2] # preproc data do_subject_preproc(sd.__dict__, concat=False, coregister=True, stc=True, tsdiffana=True, realign=True, report=True, reslice=True)
line.append(1.) condition, onset, duration, amplitude = line conditions.append(condition) onsets.append(float(onset)) durations.append(float(duration)) amplitudes.append(float(amplitude)) fd.close() if not line_cnt > 0: raise ValueError( "Couldn't read any data from onset file: %s" % onset_file) return map(np.array, [conditions, onsets, durations, amplitudes]) # fetch data data_dir = "examples/spm_multimodal/" subject_data = fetch_spm_multimodal_fmri(data_dir) # XXX to be verified tr = 2. drift_model = 'Cosine' hrf_model = 'Canonical With Derivative' hfcut = 128. time_units = "tr" # default if 1 if time_units == "tr": time_units = tr # re-write onset files into compatible format for sess in xrange(2): trials = getattr(subject_data, "trials_ses%i" % (sess + 1)) fd = open(trials.split(".")[0] + ".txt", 'w') timing = scipy.io.loadmat(trials, squeeze_me=True, struct_as_record=False)