fMRIPrep 20.2.7 - no fsLR outputs


We use fMRIPrep 20.2.7 in singularity in an HPC cluster. In order to optimize wait time in the HPC and resources, we split the fMRIPrep job into a separate anatomical and functional job. Our pipeline is working well for other output spaces.
Now, we want to get fMRIPrep outputs in fsLR space. So we modify the parameters.json file as:
–output-spaces T1w func MNI152NLin2009cAsym fsLR --cifti-output

However, after running fMRIPrep we only get some fsLR *.json, *dtseries.json, and *.dtseries.nii results under derivatives/fMRIPrep/sub/func folder. We do not get an fsLR directory under derivatives/freesurfer or any bold.gii files.

I don’t see any errors in the log files, so I’m not sure what is wrong. My understanding is that when fMRIPrep runs in singularity, it downloads the brain atlases from TemplateFlow and stores them in /home/.cache/templateflow, if they are not already there. I tried to delete the contents of this directory, and then I reran fMRIPrep. I’m not sure if it’s relevant, but I noticed that the anatomical job does not seem to download the fsLR template, while the functional job does (and the tpl-fsLR templates are now again present in /home/.cache/templateflow).

Does anyone have any idea of what may be wrong and how we could get outputs in fsLR space?

Thank you for any help!


The cifti outputs (*.dtseries.nii) should be in fsLR space, and surface meshs should be found in the output anat folder.


Hi Steven,

Thank you for your reply! Right. The surface meshes should have some label to indicate that they are in fsLR space, right? I don’t see anything like that in the “anat” folder.

I have found that the dtseries.nii files share resolution with the files that are in the templateflow tpl-fsLR folder.

What I’m not sure about is how to also produce the surface meshes in the anat folder, which are not there for some reason.

If you request --output-spaces fsnative then you will get subject-specific .surf.gii aligned to the individual anatomy. The transformation of a subject-specific mesh to a template mesh is exactly the template mesh, so there is no need to copy it. If you need to display the surface data, you should use fsLR template meshes.

An interesting output could be the template mesh resampled to the individual subject space, but fMRIPrep does not currently do that.

You can find the surface meshes here: GitHub - templateflow/tpl-fsLR

Thank you so much!

Does that mean that fMRIPrep does not produce fsLR_hemi-L/R_bold.func.gii files?

It does not. In general, GIFTI is a pretty terrible format for functional data. If someone is using fsLR, we assume they’re willing to use CIFTI-2. I suspect there’s a workbench command to get a pair of GIFTIs out, if you’re motivated…