bids-apps / freesurfer

BIDS app wrapping recon-all from FreeSurfer
Apache License 2.0
40 stars 35 forks source link

Possible to skip participants without aparc.stats files? #68

Open stong3 opened 3 years ago

stong3 commented 3 years ago

Hi,

I have recently been using this container to run FreeSurfer 6.0, using Singularity (v3.8) on an HPC Cluster on a large number of subjects. I was able to run recon-all just fine excepted for a few subjects (14) where the MRI was not able to finish processing despite a lot of time given to the task.

For now, we have decided to exclude these participants, so I tried generating the statistics spreadsheet (the equivalent to what aparcstats2table would output I am guessing?) with the group2 argument, but the processing fails once it can't find a .stats file:

skipping bids-validator...
Writing stats tables to /output/00_group2_stats_tables.
Creating cortical stats table for lh aparc thickness
SUBJECTS_DIR : /output
Parsing the .stats files

ERROR: Cannot find stats file /output/sub-XXXXXX/stats/lh.aparc.stats

Traceback (most recent call last):
  File "/run.py", line 533, in <module>
    run(cmd, env={"SUBJECTS_DIR": output_dir, 'FS_LICENSE': args.license_file})
  File "/run.py", line 28, in run
    raise Exception("Non zero return code: %d" % process.returncode)
Exception: Non zero return code: 1

I know that the original aparcstats2table has a --skip option, as the default behavior is to throw an error, so I was wondering if the same was true for the container. So far, I tried adding the --skip option to my command, but it did not change anything at all or it tells me that it is not a recognized argument:

SINGULARITY_CMD="singularity run --cleanenv \
-B ${BIDS_DIR}:/bids_dirs:ro \
-B ${FS_OUTPUT}:/output \
-B ${FS_LISENCE}/license.txt:/license.txt \
${SINGULARITY_IMG} \
/bids_dirs /output group2 \
--license_file /license.txt \
--skip \
--skip_bids_validator"

Is there a way to switch this behavior in the container? And if so, could it be added to the documentation?

Thank you for your time and for creating this container!