You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
***Summary:** Perform integrated preprocessing and quality assurance of diffusion MRI data
8
+
9
+
***Preprocessing Steps:**
10
+
1. Gibbs de-ringing (optional, not recommended)
11
+
1. MP-PCA denoising (optional)
12
+
1. Inter-scan normalization (optional)
13
+
1. Susceptibility-induced distortion correction (with or without reverse gradient images or field maps)
14
+
1. Eddy current-induced distortion correction
15
+
1. Inter-volume motion correction
16
+
1. Slice-wise signal dropout imputation
17
+
1. N4 bias field correction (optional)
18
+
19
+
***Quality Assurance Steps:**
20
+
1. Verification of phase encoding schemes
21
+
1. Analysis of gradient directions
22
+
1. Shell-wise analysis of signal-to-noise and contrast-to-noise ratios
23
+
1. Correction of corrupted inter-scan intensity relationships
24
+
1. Shell-wise analysis of distortion corrections
25
+
1. Analysis of inter-volume motion and slice-wise signal dropout
26
+
1. Analysis of bias fields
27
+
1. Verification of intra-pipeline masking
28
+
1. Analysis of tensor goodness-of-fit
29
+
1. Voxel-wise and region-wise quantification of FA
30
+
1. Voxel-wise quantification of MD
31
+
7
32
## Authors and Reference
8
33
9
34
[Leon Y. Cai](mailto:leon.y.cai@vanderbilt.edu), Qi Yang, Colin B. Hansen, Vishwesh Nath, Karthik Ramadass, Graham W. Johnson, Benjamin N. Conrad, Brian D. Boyd, John P. Begnoche, Lori L. Beason-Held, Andrea T. Shafer, Susan M. Resnick, Warren D. Taylor, Gavin R. Price, Victoria L. Morgan, Baxter P. Rogers, Kurt G. Schilling, Bennett A. Landman. *PreQual: An automated pipeline for integrated preprocessing and quality assurance of diffusion weighted MRI images*. [bioRxiv](https://www.biorxiv.org/content/10.1101/2020.09.14.260240v2), 2020. Preprint.
We use Singularity version 3.4 with root permissions.
@@ -65,7 +90,7 @@ We use Singularity version 3.4 with root permissions.
65
90
66
91
***pe\_axis:** Phase encoding axis of all the input images. We do NOT support different phase encoding axes between different input images at this time. The options are i and j and correspond to the first and second dimension of the input images, respectively. Note that FSL does not currently support phase encoding in the third dimension (i.e. k, the dimension in which the image slices were acquired, commonly axial for RAS and LAS oriented images). This parameter is direction AGNOSTIC. The phase encoding directions of the input images along this axis are specified in the dtiQA\_config.csv file. See "dtiQA\_config.csv Format" and “Example Phase Encoding Schemes” for more information.
67
92
68
-
## **Formatting dtiQA\_config.csv**
93
+
## Formatting dtiQA\_config.csv
69
94
70
95
The format for the lines of the configuration CSV file are as follows:
These are examples of common use cases. They also all share the same command, as detailed above. The PREPROCESSED output folder will contain the final outputs and the PDF folder will contain the QA report.
j | No | Yes | dti1.nii.gz<br>dti1.bval<br>dti1.bvec<br>dti2.nii.gz<br>dti2.bval<br>dti2.bvec<br>t1.nii.gz | dti1,+,0.05<br>dti2,+,0.05
126
+
j | No | No | dti1.nii.gz<br>dti1.bval<br>dti1.bvec<br>dti2.nii.gz<br>dti2.bval<br>dti2.bvec | dti1,+,0.05<br>dti2,+,0.05
127
+
93
128
## Options
94
129
95
130
**--bval\_threshold N**
@@ -104,6 +139,12 @@ A comma separated list of positive integers (s/mm<sup>2</sup>) indicating nonzer
104
139
105
140
Default = auto
106
141
142
+
**--degibbs on/off**
143
+
144
+
Remove Gibbs ringing artifacts using the local subvoxel-shifts method as [implemented in MRTrix3](https://mrtrix.readthedocs.io/en/latest/reference/commands/mrdegibbs.html). When performed it is performed prior to all other preprocessing including denoising. We strongly caution against using this feature as it not designed for the partial Fourier schemes with which most echo planar diffusion images are acquired.
145
+
146
+
Default = off
147
+
107
148
**--denoise on/off**
108
149
109
150
Denoise images prior to preprocessing using Marchenko-Pastur PCA [implemented in MRTrix3](https://mrtrix.readthedocs.io/en/latest/reference/commands/dwidenoise.html). The SNR of the b0s of the final preprocessed images are reported in the PDF output regardless of whether this option is on or off.
@@ -201,6 +242,18 @@ Perform [ANTs N4 bias field correction](https://manpages.debian.org/testing/ants
201
242
202
243
Default = off
203
244
245
+
**--glyph\_type tensor/vector**
246
+
247
+
Visualize either tensors or principal eigenvectors in the QA document.
248
+
249
+
Default = tensor
250
+
251
+
**--atlas\_reg\_type FA/b0**
252
+
253
+
Perform JHU white matter atlas registration to the subject by either deformably registering the subject's FA map or average b0 to the MNI FA or T2 template, respectively. Empirically, the FA approach tends to be more accurate for white matter whereas the b0 approach tends to be more accurate globally. The b0 approach is more robust for acquisitions with low shells (i.e., b < 500 s/mm<sup>2</sup>) or poor masking that result in the inclusion of a lot of facial structure.
254
+
255
+
Default = FA
256
+
204
257
**--split\_outputs**
205
258
206
259
Split the fully preprocessed output (a concatenation of the input images) back into their component parts and do NOT keep the concatenated preprocessed output.
@@ -245,11 +298,11 @@ Default = sess
245
298
246
299
## Pipeline Assumptions
247
300
248
-
* All NIFTI images are consistent with a conversion from a DICOM using `dcm2niix` ([at least v1.0.20180622](https://github.com/rordenlab/dcm2niix/releases/tag/v1.0.20180622)) by Chris Rorden and are raw NIFTIs without distortion correction. We require this as dcm2niix exports b-value/b-vector files in FSL format and removes ADC or trace images auto-generated in some Philips DICOMs. In addition `dcm2niix` correctly moves the gradients from scanner to subject space, whereas some Philips PARREC converters do not, which may result in spurious results or pipeline failure.
301
+
* All NIFTI images are consistent with a conversion from a DICOM using `dcm2niix` ([at least v1.0.20180622](https://github.com/rordenlab/dcm2niix/releases/tag/v1.0.20180622)) by Chris Rorden and are raw NIFTIs without distortion correction. We require this as dcm2niix exports b-value/b-vector files in FSL format and removes ADC or trace images auto-generated in some Philips DICOMs. In addition `dcm2niix` correctly moves the gradients from scanner to subject space and does not re-order volumes, both of which can cause spurious results or pipeline failure.
249
302
250
303
***We expect raw volumes only, no ADC or trace volumes.** ADC volumes are sometimes encoded as having a b-value greater than 0 with a corresponding b-vector of (0,0,0) and trace volumes are sometimes encoded as having a b-value of 0 with a corresponding non-unit normalized b-vector, as in the case of some Philips PARREC converters. We check for these cases, remove the affected volumes, and report a warning in the console and in the PDF.
251
304
252
-
* We cannot, unfortunately, account for failure of reorientation of gradients into subject space.
305
+
* We cannot, unfortunately, account for failure of reorientation of gradients into subject space. Visualization of tensor glyphs or principal eigenvectors can be helpful in distinguishing this. However, this error can be subtle so we suggest proper DICOM to NIFTI conversion with the above release of `dcm2niix`.
253
306
254
307
* Images will be processed in the order they are listed in dtiQA\_config.csv.
255
308
@@ -283,6 +336,8 @@ Default = sess
283
336
284
337
1. Check that all b-vectors are unit normalized and all b-values greater than zero have associated non-zero b-vectors. For any volumes where this is not the case, we remove them, flag a warning for the output PDF, and continue the pipeline.
285
338
339
+
1. If applicable, perform Gibbs de-ringing on all diffusion scans with `mrdegibbs` from MRTrix3.
340
+
286
341
1. If applicable, denoise all diffusion scans with `dwidenoise` (Marchenko-Pastur PCA) from MrTrix3.
287
342
288
343
1. If applicable, prenormalize all diffusion scans. To accomplish this, extract all b0 images from each diffusion scan and average them. Then find a rough brain-mask with FSL’s bet and calculate an intensity scale factor such that the histogram intersection between the intra-mask histogram of the different scans’ averaged b0s to that of the first scan is maximized. Apply this scale factor to the entire diffusion weighted scan. This is done to avoid gain differences between different diffusion scans.
@@ -377,7 +432,7 @@ Default = sess
377
432
378
433
1. We then visualize some central slices of the average volumes for all unique b-values, including b = 0 and report the median intra-mask SNR or CNR calculated by eddy as appropriate. If there are more unique b-values than shells deteremined by eddy, we round the b-values to the nearest 100 by default to assign volumes to shells or we choose the nearest shell indicated by the user (see `--nonzero_shells`).
379
434
380
-
1. We visualize the tensors using MRTrix3’s mrview, omitting the tensors with negative eigenvalues or eigenvalues greater than 3 times the ADC of water at 37°C.
435
+
1. We visualize the tensors (or principal eigenvectors depending on `--glyph_type`) using MRTrix3’s mrview, omitting the tensors with negative eigenvalues or eigenvalues greater than 3 times the ADC of water at 37°C.
381
436
382
437
1. We then visualize some central slices of the FA map clipped from 0 to 1 as well as the average FA for the Hopkins ROIs and the quality of the atlas registration.
383
438
@@ -415,13 +470,21 @@ Folders and files in *italics* are removed if `--keep_intermediates` is NOT indi
415
470
416
471
**\<imageN\>\_checked.bvec*
417
472
473
+
1.*DEGIBBS* (these files are only created if `--degibbs` is on)
474
+
475
+
**\<image1\_%\>\_degibbs.nii.gz*
476
+
477
+
:
478
+
479
+
**\<imageN\_%\>\_degibbs.nii.gz*
480
+
418
481
1.*DENOISED* (these files are only created if `--denoise` is on)
419
482
420
-
**\<image1\>\_checked\_denoised.nii.gz*
483
+
**\<image1\_%\>\_denoised.nii.gz*
421
484
422
485
:
423
486
424
-
**\<imageN\>\_checked\_denoised.nii.gz*
487
+
**\<imageN\_%\>\_denoised.nii.gz*
425
488
426
489
1.*PRENORMALIZED* (these files are only created if `--prenormalize` is on)
427
490
@@ -565,7 +628,13 @@ Folders and files in *italics* are removed if `--keep_intermediates` is NOT indi
565
628
566
629
1.**STATS**
567
630
568
-
***atlas\_ants\_fa.nii.gz**
631
+
***atlas2subj.nii.gz**
632
+
633
+
***b02template\_0GenericAffine.mat** or **fa2template\_0GenericAffine.mat** depending on `--atlas_reg_type`
634
+
635
+
***b02template\_1Warp.nii.gz** or **fa2template\_1Warp.nii.gz** depending on `--atlas_reg_type`
636
+
637
+
***b02template\_1InverseWarp.nii.gz** or **fa2template\_1InverseWarp.nii.gz** depending on `--atlas_reg_type`
569
638
570
639
***chisq\_mask.nii.gz**
571
640
@@ -585,7 +654,7 @@ Folders and files in *italics* are removed if `--keep_intermediates` is NOT indi
585
654
586
655
***stats.csv** (contains summary of all motion, SNR/CNR, and average FA stats)
587
656
588
-
1.**OPTIMIZED\_BVECS** (these are sign/axis permuted per `dwigradcheck` and are used for QA purposes)
657
+
1.**OPTIMIZED\_BVECS** (these are sign/axis permuted per `dwigradcheck` and are only used for QA purposes)
0 commit comments