Hi Everyone,
I am working with multi echo resting state fMRI data. So far, I have preprocessed the images using fMRIPrep and respectively tedana to denoise the data. Further, I have transformed tedana’s output from native to standard space for my further analysis. My question is regarding the QC of the processed images (in native sapce): I have not found clear guidelines on steps to consider for the QC of tedana’s output. From the papers I read (e.g., Kunu 2013, and Roni Setton 2023) , I came across the following steps to be considered for the QC.
- Assess whether DVARS and FD are more decoupled after denoising (optimally combined data from tedana vs fmriprep preproc outpout or the high kappa vs low kappa data).
- Assess whether tSNR>50
- Remove participants with less than 10 bold components identified in tedana (considering that aic was chosen for tedpca in tedana).
- FD>0.50 coupled with denoised timeseries showing DVARS>1.
To address 1 and 3:
I used “fsl_motion_outliers” to compute DVARS and FD from the outputed image by fMRIPrep (space-MNI152NLin2009cAsym_res-2_desc-preproc_bold.nii.gz) and tedana (space-Native_desc-optcom_bold.nii.gz) to see how these two parameters are changed afterwards. When computing DVARS, I have the following issues which I highly appreciate clarification on them:
The command fsl_motion_outliers applies motion correction while fmriprep output is motion corrected (if I am not mistaken fMRIPrep applies motion correction while estimating confounds for further corrections). Accordingly, I both remove and include the –nomoco flag to apply or prevent fsl from applying the motion correction (which preventing the correction results in negative DVARS values). Also, the amplitude of the data DVARS computed using the fsl command has a different scale than the one estimated from fMRIPrep (in the fsl website they mention that “the dvars metric is scaled to approximately match what is done in Power et al. - dividing by the median brain intensity and then multiplying by 1000” . Also, regardless of the scale, when I plot the DVARS for the fMRIPrep ouput and the denoised tedana (optimally combined), tedana’s dnoised data has almost the same DVARS as the fMRIPrep output’s!!
In summary:
- Does fMRIPrep apply motion correction or it estimates the motion parameters and provides them as confounds (should I include motion correction in my fsl command to estimate DVARS)?.
- Does fMRIPrep use fsl to estimate FD and DVARS (to ensure how to address the scale difference between the DVARS resported by fMRIPrep and the one estimated by fsl)?
- Does the fact that my tedana image is in the native space and the fMRIPrep is in the standard space has an effect on comparability of the estimated DVARS?
To address the tSNR QC step:
I computed the tSNR maps using fslmaths to estimate Tstd and Tmean and dividning them by eachother. I am not sure how I should address the tSNR>50 proposed in the papers? should I create a GM mask and average the tSNR image values within that mask?
Lastly, how should I check the suggetsed step from setton 2023, “FD>0.50 coupled with denoised timeseries showing DVARS>1”, is it the average of the FD and DVARS per participants estimated and checked with the criteria, would you have any suggestions on that?
Many thanks in advance,
Ali
Command used:
FD/DVARS code:
fsl_motion_outliers -i /lustre04/scratch/javan/ME_Feb2024/wave2_final/derivatives/sub-xxSUBJECT_IDxx/sub-xxSUBJECT_IDxx/ses-xxSESSIONxx/func/sub-xxSUBJECT_IDxx_ses-xxSESSIONxx_task-rest_run-01_space-MNI152NLin2009cAsym_res-2_desc-preproc_bold.nii.gz -o dvars_motion_outliers_fprep_xxSUBJECT_IDxx.tsv --dvars -s dvars_values_fprep_xxSUBJECT_IDxx.tsv -p dvars_fprep_xxSUBJECT_IDxx.png --dummy=4 -v --thresh=30
fsl_motion_outliers -i /lustre04/scratch/javan/ME_Feb2024/wave2_final/derivatives/tedana/sub-xxSUBJECT_IDxx_ses-xxSESSIONxx/sub-xxSUBJECT_IDxx_ses-xxSESSIONxx_task-_space-Native_desc-optcom_bold.nii.gz -o dvars_motion_outliers_tedana_xxSUBJECT_IDxx.tsv --dvars -s dvars_values_tedana_xxSUBJECT_IDxx.tsv -p dvars_tedana_xxSUBJECT_IDxx.png --dummy=4 -v --thresh=30
tSNR code:
fslmaths /lustre04/scratch/javan/ME_Feb2024/wave2_final/derivatives/tedana/sub-xxSUBJECT_IDxx_ses-xxSESSIONxx/sub-xxSUBJECT_IDxx_ses-xxSESSIONxx_task-_space-Native_desc-optcom_bold.nii.gz -Tmean /lustre04/scratch/javan/ME_Feb2024/wave2_final/FD_DVARS/tSNR/denoised/sub-xxSUBJECT_IDxx/mean_image_xxSUBJECT_IDxx.nii.gz
fslmaths /lustre04/scratch/javan/ME_Feb2024/wave2_final/derivatives/tedana/sub-xxSUBJECT_IDxx_ses-xxSESSIONxx/sub-xxSUBJECT_IDxx_ses-xxSESSIONxx_task-_space-Native_desc-optcom_bold.nii.gz -Tstd /lustre04/scratch/javan/ME_Feb2024/wave2_final/FD_DVARS/tSNR/denoised/sub-xxSUBJECT_IDxx/std_image_xxSUBJECT_IDxx.nii.gz
fslmaths /lustre04/scratch/javan/ME_Feb2024/wave2_final/FD_DVARS/tSNR/denoised/sub-xxSUBJECT_IDxx/mean_image_xxSUBJECT_IDxx.nii.gz -div /lustre04/scratch/javan/ME_Feb2024/wave2_final/FD_DVARS/tSNR/denoised/sub-xxSUBJECT_IDxx/std_image_xxSUBJECT_IDxx.nii.gz /lustre04/scratch/javan/ME_Feb2024/wave2_final/FD_DVARS/tSNR/denoised/sub-xxSUBJECT_IDxx/tsnrxxSUBJECT_IDxx.nii.gz
Version: fMRIPrep v23.2.0, tedana v0.0.12
Environment ( Singularity )
Data formatted according to a validatable standard?
Data is BIDS Validated