2010 Winter Project Week Tractography

From NAMIC Wiki
Revision as of 15:46, 8 January 2010 by Malcolm (talk | contribs) (status update)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search
Home < 2010 Winter Project Week Tractography

Key Investigators

  • BWH: James Malcolm, Peter Savadjiev, Yogesh Rathi, C-F Westin

Objective

Integrate recent methods for filtered tractography into Slicer3 using Python.

Plan

Implement various local models and filtering techniques. Support both region-of-interest and fiducial seeding. Support both interactive and batch processing. Picking fibers and moving them between polydata structures.

Progress

We have Python/NumPy implementations of various local models (single-tensor, two-tensor, Watson functions, weighted mixtures of these, etc.) and various model-based filters (Kalman, unscented Kalman, particle, etc.) and deterministic tractography infrastructure.

However, it is unusably slow (the MATLAB version runs faster). Profiling the code seems to indicate that there is too much NumPy overhead in manipulating lots of small matrices/vectors. Now reimplementing in C/C++.

  1. Malcolm, Michailovich, Bouix, Westin, Shenton, Rathi. "A filtered approach to neural tractography using the Watson directional function", MedIA 14(1), p.58-69, 2010.
  2. Malcolm, Shenton, Rathi. "Neural tractography using an unscented Kalman filter", IPMI, p.126-138, 2009.
  3. Savadjiev, Zucker, Siddiqi. "On the Differential Geometry of 3D Flow Patterns: Generalized Helicoids and Diffusion MRI Analysis", ICCV 2007