help > CONN25.b fMRIPrep project: QC displays hang after Setup/Denoising tab despite ART covariates being created
4 hours ago | Marco Echevarria - USP
CONN25.b fMRIPrep project: QC displays hang after Setup/Denoising tab despite ART covariates being created

Dear Alfonso and CONN experts,


I am working on a CONN25.b project using fMRIPrep-preprocessed resting-state fMRI data. The dataset has 600 subjects and is stored on an external SSD. The project uses fMRIPrep outputs in MNI152NLin6Asym 2-mm space. Functional images were smoothed in CONN, and the subject-specific GM/WM/CSF ROIs were manually corrected to the corresponding fMRIPrep MNI-space probability maps. For WM/CSF extraction, the source functional data is set to the unsmoothed functional data.


I initially encountered the previously reported CONN25.b error in the Denoising & Quality Control window:


Index exceeds the number of array elements. Index must not exceed 0.


Error in conn (line 7570)
if conn_existfile(fullfile(CONN_x.Preproc.qa.folders{3},'DataSensitivityScore.mat'))


Following the forum recommendation, I updated conn.m from the GitHub master branch. Later, to avoid a possible mixed installation, I installed the full CONN master branch in a separate folder and confirmed that MATLAB is using only that version:


which conn -all
/Users/marcoechevarria/Downloads/conn_master/conn.m


which conn_qascores -all
/Users/marcoechevarria/Downloads/conn_master/conn_qascores.m


which conn_process -all
/Users/marcoechevarria/Downloads/conn_master/conn_process.m


which conn_display -all
/Users/marcoechevarria/Downloads/conn_master/conn_display.m


The functional outlier detection / ART step appears to have completed successfully. In the Denoising tab, the confounds include:


White Matter (5P)
CSF (5P)
realignment (12P)
scrubbing (63P)
Effect of rest (2P)


The CONN_x covariates also suggest that ART/QC variables were created. For example, the first-level covariates include realignment, scrubbing, QC_timeseries, QC_framewise_displacement, QC_dvars, etc. The second-level covariates include:


QC_ValidScans
QC_InvalidScans
QC_ProportionValidScans
QC_MaxMotion
QC_MeanMotion
QC_MaxGSchange
QC_MeanGSchange
QC_DOF
QC_DOF_WelchSatterthwaite
QC_PeakFC


The Data Quality / QC-FC display also computes successfully, although the score is poor:


Data Quality score: 52.1%
QC-FC correlation analyses: n = 600


However, Data Validity and Data Sensitivity do not complete. The GUI repeatedly hangs at:


Creating QC displays. Please wait...


When checking:


global CONN_x
numel(CONN_x.Preproc.qa.folders)
CONN_x.Preproc.qa.folders'


I get:


ans =
3


ans =
3×1 cell array


{0×0 double}
{'/Volumes/Extreme SSD/Analise/Projeto_1/results/qa/QA_GUIrequest_DataQuality_2026_06_09'}
{0×0 double}

So, only the Data Quality folder seems to have been created. Data Validity and Data Sensitivity remain empty/outdated.


I also checked for the covariates that I believe should be created by Data Validity:


global CONN_x
names = CONN_x.Setup.l2covariates.names;


names(contains(names,'QC_StdFC','IgnoreCase',true) | ...
contains(names,'QC_NORM','IgnoreCase',true) | ...
contains(names,'QC_IqrFC','IgnoreCase',true) | ...
contains(names,'QC_MeanFC','IgnoreCase',true))'


This returns an empty cell array.


I then tried to run Data Validity manually:


global CONN_x


folderDV = fullfile(CONN_x.folders.qa, ['QA_GUIrequest_DataValidity_manual_', datestr(now,'yyyy_mm_dd_HHMMSS')]);


scoreDV = conn_qascores('DataValidity', folderDV, 1.Setup.nsubjects);


but this again opens the “Creating QC displays. Please wait...” window and appears to hang indefinitely, with MATLAB using very little CPU.


A similar issue seems related to a recent forum post by Joshua Neal from May 2, 2026, where DataValidity/DataSensitivity/QC display errors occurred after the conn.m patch in a CONN25.b + fMRIPrep project.


My questions are:



  1. Does the functional outlier detection / ART step appear to have completed correctly based on the presence of scrubbing, realignment, QC_ProportionValidScans, QC_InvalidScans, QC_MeanMotion, and QC_MeanGSchange?
  2. Is DataValidity expected to create QC_IqrFC, QC_MeanFC, and QC_StdFC only after the denoising step has been fully run?
  3. Should I proceed to run the Denoising step first and then recompute Data Validity / Data Quality / Data Sensitivity afterwards?
  4. Is there a recommended way to compute DataValidity and DataSensitivity without using the GUI QC display generation, or to bypass the hanging QA plot generation?
  5. Could the issue be related to fMRIPrep projects in CONN25.b, or to empty/missing QA_COV / QA_DENOISE histogram data?

For reference, my current setup is:


CONN25.b / CONN GitHub master tested
SPM25
MATLAB R2021b initially; full CONN master also tested
fMRIPrep-preprocessed data
600 subjects
Functional data in MNI152NLin6Asym_res-2 space
GM/WM/CSF ROIs corrected to MNI152NLin6Asym_res-2 probability maps


Thank you very much for your help.
Best regards,
Marco Echevarria