Deep-MI / fsqc

A set of quality control scripts for FreeSurfer- and FastSurfer-processed structural MRI data

Home Page:https://deep-mi.org

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

ERROR: screenshots/fornix module failed for subject ...

RDoerfel opened this issue · comments

Description

When running

python qatools.py --subjects_dir /indirect/tmp_brainage/data/derivatives/freesurfer --output_dir /indirect/tmp_brainage/data/derivatives/freesurfer_qc --screenshots --fornix --outlier --screenshots-html --fornix-html --subjects sub-ADNI002S0413_ses-M000

I'm getting two errors:
ERROR: screenshots module failed for subject ... ``ERROR: fornix module failed for subject ...
I get the summary measures in the end, but no screenshots, etc. are appearing.

Also, I had problems during the installation process. I used the following steps:

conda create -n qatools python==3.8
conda activate qatools

pip3 install --user git+https://github.com/Deep-MI/BrainPrint-python.git
pip3 install --user git+https://github.com/Deep-MI/LaPy.git
pip3 install --user -r requirements.txt

When running, it is missing skimage, so I had to install it by hand.

When digging into it:

It fails in:

https://github.com/Deep-MI/qatools-python/blob/b17c95485e0dd3ce27d3ed6996b5367e1d2038ab/qatoolspython/createScreenshots.py#L109

With:

Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "/users/rubendorfel/.conda/envs/qatools/lib/python3.8/site-packages/pandas/util/_decorators.py", line 311, in wrapper
    return func(*args, **kwargs)
  File "/users/rubendorfel/.conda/envs/qatools/lib/python3.8/site-packages/pandas/io/parsers/readers.py", line 586, in read_csv
    return _read(filepath_or_buffer, kwds)
  File "/users/rubendorfel/.conda/envs/qatools/lib/python3.8/site-packages/pandas/io/parsers/readers.py", line 488, in _read
    return parser.read(nrows)
  File "/users/rubendorfel/.conda/envs/qatools/lib/python3.8/site-packages/pandas/io/parsers/readers.py", line 1047, in read
    index, columns, col_dict = self._engine.read(nrows)
  File "/users/rubendorfel/.conda/envs/qatools/lib/python3.8/site-packages/pandas/io/parsers/c_parser_wrapper.py", line 223, in read
    chunks = self._reader.read_low_memory(nrows)
  File "pandas/_libs/parsers.pyx", line 801, in pandas._libs.parsers.TextReader.read_low_memory
  File "pandas/_libs/parsers.pyx", line 857, in pandas._libs.parsers.TextReader._read_rows
  File "pandas/_libs/parsers.pyx", line 843, in pandas._libs.parsers.TextReader._tokenize_rows
  File "pandas/_libs/parsers.pyx", line 1925, in pandas._libs.parsers.raise_parser_error
pandas.errors.ParserError: Error tokenizing data. C error: Expected 6 fields in line 82, saw 7

Regarding to this it can be solved using:

on_bad_lines='skip' instead of error_bad_lines=False in pd.read_csv(...)

Hello, thanks for reporting this issue and also for looking into it. We are currently working on a major revision of the toolbox that addresses e.g. dependency issues, and issues with the screenshots module. Maybe one option for you is to try the 'freesurfer-module-dev' branch, which has some more recent updates than the default branch.

Great, I'll do that!

If you need any help in development/testing, let me know @kdiers. Think it is quite a helpful tool for qc-ing big datasets

Thank you very much. We are working on releasing the new version of the toolbox until end of this month, so around that time some tests and feedback would be very useful - if it fits, of course.

We have now released version 2.0, and the reported issues should be solved, therefore closing this issue now. Feel free to go ahead with some testing if you like, and to reopen this issue if anything persists. Thanks!

great work @kdiers and right in time! I'll give it a shoot next week.