Skip to content

Instantly share code, notes, and snippets.

Last active Aug 28, 2019
What would you like to do?
Script that converts TRK to TCK using
import os
import argparse
import nibabel as nib
def build_argparser():
DESCRIPTION = "Convert tractograms (TRK -> TCK)."
p = argparse.ArgumentParser(description=DESCRIPTION)
p.add_argument('tractograms', metavar='bundle', nargs="+", help='list of tractograms.')
p.add_argument('-f', '--force', action="store_true", help='overwrite existing output files.')
return p
def main():
parser = build_argparser()
args = parser.parse_args()
for tractogram in args.tractograms:
if nib.streamlines.detect_format(tractogram) is not nib.streamlines.TrkFile:
print("Skipping non TRK file: '{}'".format(tractogram))
output_filename = tractogram[:-4] + '.tck'
if os.path.isfile(output_filename) and not args.force:
print("Skipping existing file: '{}'. Use -f to overwrite.".format(output_filename))
trk = nib.streamlines.load(tractogram), output_filename)
if __name__ == '__main__':
Copy link

russellu commented Jan 6, 2019

thanks for this! works perfectly, and very useful (i needed to get my .trk files into .tck so i could use mrtrix's tracks2prob)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment