Questions about functional connectivity processing

I’m trying to have fMRI rest data preprocessed and ready for group functional connectivity analysis. I followed the instructions for the preprocessing steps (BOLD task-evoked and resting-state functional connectivity preprocessing — QuNex documentation) and also looked at this post ([RESOLVED] How to set up a connectivity analysis?). After running all the steps I noticed that they were only applied to the nifti bold runs but no to the cifti.

Here are my questions:

  1. Which of these steps described in the wiki (create_bold_brain_masks, compute_bold_stats, create_stats_report, extract_nuisance_signal) applies to nifti and cifti bold runs?
  2. Assuming that all the above steps apply to cifti bold runs, is there a specific parameter needed for them?
  3. After the above steps are completed and followed by functional connectivity proper, is there a difference in the output files between:
    • Doing Resting-state parcellated connectivity with the parameter --computepconn=“yes”
    • Using the ptseries.nii file from running “parcellate_bold” as input to Resting-state global brain Connectivity ?(GBC)

Thank you.

Estephan

Estephan, hi!

1/
As you have noticed, some of the additional steps for preparing data for functional connectivity analysis are performed on NIfTI data only, whereas some are performed on NIfTI and CIFTI separately. Specifically, the steps that you have listed:

  • create_bold_brain_mask
  • compute_bold_stats
  • create_stats_report
  • extract_nuisance_signal

Are run on NIfTI volume representation only. Brain masks can not be prepared based on surface (CIFTI) representation, and most of nuisance signals (ventricles, white matter) are also not present in the surface representation of the BOLD runs. For these reasons masks, statistics and nuisance regressors are prepared based on the volume representation for further analyses whether they are performed on volume or surface representation of BOLD signal.

2/
Only the last step, preprocess_bold or preprocess_conc needs to be performed on the signal representation with which you would like to perform the final analyses. All the previously prepared results will be used automatically in this step whether the target are NIFTI or CIFTI files. In this step the representation you would like to use, i.e. whether you would like to work with NIFTI or CIFTI files, is specified by image_target parameter, which should be set to ‘nifti’ for NIfTI volume files and ‘dtseries’ for CIFTI surface data representation.

3/
I would need to double-check this with colleagues (in my own research I exclusively use the available specific fc_compute_* and fc_extract_* matlab commands rather than the fc_compute_wrapper and parcellate_bold commands. As you have reasoned, some of the results should be the same, however the path to it is different.

If you are interested in obtaining (N x N) functional connectivity matrix between N parcells, then you can use computepconn option and the matrix will be computed by wb_command when parcellating the files. I believe that in this case, the matrix is computed for a single bold only. You can achieve the same by first parcellating the files and then using fc_compute_roifc[_group] command (an update for these fc functions is coming in near future).

If you are interested in computing parcellated GBC (which is a vector of size N), you would need to parcellate first and then run either the fc_compute_gbc3 command or use the fc_compute_wrapper with the additional GBC related parameters.

All the best,

Grega