Fitlins and --space

Hello,

I’m having trouble getting a model to run and it seems to be failing at the fitlins_wf.loader step. I’m thinking it may be an issue with my --space

Using fmriprep, I specified --output-spaces func fsaverage6 MNI152NLin6Asym, but fitlins only takes one --space option, even if you don’t provide it, it seems to be looking for --space MNI152NLin2009cAsym.

In my derivatives, I only have space-MNI152NLin6Asym_desc-preproc and desc-preproc datasets.

I’m wondering if this is a current limitation of the software or if there is another way to select the correct images to load?


Here is the error (take note of the selectors):

Node: fitlins_wf.loader
Working directory: /data/work/fitlins_wf/loader

Node inputs:

database_path = /data/work/dbcache
model = {'Name': 'pictures_baseline', 'Description': 'KRNS task - pictures01: stim vs baseline', 'Input': {'task': 'pictures', 'subject': ['M01']}, 'Steps': [{'Level': 'run', 'Transformations': [{'Name': 'Factor', 'Input': ['trial_type'], 'Constraint': 'drop_one', 'RefLevel': 'fixation'}, {'Name': 'Filter', 'Input': ['trial_type'], 'Query': 'trial_type==science', 'Output': 'left_out_trial'}, {'Name': 'Filter', 'Input': ['trial_type'], 'Query': 'trial_type!=science', 'Output': 'all_others'}, {'Name': 'Convolve', 'Input': ['left_out_trial'], 'Model': 'spm'}, {'Name': 'Convolve', 'Input': ['all_others'], 'Model': 'spm'}], 'Model': {'X': ['left_out_trial', 'all_others', 'trans_x', 'trans_y', 'trans_z', 'rot_x', 'rot_y', 'rot_z']}, 'Contrasts': [{'Name': 'trial-baseline', 'ConditionList': ['left_out_trial'], 'weights': [1], 'Type': 't'}]}]}
selectors = {'desc': 'preproc', 'space': 'MNI152NLin2009cAsym'}

Traceback (most recent call last):
  File "/opt/miniconda-latest/envs/neuro/lib/python3.6/site-packages/nipype/pipeline/plugins/multiproc.py", line 69, in run_node
    result['result'] = node.run(updatehash=updatehash)
  File "/opt/miniconda-latest/envs/neuro/lib/python3.6/site-packages/nipype/pipeline/engine/nodes.py", line 479, in run
    result = self._run_interface(execute=True)
  File "/opt/miniconda-latest/envs/neuro/lib/python3.6/site-packages/nipype/pipeline/engine/nodes.py", line 585, in _run_interface
    return self._run_command(execute)
  File "/opt/miniconda-latest/envs/neuro/lib/python3.6/site-packages/nipype/pipeline/engine/nodes.py", line 678, in _run_command
    result = self._interface.run(cwd=outdir)
  File "/opt/miniconda-latest/envs/neuro/lib/python3.6/site-packages/nipype/interfaces/base/core.py", line 382, in run
    runtime = self._run_interface(runtime)
  File "/opt/miniconda-latest/envs/neuro/lib/python3.6/site-packages/fitlins/interfaces/bids.py", line 212, in _run_interface
    analysis.setup(drop_na=False, **selectors)
  File "/opt/miniconda-latest/envs/neuro/lib/python3.6/site-packages/bids/analysis/analysis.py", line 94, in setup
    b.setup(input_nodes, drop_na=drop_na, **selectors)
  File "/opt/miniconda-latest/envs/neuro/lib/python3.6/site-packages/bids/analysis/analysis.py", line 207, in setup
    **kwargs)
  File "/opt/miniconda-latest/envs/neuro/lib/python3.6/site-packages/bids/layout/layout.py", line 1096, in get_collections
    skip_empty=skip_empty, **kwargs)
  File "/opt/miniconda-latest/envs/neuro/lib/python3.6/site-packages/bids/variables/io.py", line 93, in load_variables
    dataset = _load_time_variables(layout, dataset, scope=scope, **_kwargs)
  File "/opt/miniconda-latest/envs/neuro/lib/python3.6/site-packages/bids/variables/io.py", line 165, in _load_time_variables
    raise ValueError("No functional images that match criteria found.")
ValueError: No functional images that match criteria found.

Here is my fitlins command:

singularity run --cleanenv  			\
	-B $raw:/data/raw 					\
	-B $dat:/data/derv 					\
	-B $out:/data/out 					\
	-B $wrk:/data/work 					\
	-B $mot:/data/models 				\
	$img /data/raw /data/out 			\
	dataset -d /data/derv/fmriprep 		\
	-w /data/work 						\
	-m /data/models/${m} 				\
	--n-cpus 24