UNI PROCESSING PIPELINE

1. Run Hera/Projects/SPA/scripts/mri/preproc/00_bids-t1-only.bash to link Hera/Raw/BIDS/SPA/sub-$/ses-$/anat/*UNIT1* to Hera/Projects/SPA/scripts/mri/fs/bids-t1only

2. Run Hera/Projects/SPA/scripts/mri/preproc/01_denoise_unicort.bash to denoise and UNICORT correct the UNIT1. The output is Hera/Projects/SPA/scripts/mri/fs/bids-t1only/sub-$/ses-$/anat/msub-$_ses-$_DEN-10.nii

3. Run Hera/Projects/SPA/scripts/mri/preproc/02_fs.bash to run freesurfer on denoised and unicort corrected UNI images. The output is Hera/Projects/SPA/scripts/mri/fs/7.4.1-denunicort-hires

4. Run Hera/Projects/SPA/scripts/mri/preproc/02.2_fs-hcseg_fs.bash to perform amygdala-hippocampal segmentation via freesurfer. The output is in each subject's fs output

At any point, to check how many scans have undergone each processing step above, run Hera/Projects/SPA/scripts/mri/preproc/counts.bash! This provides the number of scans that have been linked from BIDS to bids-t1only, denoised, unicort corrected, and processed with freesurfer recon-all and freesurfer segmentHA_T1.sh.

bids_anat()  { find Hera/Raw/BIDS/SPA/sub-*/ses-*/anat -iname '*UNIT1*'; }
ls_reconlog(){ ls Hera/Projects/SPA/scripts/mri/fs/7.4.1-denunicort-hires/ses-*/sub-*/scripts/recon-all.done; }

comm -23 \
  <(bids_anat | sed -E 's|.*/(sub-[^_]+_ses-[^_]+)_.*|\1|' | sort -u) \
  <(ls_reconlog | sed -E 's|.*/(ses-[^/]+)/(sub-[^/]+)/.*|\2_\1|' | sort -u)

R1 PROCESSING PIPELINE

1. Run Hera/Projects/SPA/scripts/mri/preproc/04_qT1_R1.bash to generate raw and UNICORT-corrected R1 maps from raw UNI data. The output is Hera/Projects/SPA/scripts/mri/R1/sub-$/ses-$/sub-$_ses-$_R1map.nii.gz

  1. MP2RAGE.B0 = 7 . This is the # of Teslas
  2. MP2RAGE.TR = 6 . This is the typical repetition time, stored in RepetitionTime in the json sidecars. It is 6 for all scans
  3. MP2RAGE.TRFLASH = 6.3e-3 . This is the TR of the GRE readout aka TR of underlying 3D GRE readout train used to sample k-space after each inversion. This was obtained from the Siemens protocol PDFs (same pre and post update) from “Echo Spacing”. Confirmed the Echo spacing is the correct parameter with Chan
  4. MP2RAGE.TIs = [800e-3 2700e-3] . This is the inversion times for INV1 and INV2 images. This is the InversionTime in the json sidecars. It is 0.8 / 2.7 s for all scans
  5. MP2RAGE.FlipDegrees=[4 5] . This is the flip angle for INV1 and INV2. It is FlipAngle in the json sidecars. It is 4 / 5 for all scans
  6. MP2RAGE.NZslices is equal to the number of slices reported in the z-direction in the data, adjusted for oversampling. The equation is round(nz * (1 + oversample/100)); where nz = slices in z direction (“nk”), oversample is obtained from the scanner PDF or the siemens private header CSA value for 'sKSpace.dSliceOversamplingForDialog'