Scroll to navigation

TFF_GENERATE_TRX_FROM_SCRATCH.PY(1) User Commands TFF_GENERATE_TRX_FROM_SCRATCH.PY(1)

NAME

tff_generate_trx_from_scratch.py - generate a TRX file from CSV, TXT or NPY files

DESCRIPTION

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

positional arguments:

Reference anatomy for tck/vtk/fib/dpy file support (.nii or .nii.gz).
Output filename. Format must be one of trk, tck, vtk, fib, dpy, trx.

options:

show this help message and exit
Verify that the positions are all valid. None outside of the bounding box in VOX space. Requires Dipy (due to use of SFT).
Force overwriting of the output files.

Positions options:

Binary file containing the streamlines coordinates. Must be Nx3 (.npy)
Binary file containing the streamlines offsets (.npy)
CSV file containing the streamlines coordinates. Rows for each streamlines organized as x1,y1,z1, x2,y2,z2,...,xN,yN,zN
Space in which the coordinates are declared.[RASMM] Non-default option requires Dipy.
Origin in which the coordinates are declared. [NIFTI] Non-default option requires Dipy.

Data type options:

Specify the datatype for positions for trx. [float32]
Specify the datatype for offsets for trx. [uint64]

Streamlines metadata options:

Binary file containing data_per_vertex. Must haveNB_VERTICES as first dimension (.npy)
Binary file containing data_per_vertex. Must haveNB_STREAMLINES as first dimension (.npy)
Binary file containing a sparse group (indices). Indices should be lower than NB_STREAMLINES (.npy)
Binary file containing data_per_group.
Must have(1,) as first dimension (.npy)
January 2024 tff_generate_trx_from_scratch.py 0.2.9