Exemple #1
0
def layout_ds005_multi_derivs():
    data_dir = join(get_test_data_path(), 'ds005')
    layout = BIDSLayout(data_dir)
    deriv_dir1 = join(get_test_data_path(), 'ds005_derivs')
    deriv_dir2 = join(data_dir, 'derivatives', 'events')
    layout.add_derivatives([deriv_dir1, deriv_dir2])
    return layout
Exemple #2
0
def layout_ds005_multi_derivs():
    data_dir = join(get_test_data_path(), 'ds005')
    layout = BIDSLayout(data_dir)
    deriv_dir1 = join(get_test_data_path(), 'ds005_derivs')
    deriv_dir2 = join(data_dir, 'derivatives', 'events')
    layout.add_derivatives([deriv_dir1, deriv_dir2])
    return layout
Exemple #3
0
def layout_ds005_multi_derivs(request, db_dir):
    data_dir = join(get_test_data_path(), 'ds005')
    database_path = str(db_dir / request.param) if request.param else None

    layout = BIDSLayout(data_dir, database_path=database_path)
    deriv_dir1 = join(get_test_data_path(), 'ds005_derivs')
    deriv_dir2 = join(data_dir, 'derivatives', 'events')
    layout.add_derivatives([deriv_dir1, deriv_dir2])
    return layout
Exemple #4
0
def get_files():
    DSET_DIR = op.abspath('/home/data/nbc/external-datasets/ds001491/')

    layout = BIDSLayout(DSET_DIR)
    layout.add_derivatives(
        '/home/data/nbc/external-datasets/ds001491/derivatives/afni-step1/')
    task = 'images'
    info = {}
    for sub in sorted(layout.get_subjects()):
        print(sub)
        sub_info = {'files': [], 'echo_times': []}
        for echo in sorted(layout.get_echoes(subject=sub, task=task)):
            raw_files = layout.get(subject=sub,
                                   task=task,
                                   echo=echo,
                                   extensions='.nii.gz')
            preproc_files = layout.get(subject=sub,
                                       task=task,
                                       root='afni-step1',
                                       extensions='.nii.gz')
            # For some reason pybids doesn't index echo in derivatives
            preproc_files = [
                p for p in preproc_files
                if 'echo-{0}'.format(echo) in p.filename
            ]
            if len(preproc_files) != 1:
                print(preproc_files)
                raise Exception('BAD')

            # Replace filename with path when using new version of bids
            sub_info['files'].append(preproc_files[0].path)
            metadata = raw_files[0].metadata
            sub_info['echo_times'].append(metadata['EchoTime'])
        info[sub] = sub_info

    with open('preproc_files.json', 'w') as fo:
        json.dump(info, fo, indent=4, sort_keys=True)