fastsurfer (launcher)¶
fastsurfer runs FastSurfer with one command on every system: in its container image with Apptainer, Singularity or
Docker, or on a Mac with Apple silicon with the macOS package. It takes the flags of
run_fastsurfer.sh and needs only Python, not FastSurfer itself.
The launcher explains how it chooses the image, and the
quick start how to download it.
Usage¶
python3 tools/fastsurfer --help
usage: fastsurfer [-h] [--image IMAGE] [--update] [--update_launcher]
[--runtime {auto,apptainer,singularity,docker,macos}]
[--image_dir IMAGE_DIR] [--exec PROGRAM]
[--runtime_args RUNTIME_ARGS] [--print_only]
Run FastSurfer with one command on every system: in its container image, or on
a Mac with Apple silicon with the macOS package.
options:
-h, --help show this help message and exit
--image IMAGE the image to run: a release tag such as cu132-v2.6.0
(to keep a study on one image), a version such as
2.6.0 (the image type is chosen for this machine),
rocm for the ROCm image on an AMD GPU (experimental;
used without --image when there is no NVIDIA GPU), a
Docker image (e.g. my_fastsurfer:cu132) or an
Apptainer .sif file. On a Mac with Apple silicon, the
version of the macOS package (e.g. 2.6.0) or its
folder. Default: the release installed on this
machine, or the newest release if there is none
--update download the newest release (or the one --image names)
again, even if an image is installed, and run it. On a
Mac with Apple silicon, download the macOS package and
open the macOS Installer
--update_launcher replace this launcher with the current one and stop
--runtime {auto,apptainer,singularity,docker,macos}
what runs FastSurfer (default: auto, on a Mac with
Apple silicon the macOS package, else the container
runtime that has the image, else Apptainer,
Singularity, then Docker)
--image_dir IMAGE_DIR
where Apptainer/Singularity images are kept (default:
$FASTSURFER_IMAGE_DIR or ~/my_singularity_images)
--exec PROGRAM run another program of the image instead of
run_fastsurfer.sh. It comes last: all later arguments
go to the program. brun_fastsurfer.sh (several
subjects) and long_fastsurfer.sh (longitudinal
processing) take FastSurfer's flags, as
run_fastsurfer.sh does. Any other program, e.g. --exec
nib-convert in.mgz out.nii.gz, runs in the current
directory, which is shared with the container, as are
the directories of absolute paths in its arguments
--runtime_args RUNTIME_ARGS
additional arguments for the container runtime, e.g.
--runtime_args '--group-add 1001'
--print_only print the commands instead of running them
All other arguments are passed to run_fastsurfer.sh (or brun_fastsurfer.sh,
long_fastsurfer.sh), see https://deep-
mi.org/FastSurfer/stable/scripts/RUN_FASTSURFER.html. Relative paths are
relative to the current directory.