Hello,
Summary of what happened:
I’m running into an issue with XCP-D while trying to process ABCD data downloaded via Datalad.
Setup:
- Data: ABCD dataset, downloaded with Datalad.
- Container: Singularity container for XCP-D.
- Version: XCP-D v0.10.0rc3
Problem:
- When I specify the arguments that seem appropriate for the data (i.e., setting
-mode 'abcd'
and-input-type fmriprep
) XCP-D throws an error that it cannot locate the MNI infant template. This doesn’t make sense, as my data is in fsLR space (it appears to look for the MNI infant template by default, whether I include-mode 'abcd'
or-mode 'none'
) - To get around this, I tried using
-input-type hcp
, even though the data is from ABCD. This bypassed the MNI infant template error, but it led to another issue:- I now get an error message saying XCP-D “cannot find fsLR files,” even though the fsLR files are definitely present. The file permissions and paths look correct, and I verified that it’s a CIFTI file in fsLR 91k density format. I’m afraid that using the wrong input type (hcp instead of fmriprep) may be contributing to this error.
- I have also tried specifying a bids-filter-file, but this yields the same error
Is there a better workaround than using --input-type hcp
? Am I missing something else in the setup? Any insights on how to get XCP-D to recognize the fsLR files would be greatly appreciated.
One of the latest commands I’ve tried (for a single subject), though I’ve tested various iterations including different combinations of the arguments, without success:
singularity run -B /data/pt_02667/data/ABCD:/home/xcp_data \
--home /home/xcp \
--cleanenv /data/u_serio_software/xcp_d-0.10.0rc3.simg \
/home/xcp_data/ABCD_fMRIprep/fmriprep \
/home/xcp_data/XCP-D_output \
participant \
--mode 'none' \
--participant-label 'NDARINV00CY2MDM' \
--bids-filter-file /home/xcp_data/bianca/bids_filter_file.json \
--datasets custom=/home/xcp_data/bianca \
--nprocs 36 \
--input-type 'hcp' \
--file-format 'cifti' \
--dummy-scans 'auto' \
--despike 'y' \
--nuisance-regressors /home/xcp_data/bianca/custom_confounds_24P_csf_wm.yaml \
--fd-thresh 0.3 \
--output-type 'censored' \
--combine-runs 'n' \
--smoothing 6 \
--motion-filter-type 'none' \
--head-radius 50 \
--lower-bpf 0.01 \
--upper-bpf 0.08 \
--bpf-order 2 \
--min-time 240 \
--atlases '4S456Parcels' \
--min-coverage 0.5 \
--create-matrices 300 \
--work-dir /data/pt_02667/data/ABCD/ \
--warp-surfaces-native2std 'y' \
--abcc-qc 'n' \
--linc-qc 'n'
Associated error:
2024-11-14 14:00:59,044 [IMPORTANT] Running XCP-D version 0.10.0rc3
241114-14:00:59,53 nipype.workflow IMPORTANT:
Building XCP-D's workflow:
* Preprocessing derivatives path: /data/pt_02667/data/ABCD/dset_bids/derivatives/hcp.
* Participant list: ['NDARINV00CY2MDM'].
* Run identifier: 20241114-140047_2feb386d-1d56-4d64-983e-a1971d5bd1d2.
* Searching for derivatives and atlases: {'custom': PosixPath('/home/xcp_data/bianca'), 'xcpdatlases': PosixPath('/usr/local/miniconda/lib/python3.10/site-packages/xcp_d/data/atlases'), 'xcpd4s': PosixPath('/AtlasPack')}.
2024-11-14 14:00:59,053 [IMPORTANT] Building XCP-D's workflow:
* Preprocessing derivatives path: /data/pt_02667/data/ABCD/dset_bids/derivatives/hcp.
* Participant list: ['NDARINV00CY2MDM'].
* Run identifier: 20241114-140047_2feb386d-1d56-4d64-983e-a1971d5bd1d2.
* Searching for derivatives and atlases: {'custom': PosixPath('/home/xcp_data/bianca'), 'xcpdatlases': PosixPath('/usr/local/miniconda/lib/python3.10/site-packages/xcp_d/data/atlases'), 'xcpd4s': PosixPath('/AtlasPack')}.
Process Process-2:
Traceback (most recent call last):
File "/usr/local/miniconda/lib/python3.10/multiprocessing/process.py", line 314, in _bootstrap
self.run()
File "/usr/local/miniconda/lib/python3.10/multiprocessing/process.py", line 108, in run
self._target(*self._args, **self._kwargs)
File "/usr/local/miniconda/lib/python3.10/site-packages/xcp_d/cli/workflow.py", line 100, in build_workflow
retval["workflow"] = init_xcpd_wf()
File "/usr/local/miniconda/lib/python3.10/site-packages/xcp_d/workflows/base.py", line 81, in init_xcpd_wf
single_subject_wf = init_single_subject_wf(subject_id)
File "/usr/local/miniconda/lib/python3.10/site-packages/xcp_d/workflows/base.py", line 127, in init_single_subject_wf
subj_data = collect_data(
File "/usr/local/miniconda/lib/python3.10/site-packages/xcp_d/utils/bids.py", line 212, in collect_data
raise FileNotFoundError(
FileNotFoundError: No BOLD data found in allowed spaces (fsLR).
Query: {'datatype': 'func', 'desc': ['preproc', None], 'suffix': 'bold', 'extension': '.dtseries.nii', 'session': ['baselineYear1Arm1'], 'task': ['rest'], 'space': 'fsLR'}
Found files:
Thanks a lot in advance,
Bianca