Hi all,
I’m running fmriprep 1.4.1 on a linux cluster and paving the way for our large lab to move to fmriprep. I had to pip install fmriprep because our admins don’t allow docker or singularity.
Everything is working great and I get no errors. There are some sklearn deprecation warnings that seem innocuous for now.
The issue I have is with each subject’s summary report. Unless --ignore fieldmaps is called, the reports don’t include any functional figures, although those figures exist in the appropriate reportlets subdir. The html report navbar does not include the “functional” tab, either. If I do call --ignore fieldmaps, the report includes functional figures and navbar tab, but obviously fieldmaps are left out of the pipeline and report. Again, there are no errors for either call.
Does anyone have an intuition as to what is happening or how I can attempt to debug this? Apologies that I’m not providing much to go off of. At this point, I’m at a loss.
Thank you,
Walter
This is very likely a problem of an outdated niworkflows or pybids dependency. Can you post the output of:
pip freeze
Thanks
Hi Oscar,
Thanks for your reply. Pip freeze output is attached
Thanks,
Walter
7_30_19_crick_pipfreeze.txt (1.3 KB)
backcall==0.1.0
bids-validator==1.2.4
bx-python==0.8.2
certifi==2019.6.16
chardet==3.0.4
citeproc-py==0.4.0
Click==7.0
CrossMap==0.3.3
cycler==0.10.0
Cython==0.29.5
decorator==4.3.2
docopt==0.6.2
duecredit==0.7.0
fmriprep==1.4.1
funcsigs==1.0.2
future==0.17.1
grabbit==0.2.6
idna==2.8
imageio==2.5.0
indexed-gzip==0.8.10
ipython==7.2.0
ipython-genutils==0.2.0
isodate==0.6.0
jedi==0.13.2
Jinja2==2.10.1
joblib==0.13.2
kiwisolver==1.0.1
lockfile==0.12.2
lxml==4.3.4
MarkupSafe==1.1.1
matplotlib==3.0.2
networkx==2.3
neurdflib==5.0.0.post1
nibabel==2.4.1
nilearn==0.5.2
nipype==1.2.0
nitime==0.8.1
niworkflows==0.9.6
num2words==0.5.10
numpy==1.16.1
packaging==19.0
pandas==0.25.0
parso==0.3.3
patsy==0.5.1
pexpect==4.6.0
pickleshare==0.7.5
Pillow==6.1.0
prompt-toolkit==2.0.8
prov==1.5.3
psutil==5.6.3
ptyprocess==0.6.0
pybids==0.7.1
pyBigWig==0.3.13
pydot==1.4.1
pydotplus==2.0.2
Pygments==2.3.1
pyparsing==2.3.1
pysam==0.15.2
python-dateutil==2.8.0
pytz==2019.1
PyWavelets==1.0.3
PyYAML==5.1.1
rdflib==4.2.2
requests==2.22.0
scikit-image==0.15.0
scikit-learn==0.21.2
scipy==1.2.1
seaborn==0.9.0
sentry-sdk==0.10.2
simplejson==3.16.0
six==1.12.0
smriprep==0.2.4
statsmodels==0.10.0
svgutils==0.3.1
tedana==0.0.7
templateflow==0.3.0
tqdm==4.32.2
traitlets==4.3.2
traits==5.1.2
urllib3==1.25.3
versioneer==0.18
wcwidth==0.1.7
It looks good at a glimpse. Can you send us two example reports? One with --ignore fieldmaps
and one without. Please zip in not just the sub-XXXXX.html file, but also the sub-XXXXX/figures folder.
It could also be helpful see the output log with the -vv
flag added in.
Here’s a link to the reports https://drive.google.com/file/d/18gX4-SUTo6LuxqWzvV-B35eWMYYxYk9j/view?usp=sharing
For the log, is it sufficient to run --reports-only and -vv or should a I completely rerun a subject?
Thanks very much.
Can you try replacing the deprecated --output-space
with the new --output-spaces
(please note the plural in spaces):
fmriprep /group/dml/alex/CamCAN_Alex/CamCan/ /home/wbreilly/wbr_can_CamCan/output/ participant --participant_label sub-CC110069 -w /home/wbreilly/wbr_can_CamCan/working2/ --nthreads 8 --mem_mb 9000 --n_cpus 8 --output-spaces anat --fs-no-reconall -vv &> send_to_oe.log
Also, I would recommend to drop --resource-monitor
for now.
And yes, a full run, on a clean working directory (that’s why I wrote working2
) would be very much appreciated.
Thanks for your patience!
I really appreciate your time with this and for your fmriprep development in general, no need to thank me for messing it up 
Previously, I didn’t use --ouput-spaces because it snags fairly quickly. Sorry, I should have mentioned that in my first post. I ran what you requested above and that log is attached.
Looking at that log, you’ll see that fmriprep can’t locate the BIDS validator. Not sure why that is as you could see it was in the list from pip freeze. I manually checked for BIDS validation, but maybe the freesurfer output is causing trouble? Here’s the dir structure in our sample subject as well

send_to_oe.txt (3.2 KB)
1 Like
Sorry that’s a known bug in 1.4.1, I should’ve remembered.
Can you please try instead:
fmriprep /group/dml/alex/CamCAN_Alex/CamCan/ /home/wbreilly/wbr_can_CamCan/output/ participant --participant_label sub-CC110069 -w /home/wbreilly/wbr_can_CamCan/working2/ --nthreads 8 --mem_mb 9000 --n_cpus 8 --output-spaces MNI152NLin2009cAsym anat --fs-no-reconall -vv &> send_to_oe.log
1 Like
Sorry for the delay seemed like the site was down earlier today
send_to_oe_output4.txt (694.7 KB)
and the html
1 Like
Can you post the output of tree /home/wbreilly/wbr_can_CamCan/output/
and tree /home/wbreilly/wbr_can_CamCan/working2/reportlets
?
1 Like
I prepared and ran a different dataset yesterday and it looks like the html reports are complete. I will look for differences between the two datasets and post if I find a solution
1 Like
Yeah, it seems like a one-off problem, your outputs look good indeed.
1 Like
One question, can you post the JSON sidecar corresponding to the fieldmaps in this failing subject?
After fixing the fmap json, I finally got everything to work only after all the permutations of setups I could think of. The only one that was successful was when the func json files were subject specific, in the func folder, and included ‘run-1’. I never saw any error message that pointed to this solution (or any problem for that matter).
Hopefully this is just a one-off problem related to our HPC cluster and pip installation method. I really appreciate the time taken to help me rule out possible problems.
Cheers,
Walter