Tractoflow v2.4.2 issue - no subjects found

I upgraded Nextflow (v 21.04.0) and upgraded Tractoflow to what I think is version 2.4.2 - I downloaded the SIF file which was named scilus_1.5.0.sif.

I tried the following call to tractoflow, but I get a ‘Revision option cannot be used running a script’

Here is my call (vars in curly braces are preceded by a dollar sign, are Bash string vars)

nextflow run tractoflow -r 2.4.2
–bids {basefolder}/{projectname}
–dti_shells “0 1000”
–fodf_shells “0 1000 2000”
-with-singularity {basefolder}/singularity/scilus_1.5.0.sif
–participants_label {subjid}

I then replaced the first line without the ‘-r 2.4.2’, that is, just used "nextflow run tractoflow " on the first line and then tractoflow does start running. Do I need to use -r 2.4.2, or can I leave it out?

But I get the following error:
ERROR - No subjects found. Please check the naming convention <etc.>

I do have a valid subject in the BIDS folder however (sub-S6581DHW) and the BIDS structure checks out with bids-validator.

Is my call to Tractoflow above correct? I used to use ‘–participant_label’ to specify a subject, but does that not work anymore?

My BIDS structure for my subject is as follows:

under folder.sub-S6581DHW

±- ses-01
±- anat
¦ ±- sub-S6581DHW_ses-01_T1w.json
¦ ±- sub-S6581DHW_ses-01_T1w.nii.gz
¦ ±- sub-S6581DHW_ses-01_T2w.json
¦ ±- sub-S6581DHW_ses-01_T2w.nii.gz
±- dwi
¦ ±- sub-S6581DHW_ses-01_acq-dir91LR_dwi.bval
¦ ±- sub-S6581DHW_ses-01_acq-dir91LR_dwi.bvec
¦ ±- sub-S6581DHW_ses-01_acq-dir91LR_dwi.json
¦ ±- sub-S6581DHW_ses-01_acq-dir91LR_dwi.nii.gz
¦ ±- sub-S6581DHW_ses-01_acq-dir91LR_sbref.json
¦ ±- sub-S6581DHW_ses-01_acq-dir91LR_sbref.nii.gz
¦ ±- sub-S6581DHW_ses-01_acq-dir91RL_dwi.bval
¦ ±- sub-S6581DHW_ses-01_acq-dir91RL_dwi.bvec
¦ ±- sub-S6581DHW_ses-01_acq-dir91RL_dwi.json
¦ ±- sub-S6581DHW_ses-01_acq-dir91RL_dwi.nii.gz
¦ ±- sub-S6581DHW_ses-01_acq-dir91RL_sbref.json
¦ ±- sub-S6581DHW_ses-01_acq-dir91RL_sbref.nii.gz
±- fmap
±- sub-S6581DHW_ses-01_acq-dir91LR_epi.json
±- sub-S6581DHW_ses-01_acq-dir91LR_epi.nii.gz
±- sub-S6581DHW_ses-01_acq-dir91RL_epi.json
±- sub-S6581DHW_ses-01_acq-dir91RL_epi.nii.gz

Here are the contents of my BIDS {projectname} folder



Dear @Chyatt,

We are about to release a new version of tractoflow with an updated version of the tool that reads BIDS input. It should be ready by the end of next week, we found out that our previous instance of tractoflow was not able to handle sbref structures. It has been fixed but if possible to share, I would like to give it a try with your data. If you can’t share it you can give a try at the new version of the tool by locally installing scilpy and test the script . You can share the output of this script and I’ll be able to tell you if everything has been working properly. That would be a great test for our new release.


Yes, I’d like to give a try. I will check for the new version late next week.

I have been using Tractoflow v2.2.1 with success. When using 2.2.1, I use just one left-right (LR) spin echo DWI (91 directions) data file, corrected for susceptibility using a single right-left (RL) field map.

Can the updated version of Tractoflow handle two DWI (a LR and a RL phase encoded) files corrected by two LR and RL field maps (as shown my newer BIDS tree above), so should I continue to use just the single field map correction with the single DWI file?

Thanks, Chris

The new version will be able to handle the two dwi LR/RL combined with the 2 LR/RL field maps.
As I said, if you send me one subject I would able to validate that everything works with tractoflow and your data, if not I’ll also be able to fix it before the release.

We will let you know about the new tractoflow asap.


Arnaud, thanks for your offer. Unfortunately, I cannot share my data, at least not in such a short timeframe, due to our institution’s human subject regulations. However, I can test it thoroughly on my end when updated code is available. Let me know what I can do to help test/debug. I am thoroughly familiar with Python, Matlab, bash, fsl, afni, spm, etc…

That’s good news that we can now use both phase encoding directions with both sets of field maps for distortion correction.


Great, can you install scilpy and test the command on your bids structure ? Please send me the output json file.