Skip to content
jeffduda edited this page May 11, 2011 · 27 revisions

Warning - In progress

Data

For this example we work with a DTI atlas that was created from the publicly available Kirby dataset. In addition to the DTI atlas, manually defined ROI's are used to extract the fiber bundle of interest. For more information about this data, please see the data page.

  • DTI-Atlas

  • ROIs: way-points, exclusion-points

Obtaining the initial fiber set

A diffusion tensor atlas created from the kirby data set was used to perform fiber tractography using the Camino tookit. ROI's were drawn to extract only the fibers that make up the left uncinate fasciculus. For convenience, the Camino commands are listed here:

  • First we perform whole brain fiber tractography in a DTI atlas

    niftidt2camino -inputfile kirby-DTI.nii.gz | track -seedfile kirby-seeds.nii.gz > kirby-wholebrain-stream.Bfloat

  • Using predefined ROI's we extract the fibers that lie in the left uncinate fasciculus

    cat kirby-wholebrain-stream.Bfloat | procstreamlines -noresample -waypointfile kirby-l-lunc-wp.nii.gz -exclusionfile kirby-l-unc-xp.nii.gz | vtkstreamlines > kirby-l-unc.vtk

uncinate-raw.png

Initial parameterization

  • Here we want to insure that the fibers in the bundle run in roughly the same direction (i.e. we don't want anti-parallel fibers).

    petioleFibers --fibers parallelize[ uncinate.vtk ] --output uncinate.vtk

  • Now we want to save some point-data for each point. It this case we want the total arc-length up to each point along the fiber.

    petioleFibers --point-data arc-length[ uncinate.vtk, arclength ] --output uncinate.vtk

  • Next, we normalize the arc-length data to prepare it for use in fitting a b-spline

    petioleFibers --point-data normalize[ uncinate.vtk, arclength ] --output uncinate.vtk

Using B-Splines for estimating a central axis

  • Use the arc-length as parameterization for fitting a single B-Spline curve. The b-spline coefficients are saved in an image

    petioleFibers --b-splines fit-curve[ uncinate.vtk, arclength ] --output uncinate_spline.nii.gz

  • To view this curve, we will resample the b-spline at a spacing of 1.0mm as follows

    petioleFibers --b-spline resample[ uncinate_spline.nii.gz, 1.0 ] --output uncinate_core.vtk

Using B-Splines to estimate the outer surface of the fiber bundle

  • Determine frenet-frame of reference along core of fiber bundle

    petioleFibers --fibers

Clone this wiki locally