scil_surface_apply_transform.py

usage: __main__.py [-h] [--ants_warp ANTS_WARP] [-v [{DEBUG,INFO,WARNING}]]
                   [-f]
                   in_surface ants_affine out_surface

Script to apply a transform to a surface (FreeSurfer or VTK supported),
using output from ANTs registration tools (i.e. affine.txt, warp.nii.gz).

Example usage from T1 to b0 using ANTs transforms:
> ConvertTransformFile 3 output0GenericAffine.mat vtk_transfo.txt --hm
> scil_surface_apply_transform.py lh_white_lps.vtk affine.txt lh_white_b0.vtk\
    --ants_warp warp.nii.gz

Important: The input surface needs to be in *T1 world LPS* coordinates
(aligned over the T1 in MI-Brain).

The script will use the linear affine first and then the warp image.
The resulting surface will be in *b0 world LPS* coordinates
(aligned over the b0 in MI-Brain).

Formerly: scil_apply_transform_to_surface.py.

positional arguments:
  in_surface            Input surface (.vtk).
  ants_affine           Affine transform from ANTs (.txt or .mat).
  out_surface           Output surface (.vtk).

options:
  -h, --help            show this help message and exit
  --ants_warp ANTS_WARP
                        Warp image from ANTs (Nifti image).
  -v [{DEBUG,INFO,WARNING}]
                        Produces verbose output depending on the provided level.
                        Default level is warning, default when using -v is info.
  -f                    Force overwriting of the output files.

References:
[1] St-Onge, E., Daducci, A., Girard, G. and Descoteaux, M. 2018.
    Surface-enhanced tractography (SET). NeuroImage.