Preprocessing turns raw scanner output into something analyzable: motion corrected, registered to a common space, denoised. The community has largely converged on a small set of standardized pipelines, which is good news — it means this step is mostly about running established tools carefully rather than building your own.
All of these expect BIDS input. If you skipped step 3, go back.
Quality control first¶
MRIQC — automated quality metrics and visual reports for structural and functional MRI
Run this before preprocessing, not after. It is far cheaper to exclude a subject at this point than to discover a registration failure downstream and re-run everything. Most pipeline failures trace back to a structural scan that QC would have flagged.
The pipelines¶
fMRIPrep — the standard functional MRI pipeline; covers usage and how to read its output structure
QSIPrep — the diffusion equivalent
giga_connectome — extracts connectomes from fMRIPrep output, which is usually what you actually want for analysis
For electrophysiology the path is different:
Brainstorm — MEG/EEG analysis environment
Running at scale¶
Nipoppy — tracking which subjects ran with which pipeline version
HPC jobs — these pipelines are hours-per-subject, so they belong on the cluster
Containers — the pipelines are distributed as containers, and pinning the version is what makes a run reproducible
What comes out¶
Know what your analysis needs before you run anything, because re-running is expensive. See the modality pages for what each pipeline produces and what is typically done with it.
DataLad — running pipelines through
datalad containers-runrecords the command, its inputs, and the container version, so “which fMRIPrep produced this figure” stays answerable
Next: Analyze.