Standarized Resting State processing with fmriprep

Hi all,

Our lab has been looking for a standardized way to process output resting state scans from fmriprep.
We are currently using a home-brewed matlab script for filtering, scrubbing, regressing out motion noise, CSF, WM, and interpolation. Is there a more standardize tool for processing of resting state images that utilizes the bids structures and containers?
We have glanced at NiLearn, but it seems like it is geared more towards the analysis and visualization side of things


Hi @mitchem890,

the amazing CPAC should be exactly what you’re looking for: comprehensive preprocessing, cool analytic tools and if you want everything packed within a docker container as a BIDS app.

HTH, cheers, Peer


Other options (that should work with FMRIPREP outputs):


Any favorites for surface resting state pipelines?

1 Like

A post was split to a new topic: Functional connectivity - using fMRIPrep preprocessed data with CPAC

Two years on. Has anything change?
Ie would you still recommend denoiser, xcpengine and cpac?
I am also hoping to denoise the surface based results of the cifti images. Would you suggest any denoising toolbox that might work for both volume and surface-based fMRIprep outputs?

Thank you very much in advance

Can handle volumetric and cifti outputs and is designed to work with fMRIPrep outputs.


Thanks for your response.
However, upon inspection the software seems to be still in a developmental stage?
For example, when trying to pull the docker image “docker pull pennlinc/xcp_d” it doesn’t exist - only the unstable version of the tag. Is it a good practice? How reliable do you think it is? Has the software been implemented broadly within the community?

Many thanks in advance

A non-BIDSapp parallel version of it developed by the same team has been published.

Another alternative is to do all post processing in Nilearn.

Hi @Steven,
is XCP-D (XCP-D : A Robust Postprocessing Pipeline of fMRI data — xcp_d version documentation) a fork of XCP?
There isn’t any reference written in the docs. I am assuming it’s more or less the same thing with some slight improvements; at least it’s what I understand when reading the citation boilerplate.
Thank you very much for any comment.

XCP_D not a fork, per se, it is XCP built on the nipype engine to act on BIDS data. XCP_D is more actively maintained/updated and contains some features XCP classic does not, but both apps are built by the same developers.


1 Like

Do you know if XCP can smooth on the surface? It’s unclear from the documentation, but smoothing appears to occur in the voxels. One of the huge benefits of fMRI processing on the surface is the ability to smooth on the surface. I suppose a work-around might be to smooth surfaces after fmriprep with mri_surf2surf prior to XCP processing.

I believe they do smooth and on the surface, but not positive.