Quick_validation_failed

Hello,
We try to run fMRIprep but we encounter some problems with BIDS validation.
Here is our folder structure:

├── dataset_description.json
├── derivatives
├── participants.tsv
└── sub-001
│ └── ses-1
│ │ ├── anat
│ │ │ ├── sub-001_T1w.json
│ │ │ └── sub-001_T1w.nii
│ │ └── func
│ │ │ ├── sub-001_task-fluence_run-01_bold.json
│ │ │ ├── sub-001_task-fluence_run-01_bold.nii
│ │ │ └── sub-001_task-fluence_run-01_bold.tsv

We run : fmriprep-docker sub-001 derivatives participant

And here are the errors:
1: [ERR] Files with such naming scheme are not part of BIDS specification.
2: [ERR] There are no subject folders (labeled “sub-*”) in the root of this dataset.
3: [ERR] Dataset does not contain any T1w scans
4: [ERR] Subject label in the filename doesn’t match with the path of the file.

And the result:
Summary: Available Tasks: Available Modalities:
5 Files, 112.29MB
0 - Subjects
1 - Session

What are we missing ?
Thanks a lot in advance,
LT

I believe there are two possible ways to fix this. First is to encode the session information in the filenames, so sub-001_ses-1_T1w.json The other would be to move anat and func up a directory and remove the now empty ses-1 directory.

Having the session in the filename while being in the session directory may seem redundant but it ensures every filename is unique in the dataset.

- Ross

Thank you very much for your quick answer !

  1. result with the first option:

├── dataset_description.json
├── derivatives
├── participants.tsv
└── sub-001
│ └── ses-1
│ │ ├── anat
│ │ │ ├── sub-001_ses-1_T1w.json
│ │ │ └── sub-001_T1w.nii
│ │ └── func
│ │ │ ├── sub-001_ses-1_task-fluence_run-01_bold.json
│ │ │ ├── sub-001_task-fluence_run-01_bold.nii
│ │ │ └── sub-001_task-fluence_run-01_bold.tsv

1: [ERR] Files with such naming scheme are not part of BIDS specification.
2: [ERR] There are no subject folders
3: [ERR] Dataset does not contain any T1w scans.
4: [ERR] Subject label in the filename doesn’t match with the path of the file.
5: [ERR] Session label in the filename doesn’t match with the path of the file

2 result with the second option:

├── dataset_description.json
├── derivatives
├── participants.tsv
└── sub-001
│ ├── anat
│ │ ├── sub-001_T1w.json
│ │ └── sub-001_T1w.nii
│ └── func
│ │ ├── sub-001_task-fluence_run-01_bold.json
│ │ ├── sub-001_task-fluence_run-01_bold.nii
│ │└── sub-001_task-fluence_run-01_bold.tsv

1: [ERR] Quick validation failed - the general folder structure does not resemble a BIDS dataset.

Maybe I did not understand very well the suggestions ?

Thanks

One other thing while playing around with a test dataset I had to change sub-001_task-fluence_run-01_bold.tsv to sub-001_task-fluence_run-01_events.tsv

Thanks again.
I changed the three filenames inside “func” directory with “events” instead of “bold” but still the same error message:
1: [ERR] Quick validation failed - the general folder structure does not resemble a BIDS dataset.
:pensive:

Ahoi hoi,

assuming, you still run fmriprep as follows:

the problem might also be in the call and not only in the file names (which were all pointed out by @rwblair).
Your dataset should look something like:

├── dataset_description.json
├── derivatives
├── participants.tsv
└── sub-001
│ └── ses-1
│ │ ├── anat
│ │ │ ├── sub-001_ses-1_T1w.json
│ │ │ └── sub-001_ses-1_T1w.nii
│ │ └── func
│ │ │ ├── sub-001_ses-1_task-fluence_run-01_bold.json
│ │ │ ├── sub-001_ses-1_task-fluence_run-01_bold.nii
│ │ │ └── sub-001_ses-1_task-fluence_run-01_events.tsv

and the fmriprep call should be:

fmriprep-docker bids_dir output_dir analysis_level.

In your call, you’re missing the positional bids_dir argument or rather setting it in the wrong way, as you’re pointing to sub-001 which will in turn be mapped/treated as the input directory of your data in BIDS.
Hence, you need to specify the absolute path of your BIDS dataset and not that or the identifier of the participant you want to process:

fmriprep-docker path/to/BIDS/dataset path/to/BIDS/dataset/derivatives analysis_level .

For further information, please also have a look at the corresponding section of the fmriprep docs.

HTH, cheers, Peer

Great !!! It works.

Danke !