fMRIprep is a functional magnetic resonance image pre-processing pipeline that is designed to provide an easily accessible, state-of-the-art interface that is robust to differences in scan acquisition protocols and that requires minimal user input, while providing easily interpretable and comprehensive error and output reporting.
HTML Python Other
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
.circleci [DOC] Set appropriate version in Zenodo citation Aug 14, 2018
.github [skip ci] Higher thresholds for stale app Aug 14, 2018
docker Fix typo. Jun 7, 2018
docs Merge pull request #1239 from poldracklab/doc/pr_template_update Aug 14, 2018
fmriprep Merge pull request #1250 from oesteban/doc/zenodo-version Aug 14, 2018
notebooks @ 4136140 [skip ci] Update notebooks Aug 6, 2018
scripts FIX: "ref" -> "mask" Aug 8, 2018
wrapper MAINT: Update copyright year, doc URL in wrapper Jul 26, 2018
.dockerignore update .dockerignore Feb 27, 2018
.gitattributes [ENH] Adopt versioneer to compose version names Feb 26, 2018
.gitignore MAINT: Ignore pytest cache Aug 9, 2018
.gitmodules Update .gitmodules Apr 30, 2018
.readthedocs.yml back to doc [docs_only] Jul 17, 2017
.travis.yml Revert "[ENH] Add a new submodule to maintain notebooks" Mar 21, 2018
.zenodo.json Add Zhifang Ye to Zenodo May 14, 2018
CHANGES.rst Update CHANGES pre-1.1.4 [skip ci] Aug 6, 2018
CONTRIBUTING.md STY: Bullet list of prefixes Aug 13, 2018
Dockerfile ENH: Add reference_mask script Aug 8, 2018
LICENSE DOC: Update copyright in LICENSE Jul 26, 2018
MANIFEST.in [ENH] Adopt versioneer to compose version names Feb 26, 2018
README.rst Update README.rst Jul 10, 2018
REFERENCES.md add missing REFERENCES.md Jan 20, 2018
get_version.py update docker build, circle and deployment Feb 26, 2018
requirements.txt remove old pin Jul 30, 2018
setup.cfg [ENH] Adopt versioneer to compose version names Feb 26, 2018
setup.py add bibliography file to installation Jul 27, 2018
tox.ini STY: Check doctests, ignore RST link definitions Aug 22, 2017
update_changes.sh 1.0.7 Version bump, changelog and new update_changes.sh script Feb 14, 2018
versioneer.py [ENH] Adopt versioneer to compose version names Feb 26, 2018

README.rst

fmriprep: A Robust Preprocessing Pipeline for fMRI Data

This pipeline is developed by the Poldrack lab at Stanford University for use at the Center for Reproducible Neuroscience (CRN), as well as for open-source software distribution.

Available in OpenNeuro! https://circleci.com/gh/poldracklab/fmriprep/tree/master.svg?style=shield Documentation Status Latest Version

About

https://github.com/oesteban/fmriprep/raw/38a63e9504ab67812b63813c5fe9af882109408e/docs/_static/fmriprep-workflow-all.png

fmriprep is a functional magnetic resonance imaging (fMRI) data preprocessing pipeline that is designed to provide an easily accessible, state-of-the-art interface that is robust to variations in scan acquisition protocols and that requires minimal user input, while providing easily interpretable and comprehensive error and output reporting. It performs basic processing steps (coregistration, normalization, unwarping, noise component extraction, segmentation, skullstripping etc.) providing outputs that can be easily submitted to a variety of group level analyses, including task-based or resting-state fMRI, graph theory measures, surface or volume-based statistics, etc.

Note

fmriprep performs minimal preprocessing. Here we define 'minimal preprocessing' as motion correction, field unwarping, normalization, bias field correction, and brain extraction. See the workflows_ for more details.

The fmriprep pipeline uses a combination of tools from well-known software packages, including FSL_, ANTs_, FreeSurfer_ and AFNI_. This pipeline was designed to provide the best software implementation for each state of preprocessing, and will be updated as newer and better neuroimaging software become available.

This tool allows you to easily do the following:

  • Take fMRI data from raw to fully preprocessed form.
  • Implement tools from different software packages.
  • Achieve optimal data processing quality by using the best tools available.
  • Generate preprocessing quality reports, with which the user can easily identify outliers.
  • Receive verbose output concerning the stage of preprocessing for each subject, including meaningful errors.
  • Automate and parallelize processing steps, which provides a significant speed-up from typical linear, manual processing.

More information and documentation can be found at https://fmriprep.readthedocs.io/

Principles

fmriprep is built around three principles:

  1. Robustness - The pipeline adapts the preprocessing steps depending on the input dataset and should provide results as good as possible independently of scanner make, scanning parameters or presence of additional correction scans (such as fieldmaps).
  2. Ease of use - Thanks to dependence on the BIDS standard, manual parameter input is reduced to a minimum, allowing the pipeline to run in an automatic fashion.
  3. "Glass box" philosophy - Automation should not mean that one should not visually inspect the results or understand the methods. Thus, fmriprep provides visual reports for each subject, detailing the accuracy of the most important processing steps. This, combined with the documentation, can help researchers to understand the process and decide which subjects should be kept for the group level analysis.

Limitations and reasons not to use fmriprep

  1. Very narrow :abbr:`FoV (field-of-view)` images oftentimes do not contain enough information for standard image registration methods to work correctly. Also, problems may arise when extracting the brain from these data. Supporting these particular images is already a future line of the development road-map.
  2. fmriprep may also underperform for particular populations (e.g. infants) and non-human brains, although appropriate templates can be provided to overcome the issue.
  3. The "EPInorm" approach is currently not supported, although we plan to implement this feature (see #857).
  4. If you really want unlimited flexibility (which is obviously a double-edged sword).
  5. If you want students to suffer through implementing each step for didactic purposes, or to learn shell-scripting or Python along the way.
  6. If you are trying to reproduce some in-house lab pipeline.

(Reasons 4-6 were kindly provided by S. Nastase in his open review of our pre-print).

Acknowledgements

Please acknowledge this work by mentioning explicitly the name of this software (fmriprep) and the version, along with a link to the GitHub repository or the Zenodo reference. For more details, please see :ref:`citation`.

Join the chat at https://gitter.im/poldracklab/fmriprep