4. Quality Assurance Workflow¶
4.1. Introduction¶
Quality Assurance (QA) in MRI refers to the systematic evaluation of data quality to ensure that the acquired images are suitable for reliable scientific analysis. Because MRI data are susceptible to a wide range of artifacts, such as motion, scanner drift, and physiological noise, implementing QA procedures is essential for identifying issues that could compromise downstream results.
4.2. Requirements¶
Running the workflow requires:
CPU |
RAM |
|---|---|
1 |
20 GB |
4.3. Description¶
Processing Steps
Image-quality metrics MRIQC [1] is used to automatically extract image-quality metrics (IQMs) from structural (T1w, T2w), functional (BOLD), and diffusion (EPI) MRI scans. Its purpose is to detect artifacts, inconsistencies, and outliers without requiring manual inspection of every image.
Feature selection MRIQC computes a wide range of metrics, including signal-to-noise ratio (SNR), contrast-to-noise ratio (CNR), entropy focus criterion (EFC), and motion-related parameters, that help identify scans affected by motion, scanner instability, or acquisition errors. …
Quality Control
Manual inspection Group‑level quality‑control HTML reports are reviewed manually to ensure that preprocessing outcomes are consistent across participants and that no systematic artifacts remain.
4.4. Outputs¶
The quality_assurance directory contains subject-level results,
group-level results, logs, and quality-control outputs.
The structure is organized following the brainprep ontology.
quality_assurance/
├── dataset_description.json
├── group_bold.html
├── group_bold.tsv
├── group_dwi.html
├── group_dwi.tsv
├── group_T1w.html
├── group_T1w.tsv
├── log
│ └── report_<timestamp>.rst
├── quality_check
│ ├── filter_group_bold.tsv
│ ├── filter_group_dwi.tsv
│ └── filter_group_T1w.tsv
├── sub-01
│ └── ses-00
│ ├── anat
│ │ └── sub-01_ses-00_T1w.json
│ ├── dwi
│ │ └── sub-01_ses-00_dwi.json
│ ├── func
│ │ ├── sub-01_ses-00_task-ArchiStandard_dir-pa_bold.json
│ │ ├── sub-01_ses-00_task-ArchiStandard_dir-pa_timeseries.json
│ │ └── sub-01_ses-00_task-ArchiStandard_dir-pa_timeseries.tsv
│ └── log
│ └── report_<timestamp>.rst
├── sub-01_ses-00_dwi.html
├── sub-01_ses-00_T1w.html
├── sub-01_ses-00_task-ArchiStandard_dir-pa_bold.html
├── sub-02
│ └── ses-00
│ ├── anat
│ │ └── sub-02_ses-00_T1w.json
│ ├── dwi
│ │ └── sub-02_ses-00_dwi.json
│ ├── func
│ │ ├── sub-02_ses-00_task-ArchiStandard_dir-pa_bold.json
│ │ ├── sub-02_ses-00_task-ArchiStandard_dir-pa_timeseries.json
│ │ └── sub-02_ses-00_task-ArchiStandard_dir-pa_timeseries.tsv
│ └── log
│ └── report_<timestamp>.rst
├── sub-02_ses-00_dwi.html
├── sub-02_ses-00_T1w.html
└── sub-02_ses-00_task-ArchiStandard_dir-pa_bold.html
Description of contents:
dataset_description.jsonMetadata describing the process, including versioning and processing information.group_*_<modality>.tsvTable with IQMs for each subject/session/run across all modalities.group_*_<modality>.htmlStandard MRIQC group-level report.log/report_<timestamp>.rstContains group-level workflow steps and parameters.quality_check/filter_group_*_<modality>.tsvTable with a set of uncorrelated with IQMs for each subject/session/run across all modalities.sub-<id>/ses-<id>Standard MRIQC folder structure.sub-<id>_ses<id>_*_<modality>.htmlStandard MRIQC subject-level report.
4.5. Featured examples¶
Quality Assurance
Explore how to perform this analysis.
IQMs
Explore how to select IQMs.