Supported Formats#

TRX#

The modern tractography format developed through community discussions to address limitations of earlier formats. Supports data-per-vertex, data-per-streamline, data-per-group, and arbitrary JSON metadata.

  • Specification: TRX spec on GitHub

  • Extension: .trx (zip container)

  • Data types: float16/32/64, int8/16/32/64, uint8/16/32/64

  • Decompression: Zip container via fflate

TRK (TrackVis)#

The popular TrackVis format, widely used in diffusion MRI.

  • Specification: TrackVis file format

  • Extension: .trk, .trk.gz, .trk.zst

  • Decompression: gzip via fflate, zstd via fzstd

  • Coordinate transform: Applies voxel-to-RAS matrix from header

TCK (MRtrix)#

The MRtrix track file format.

  • Specification: MRtrix documentation

  • Extension: .tck

  • Streamline termination: NaN = continue to next streamline; Infinity = end of data

VTK (Legacy)#

The VTK legacy file format, supporting both ASCII and binary POLYDATA.

  • Specification: VTK file format

  • Extension: .vtk

  • Cell types: LINES (streamlines), TRIANGLE_STRIPS, POLYGONS

  • DiPy compatibility: Detects and handles DiPy’s OFFSETS-style LINES

  • Byte order: Binary VTK uses big-endian

TT (DSI Studio)#

The DSI Studio format, stored inside a Matlab V4 container.

  • Documentation: DSI Studio data

  • Extension: .tt, .fib

  • Encoding: Incremental zigzag delta encoding

  • Precision: Positions stored as 1/32nd of a voxel (slightly lossy)