qsiprep icon indicating copy to clipboard operation
qsiprep copied to clipboard

no figures included in HTML report

Open giulia-berto opened this issue 2 years ago • 12 comments

No figures are included in the HTML report after the preprocessing step. The folder <outdir>/sub-<sub>/figures is in fact empty. This happens with versions 0.14.2, 0.14.3, 0.15.3, but not with version 0.13.0RC1 (with which figures are correctly displayed in the report).

giulia-berto avatar Mar 17 '22 00:03 giulia-berto

It sounds like something crashed during your run before the figures were created. Were you also running reconstruction workflows?

mattcieslak avatar Mar 17 '22 18:03 mattcieslak

No, I'm only running the preprocessing workflow. In the report it's written "No errors to report!" and it seems that the process finished correctly. However I get the following error, which maybe it's related to this issue:

[WARNING] This document format requires a nonempty <title> element.
  Please specify either 'title' or 'pagetitle' in the metadata.
  Falling back to 'CITATION'
 file none does not exist . 
 file none does not exist . 
 file none does not exist . 
MovieWriter imagemagick unavailable; using Pillow instead.
 file none does not exist . 
 file none does not exist .

giulia-berto avatar Mar 17 '22 19:03 giulia-berto

FWIW, I'm encountering the same issue with the similar set of symptoms (supposedly "No errors to report!", and those warnings in the error file). Following an implication of this suggestion, the figures and reports are generated when I specify the working directory as an absolute path (note: using a relative path results in empty <outdir>/sub-<sub>/figures directories).

@giulia-berto , not sure whether the relative vs. absolute path of a working directory applies in your case

psadil avatar Mar 21 '22 17:03 psadil

Hi All,

I am getting a very similar error that appears to be unrelated to the working directory issue others have mentioned from using qsiprep version 0.15.2. The summary report plots are missing and the Figures folder is empty.

Here is the singularity call I made:

singularity run --cleanenv -B /Shared/<PATH>:/mnt \
/Shared/<PATH>/qsiprep-0.15.2.sif \
/Shared/<PATH>/BIDS/ \
/Shared/<PATH>/BIDS/derivatives \
participant --participant_label <SUBJECT_ID> --skip_bids_validation \
--output-resolution 2.0 \
-w /Shared/<PATH>/BIDS/derivatives/work/qsiprep \
--write-graph --mem_mb 35000 --omp-nthreads 14 --nthreads 16 \
--unringing-method mrdegibbs --separate_all_dwis \
--stop-on-first-crash \
--verbose \
--output-space template \
--template MNI152NLin2009cAsym \
--freesurfer-input /Shared/<PATH>/freesurfer/ \
--recon_input /Shared/<PATH>/BIDS/derivatives/qsiprep --recon-spec reorient_fslstd \
--fs-license-file /Shared/<PATH>/freesurfer_license.txt \

Here is the current error.

[WARNING] This document format requires a nonempty <title> element.
  Please specify either 'title' or 'pagetitle' in the metadata.
  Falling back to 'CITATION'
