v.track {dmri.tracking}R Documentation

Deterministic tracking algorithm – DiST

Description

v.track is used to apply the deterministic tracking algorithm – DiST (Wong et al 2017) It can be used to carry out the neuronal fiber reconstruction based on the peak detection results with local fiber estimation. Peak detection algorithm can be found in example_HCP_analysis.py from github-repository

Usage

v.track(
  v.obj,
  max.line = 100,
  nproj = 1,
  elim = T,
  elim.thres = 1,
  thres.ang = 0.5235988
)

Arguments

v.obj

An list type object which contains the following components:

  • vec: A matrix containing the estimated peak directions.

  • loc: A matrix containing the 'braingrid' coordinates of the corresponding estimated peak direction.

  • map: A vector containing the voxel indicator of corresponding estimated peak direction.

  • rmap: A vector specifying the location in 'map' of each voxel.

  • n.fiber: A vector specifying the number of peaks at each voxel.

  • n.fiber2: A vector specifying the number of peaks corresponding to 'map'.

  • braingrid: A array specifying the normalized voxel coordinates.

  • xgrid.sp,ygrid.sp,zgrid.sp: A numeric value specifying the voxel size (mm) in x, y, z-axis, respectively. (e.g. Voxel size in HCP dMRI: 1.25mm * 1.25mm * 1.25mm)

  • Example can be found in main page of github-repository

max.line

A integer value specifying the maximum number of voxels that the reconstructed fibers can go through. The value can depend on the size of ROI.

nproj

A integer value specifying the number of neighborhood voxels if the algorithm cannot find any viable direction nearby.

elim

logical. If TRUE, 'sorted.update.ind' returns whether the reconstructed fiber is greater than 'elim.thres'

elim.thres

A numeric value specifying the lower limit length of reconstructed fibers.

thres.ang

A numeric value specifying the threshold to determine whether the destination voxel have a viable direction (default value: pi/6). i.e., the algorithm will be proceeded, if the angular difference of the diffusion direction between the previous voxel and the destination voxel is smaller than 'thres.ang'.

Value

Result of deterministic tracking algorithm

Author(s)

Raymond Wong, Seungyong Hwang (Maintainer: syhwang@ucdavis.edu)

References

R. K. W. Wong, T. C. M. Lee, D. Paul, J. Peng and for the Alzheimer's Disease Neuroimaging Initiative. (2016) "Fiber Direction Estimation, Smoothing and Tracking in Diffusion MRI". The Annals of Applied Statistics, 10(3), 1137-1156.

See Also

tractography for plotting tractography based on the tracking result from v.track in dmri.tracking package.

Examples

#Load an example output from the peak detection algorithm
load(system.file("extdata", "peakresult.rda", package = "dmri.tracking"))

str(peak.result)  #Output from the peak detection algorithm

#Apply Tracking algorithm
result = v.track(v.obj = peak.result, max.line=500)


#Plot tracking result.

library(rgl)
open3d()
for (iind in (result$sorted.iinds[result$sorted.update.ind])){
  cat(iind,"\n")
  tractography(result$tracks1[[iind]]$inloc, result$tracks1[[iind]]$dir)
  tractography(result$tracks2[[iind]]$inloc, result$tracks2[[iind]]$dir)
}

#An example to prepare v.obj is available in https://github.com/vic-dragon/dmri.tracking


[Package dmri.tracking version 0.1.0 Index]