tff_generate_trx_from_scratch.py - generate a TRX file from CSV,
TXT or NPY files
usage: tff_generate_trx_from_scratch.py [-h] [--positions
POSITIONS]
- [--offsets OFFSETS]
- [--positions_csv POSITIONS] [--space {RASMM,VOXMM,VOX}] [--origin
{NIFTI,TRACKVIS}] [--positions_dtype {float16,float32,float64}]
[--offsets_dtype {uint32,uint64}] [--dpv FILE DTYPE] [--dps FILE DTYPE]
[--groups FILE DTYPE] [--dpg GROUP FILE DTYPE] [--verify_invalid] [-f]
reference OUT_TRACTOGRAM
Generate TRX file from a collection of CSV, TXT or NPY files by
individually specifying positions, offsets, data_per_vertex,
data_per_streamlines, groups and data_per_group. Each file must have its
data type specified by the users.
A reference file must be provided (NIFTI) and the option
--verify_invalid will remove invalid streamlines (outside of the
bounding box in VOX space).
All dimensions (nbr_vertices and nbr_streamlines) and groups/dpg
must match otherwise the script will (likely) crash.
Each instance of --dps, --dpv, --groups
require 2 arguments (FILE, DTYPE). --dpg requires 3 arguments (GROUP,
FILE, DTYPE). The choice of DTYPE are:
- - (u)int8, (u)int16, (u)int32, (u)int64 - float16, float32, float64 -
bool
Example command: tff_generate_trx_from_scratch.py fa.nii.gz
generated.trx -f --positions test_npy/positions.npy
--positions_dtype float16 --offsets test_npy/offsets.npy
--offsets_dtype uint32 --dpv test_npy/dpv_cx.npy uint8
--dpv test_npy/dpv_cy.npy uint8 --dpv test_npy/dpv_cz.npy
uint8 --dps test_npy/dps_algo.npy uint8 --dps
test_npy/dps_cw.npy float64 --groups test_npy/g_AF_L.npy int32
--groups test_npy/g_AF_R.npy int32 --dpg g_AF_L
test_npy/dpg_AF_L_mean_fa.npy float32 --dpg g_AF_R
test_npy/dpg_AF_R_mean_fa.npy float32 --dpg g_AF_L
test_npy/dpg_AF_L_volume.npy float32
- reference
- Reference anatomy for tck/vtk/fib/dpy file support (.nii or .nii.gz).
- OUT_TRACTOGRAM
- Output filename. Format must be one of trk, tck, vtk, fib, dpy, trx.
- -h, --help
- show this help message and exit
- --verify_invalid
- Verify that the positions are all valid. None outside of the bounding box
in VOX space. Requires Dipy (due to use of SFT).
- -f
- Force overwriting of the output files.
- --positions
POSITIONS
- Binary file containing the streamlines coordinates. Must be Nx3
(.npy)
- --offsets
OFFSETS
- Binary file containing the streamlines offsets (.npy)
- --positions_csv
POSITIONS
- CSV file containing the streamlines coordinates. Rows for each streamlines
organized as x1,y1,z1, x2,y2,z2,...,xN,yN,zN
- --space
{RASMM,VOXMM,VOX}
- Space in which the coordinates are declared.[RASMM] Non-default option
requires Dipy.
- --origin
{NIFTI,TRACKVIS}
- Origin in which the coordinates are declared. [NIFTI] Non-default option
requires Dipy.
- --dpv FILE DTYPE
- Binary file containing data_per_vertex. Must haveNB_VERTICES as first
dimension (.npy)
- --dps FILE DTYPE
- Binary file containing data_per_vertex. Must haveNB_STREAMLINES as first
dimension (.npy)
- --groups FILE
DTYPE
- Binary file containing a sparse group (indices). Indices should be lower
than NB_STREAMLINES (.npy)
- --dpg GROUP FILE
DTYPE
- Binary file containing data_per_group.
- Must have(1,) as first dimension (.npy)