Traceback (most recent call last):
  File "/usr/local/miniconda/bin/qsiprep", line 8, in <module>
    sys.exit(main())
  File "/usr/local/miniconda/lib/python3.8/site-packages/qsiprep/cli/run.py", line 680, in main
    errno += generate_reports(subject_list, output_dir, work_dir, run_uuid,
  File "/usr/local/miniconda/lib/python3.8/site-packages/qsiprep/viz/reports.py", line 317, in generate_reports
    report_errors = [
  File "/usr/local/miniconda/lib/python3.8/site-packages/qsiprep/viz/reports.py", line 318, in <listcomp>
    run_reports(reports_dir, output_dir, subject_label, run_uuid=run_uuid,
  File "/usr/local/miniconda/lib/python3.8/site-packages/qsiprep/viz/reports.py", line 307, in run_reports
    report = Report(reportlet_path, config, out_dir, run_uuid, out_filename,
  File "/usr/local/miniconda/lib/python3.8/site-packages/qsiprep/viz/reports.py", line 74, in __init__
    self._load_config(config)
  File "/usr/local/miniconda/lib/python3.8/site-packages/qsiprep/viz/reports.py", line 80, in _load_config
    self.index(config['sections'])
  File "/usr/local/miniconda/lib/python3.8/site-packages/qsiprep/viz/reports.py", line 100, in index
    contents = fp.read().strip()
  File "/usr/local/miniconda/lib/python3.8/codecs.py", line 322, in decode
    (result, consumed) = self._buffer_decode(data, self.errors, final)
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xb0 in position 37: invalid start byte

mpipoly avatar Mar 22 '22 01:03 mpipoly

I think there might be something going on with the 3 positional arguments that have to be specified

bids_dir output_dir participant

In your command I'm only seeing /Shared/<PATH>/BIDS/derivatives participant

mattcieslak avatar Mar 22 '22 02:03 mattcieslak

@mattcieslak Incredibly embarrassed. When I was cut and pasting chunks of my code to edit for anonymity I seemed to have left behind that very important line. I have now edited my old post to reflect the argument and its position in my actual script. Since that is not the error, any thoughts on what could be the case?

mpipoly avatar Mar 22 '22 04:03 mpipoly

I'll chime in, since 0.15.1 is working without issue for me.

@mpipoly, does it work if you set --output-space T1w instead of --output-space template?

araikes avatar Mar 22 '22 20:03 araikes

@araikes Thanks for the suggestion. I am not sure at first pass why this would prevent the figures from being made when the outputs (e.g. confounds, preproc, bvecs, bvals etc..) are otherwise produced correctly. However, I am giving it try now. I will post back on the outcome.

EDIT: I have run it now and it has made no difference. The error is the same:

[WARNING] This document format requires a nonempty <title> element.
  Please specify either 'title' or 'pagetitle' in the metadata.
  Falling back to 'CITATION'
Traceback (most recent call last):
  File "/usr/local/miniconda/bin/qsiprep", line 8, in <module>
    sys.exit(main())
  File "/usr/local/miniconda/lib/python3.8/site-packages/qsiprep/cli/run.py", line 680, in main
    errno += generate_reports(subject_list, output_dir, work_dir, run_uuid,
  File "/usr/local/miniconda/lib/python3.8/site-packages/qsiprep/viz/reports.py", line 317, in generate_reports
    report_errors = [
  File "/usr/local/miniconda/lib/python3.8/site-packages/qsiprep/viz/reports.py", line 318, in <listcomp>
    run_reports(reports_dir, output_dir, subject_label, run_uuid=run_uuid,
  File "/usr/local/miniconda/lib/python3.8/site-packages/qsiprep/viz/reports.py", line 307, in run_reports
    report = Report(reportlet_path, config, out_dir, run_uuid, out_filename,
  File "/usr/local/miniconda/lib/python3.8/site-packages/qsiprep/viz/reports.py", line 74, in __init__
    self._load_config(config)
  File "/usr/local/miniconda/lib/python3.8/site-packages/qsiprep/viz/reports.py", line 80, in _load_config
    self.index(config['sections'])
  File "/usr/local/miniconda/lib/python3.8/site-packages/qsiprep/viz/reports.py", line 100, in index
    contents = fp.read().strip()
  File "/usr/local/miniconda/lib/python3.8/codecs.py", line 322, in decode
    (result, consumed) = self._buffer_decode(data, self.errors, final)
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xb0 in position 37: invalid start byte

mpipoly avatar Mar 23 '22 01:03 mpipoly

@giulia-berto are you using the --output-spaces template argument?

mattcieslak avatar Mar 23 '22 16:03 mattcieslak

Hi all,

thank you very much for your replies!

@araikes @mattcieslak with version 0.15.1 I am still having this issue. And in all my tests I always used --output-space T1w.

@psadil thank you for your suggestion, indeed specifying the workdir as an absolute path worked!

Maybe this issue can be fixed with the code changes above-mentioned https://github.com/PennLINC/qsiprep/issues/262#issuecomment-878054267

giulia-berto avatar Mar 24 '22 00:03 giulia-berto

I just ran into this issue myself.

mattcieslak avatar Feb 20 '23 19:02 mattcieslak

I would like to provide an update on the issue I was experiencing with QSIPrep version 0.19.1 on WSL2 with Ubuntu 22.04. Here's the command I'm using: qsiprep-docker /mnt/e/Neuroimage/BIDS_TestDataSet /mnt/e/Neuroimage/BIDS_TestDataSet/derivatives participant --participant-label Patient0238 \ --fs-license-file /mnt/e/Neuroimage/license.txt \ --output-resolution 1.2 \ --verbose \ --verbose \ --stop-on-first-crash After setting the -w parameter to specify the working directory, it appears that the issue has been resolved. qsiprep-docker /mnt/e/Neuroimage/BIDS_TestDataSet /mnt/e/Neuroimage/BIDS_TestDataSet/derivatives participant --participant-label Patient0238 \ -w /mnt/e/Neuroimage/workdir \ --fs-license-file /mnt/e/Neuroimage/license.txt \ --output-resolution 1.2 \ --verbose \ --verbose \ --stop-on-first-crash However, there is still a warning. I don't know if this matters. 屏幕截图 2024-03-19 221134

LuuuXG avatar Mar 19 '24 15:03 LuuuXG