Edit this page

NA-MIC Project Weeks

Back to Projects List

TRAKO Integration to 3D Slicer

Key Investigators

Project Description

TRAKO is a new file format that stores streamlines and associated per-vertex and per-fiber data as glTF containers with compression. We will investigate how to best integrate TRAKO with 3D Slicer.

Objective

We want to make it possible to read and write TRAKO (.TKO) files using 3D Slicer.

Approach and Plan

  1. Start with the pip-installable trako package to make an importer and exporter
  2. Integrate TRAKO with the MRML scene architecture.
  3. Consider architecture and options for a C++ implementation

Progress and Next Steps

  1. We created ScriptedModule for SlicerDMRI (pull request open) that allows loading and saving of .TKO files.
  2. We had to modify some things on Trako’s side to make this work and cut a new release 0.3.5.dev9.
  3. Steps required so far to make it work: 1) build Slicer + SlicerDMRI w/ pull request #145, and then 2) pip_install(‘trako’) in the slicer
  4. We now need JC’s TrakoDracoPy wheels for all platforms and then update the SlicerDMRI extension to tie everything together.
  5. Prototype implementation: https://github.com/pieper/SlicerDMRI/commit/1cfcbbc61d58588021de7a2e1ad8aafbf53274c1

Illustrations

Loading .TKO files in 3D Slicer Saving .TKO files in 3D Slicer

Background and References

TRAKO repository: https://github.com/bostongfx/trako