Esempio n. 1
0
    def group_melodic_pipeline(self, **kwargs):

        pipeline = self.create_pipeline(
            name='group_melodic',
            inputs=[
                DatasetSpec('smoothed_ts', nifti_gz_format),
                FieldSpec('tr', float)
            ],
            outputs=[DatasetSpec('group_melodic', directory_format)],
            desc=("Group ICA"),
            version=1,
            citations=[fsl_cite],
            **kwargs)
        gica = pipeline.create_join_subjects_node(MELODIC(),
                                                  joinfield=['in_files'],
                                                  name='gica',
                                                  requirements=[fsl510_req],
                                                  wall_time=7200)
        gica.inputs.no_bet = True
        gica.inputs.bg_threshold = self.parameter('brain_thresh_percent')
        gica.inputs.bg_image = self.parameter('MNI_template')
        gica.inputs.dim = self.parameter('group_ica_components')
        gica.inputs.report = True
        gica.inputs.out_stats = True
        gica.inputs.mm_thresh = 0.5
        gica.inputs.sep_vn = True
        gica.inputs.mask = self.parameter('MNI_template_mask')
        gica.inputs.out_dir = 'group_melodic.ica'
        pipeline.connect_input('smoothed_ts', gica, 'in_files')
        pipeline.connect_input('tr', gica, 'tr_sec')

        pipeline.connect_output('group_melodic', gica, 'out_dir')

        return pipeline
Esempio n. 2
0
    def group_melodic_pipeline(self, **name_maps):

        pipeline = self.new_pipeline(name='group_melodic',
                                     desc=("Group ICA"),
                                     citations=[fsl_cite],
                                     name_maps=name_maps)

        pipeline.add(MELODIC(
            no_bet=True,
            bg_threshold=self.parameter('brain_thresh_percent'),
            dim=self.parameter('group_ica_components'),
            report=True,
            out_stats=True,
            mm_thresh=0.5,
            sep_vn=True,
            out_dir='group_melodic.ica',
            output_type='NIFTI_GZ'),
                     inputs={
                         'bg_image': ('template_brain', nifti_gz_format),
                         'mask': ('template_mask', nifti_gz_format),
                         'in_files': ('smoothed_ts', nifti_gz_format),
                         'tr_sec': ('tr', float)
                     },
                     outputs={'group_melodic': ('out_dir', directory_format)},
                     joinsource=self.SUBJECT_ID,
                     joinfield=['in_files'],
                     name='gica',
                     requirements=[fsl_req.v('5.0.10')],
                     wall_time=7200)

        return pipeline
Esempio n. 3
0
    def single_subject_melodic_pipeline(self, **kwargs):

        pipeline = self.create_pipeline(
            name='MelodicL1',
            inputs=[
                DatasetSpec('filtered_data', nifti_gz_format),
                FieldSpec('tr', float),
                DatasetSpec('brain_mask', nifti_gz_format)
            ],
            outputs=[DatasetSpec('melodic_ica', directory_format)],
            desc=("Single subject ICA analysis using FSL MELODIC."),
            version=1,
            citations=[fsl_cite],
            **kwargs)

        mel = pipeline.create_node(MELODIC(),
                                   name='melodic_L1',
                                   wall_time=15,
                                   requirements=[fsl5_req])
        mel.inputs.no_bet = True
        pipeline.connect_input('brain_mask', mel, 'mask')
        mel.inputs.bg_threshold = self.parameter('brain_thresh_percent')
        mel.inputs.report = True
        mel.inputs.out_stats = True
        mel.inputs.mm_thresh = 0.5
        mel.inputs.out_dir = 'melodic_ica'
        pipeline.connect_input('tr', mel, 'tr_sec')
        pipeline.connect_input('filtered_data', mel, 'in_files')

        pipeline.connect_output('melodic_ica', mel, 'out_dir')

        return pipeline
Esempio n. 4
0
    def single_subject_melodic_pipeline(self, **name_maps):

        pipeline = self.new_pipeline(
            name='MelodicL1',
            desc=("Single subject ICA analysis using FSL MELODIC."),
            citations=[fsl_cite],
            name_maps=name_maps)

        pipeline.add('melodic_L1',
                     MELODIC(
                         no_bet=True,
                         bg_threshold=self.parameter('brain_thresh_percent'),
                         report=True,
                         out_stats=True,
                         mm_thresh=0.5,
                         out_dir='melodic_ica',
                         output_type='NIFTI_GZ'),
                     inputs={
                         'mask': (self.brain_mask_spec_name, nifti_gz_format),
                         'tr_sec': ('tr', float),
                         'in_files': ('filtered_data', nifti_gz_format)
                     },
                     outputs={'melodic_ica': ('out_dir', directory_format)},
                     wall_time=15,
                     requirements=[fsl_req.v('5.0.10')])

        return pipeline