Medical Imaging Interaction Toolkit  2016.11.0
Medical Imaging Interaction Toolkit
itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage > Class Template Reference

#include <itkStochasticTractographyFilter.h>

Inheritance diagram for itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >:
Collaboration diagram for itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >:

Classes

struct  StochasticTractGenerationCallbackStruct
 

Public Types

typedef StochasticTractographyFilter Self
 
typedef ImageToImageFilter< TInputDWIImage, TOutputConnectivityImage > Superclass
 
typedef SmartPointer< SelfPointer
 
typedef SmartPointer< const SelfConstPointer
 
typedef TInputDWIImage InputDWIImageType
 
typedef TOutputConnectivityImage OutputConnectivityImageType
 
typedef TInputWhiteMatterProbabilityImage InputWhiteMatterProbabilityImageType
 
typedef SlowPolyLineParametricPath< 3 > TractType
 
typedef VectorContainer< unsigned int, typename TractType::PointerTractContainerType
 
typedef Image< DiffusionTensor3D< double >, 3 > OutputTensorImageType
 
typedef VectorContainer< unsigned int, vnl_vector_fixed< double, 3 > > GradientDirectionContainerType
 
typedef double bValueType
 
typedef VectorContainer< unsigned int, bValueTypebValueContainerType
 
typedef vnl_matrix_fixed< double, 3, 3 > MeasurementFrameType
 
typedef VectorContainer< unsigned int, vnl_vector_fixed< double, 3 > > TractOrientationContainerType
 

Public Member Functions

Pointer Clone () const
 
virtual const char * GetClassName () const
 
virtual void SetTotalTracts (unsigned int _arg)
 
virtual unsigned int GetTotalTracts ()
 
virtual void SetMaxTractLength (unsigned int _arg)
 
virtual unsigned int GetMaxTractLength ()
 
virtual void SetbValues (const bValueContainerType *_arg)
 
virtual const bValueContainerTypeGetbValues ()
 
virtual void SetGradients (const GradientDirectionContainerType *_arg)
 
virtual const GradientDirectionContainerTypeGetGradients ()
 
 itkSetInputMacro (WhiteMatterProbabilityImage, InputWhiteMatterProbabilityImageType) itkGetInputMacro(WhiteMatterProbabilityImage
 
InputWhiteMatterProbabilityImageType void SetPrimaryInput (DataObject *input)
 
virtual void SetSeedIndex (typename InputDWIImageType::IndexType _arg)
 
virtual InputDWIImageType::IndexType GetSeedIndex ()
 
virtual void SetSampleDirections (const TractOrientationContainerType *_arg)
 
virtual const TractOrientationContainerTypeGetSampleDirections ()
 
virtual void SetMeasurementFrame (MeasurementFrameType _arg)
 
virtual MeasurementFrameType GetMeasurementFrame ()
 
virtual void SetMaxLikelihoodCacheSize (unsigned int _arg)
 
virtual unsigned int GetMaxLikelihoodCacheSize ()
 
virtual TractContainerTypeGetOutputTractContainer ()
 
virtual OutputTensorImageTypeGetOutputTensorImage ()
 
void GenerateData ()
 
void GenerateTractContainerOutput (void)
 
void GenerateTensorImageOutput (void)
 

Static Public Member Functions

static Pointer New ()
 

Protected Types

typedef vnl_vector_fixed< double, 7 > TensorModelParamType
 
typedef vnl_vector_fixed< double, 6 > ConstrainedModelParamType
 
typedef Image< VariableLengthVector< double >, 3 > DWIVectorImageType
 
typedef Image< Array< double >, 3 > ProbabilityDistributionImageType
 
typedef Image< SimpleFastMutexLock, 3 > LikelihoodCacheMutexImageType
 

Protected Member Functions

 StochasticTractographyFilter ()
 
virtual ~StochasticTractographyFilter ()
 
void LoadDefaultSampleDirections (void)
 
void ProbabilisticallyInterpolate (vnl_random &randomgenerator, const TractType::ContinuousIndexType &cindex, typename InputDWIImageType::IndexType &index)
 
void UpdateGradientDirections (void)
 
void UpdateTensorModelFittingMatrices (void)
 
void CalculateTensorModelParameters (const DWIVectorImageType::PixelType &dwivalues, vnl_diag_matrix< double > &W, TensorModelParamType &tensormodelparams)
 
void CalculateConstrainedModelParameters (const TensorModelParamType &tensormodelparams, ConstrainedModelParamType &constrainedmodelparams)
 
void CalculateNoiseFreeDWIFromConstrainedModel (const ConstrainedModelParamType &constrainedmodelparams, DWIVectorImageType::PixelType &noisefreedwi)
 
void CalculateResidualVariance (const DWIVectorImageType::PixelType &noisydwi, const DWIVectorImageType::PixelType &noisefreedwi, const vnl_diag_matrix< double > &W, const unsigned int numberofparameters, double &residualvariance)
 
void CalculateLikelihood (const DWIVectorImageType::PixelType &dwipixel, TractOrientationContainerType::ConstPointer orientations, ProbabilityDistributionImageType::PixelType &likelihood)
 
void CalculatePrior (TractOrientationContainerType::Element v_prev, TractOrientationContainerType::ConstPointer orientations, ProbabilityDistributionImageType::PixelType &prior)
 
void CalculatePosterior (const ProbabilityDistributionImageType::PixelType &likelihood, const ProbabilityDistributionImageType::PixelType &prior, ProbabilityDistributionImageType::PixelType &posterior)
 
void SampleTractOrientation (vnl_random &randomgenerator, const ProbabilityDistributionImageType::PixelType &posterior, TractOrientationContainerType::ConstPointer orientations, TractOrientationContainerType::Element &choosendirection)
 
void StochasticTractGeneration (typename InputDWIImageType::ConstPointer dwiimagePtr, typename InputWhiteMatterProbabilityImageType::ConstPointer maskimagePtr, typename InputDWIImageType::IndexType seedindex, unsigned long randomseed, TractType::Pointer tract)
 
ProbabilityDistributionImageType::PixelTypeAccessLikelihoodCache (typename InputDWIImageType::IndexType index)
 
bool DelegateTract (unsigned long &randomseed)
 
void TractContainerToConnectivityMap (TractContainerType::Pointer tractcontainer)
 
void StoreTract (TractType::Pointer tract)
 
bool FiberExistenceTest (vnl_random &randomgenerator, typename InputWhiteMatterProbabilityImageType::ConstPointer wmpimage, typename InputWhiteMatterProbabilityImageType::IndexType index)
 

Static Protected Member Functions

static ITK_THREAD_RETURN_TYPE StochasticTractGenerationCallback (void *arg)
 

Protected Attributes

MeasurementFrameType m_MeasurementFrame
 
LikelihoodCacheMutexImageType::Pointer m_LikelihoodCacheMutexImagePtr
 
unsigned int m_TotalTracts
 
unsigned int m_MaxTractLength
 
GradientDirectionContainerType::ConstPointer m_Gradients
 
GradientDirectionContainerType::Pointer m_TransformedGradients
 
bValueContainerType::ConstPointer m_bValues
 
InputDWIImageType::IndexType m_SeedIndex
 
TractOrientationContainerType::ConstPointer m_SampleDirections
 
vnl_matrix< double > * m_A
 
vnl_qr< double > * m_Aqr
 
ProbabilityDistributionImageType::Pointer m_LikelihoodCachePtr
 
unsigned long m_MaxLikelihoodCacheSize
 
unsigned long m_MaxLikelihoodCacheElements
 
unsigned long m_CurrentLikelihoodCacheElements
 
SimpleFastMutexLock m_LikelihoodCacheMutex
 
RealTimeClock::Pointer m_ClockPtr
 
unsigned int m_TotalDelegatedTracts
 
SimpleFastMutexLock m_TotalDelegatedTractsMutex
 
SimpleFastMutexLock m_OutputImageMutex
 
TractContainerType::Pointer m_OutputTractContainer
 
SimpleFastMutexLock m_OutputTractContainerMutex
 
OutputTensorImageType::Pointer m_OutputTensorImage
 
vnl_random m_RandomGenerator
 

Detailed Description

template<class TInputDWIImage, class TInputWhiteMatterProbabilityImage, class TOutputConnectivityImage>
class itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >

Definition at line 43 of file itkStochasticTractographyFilter.h.

Member Typedef Documentation

template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
typedef VectorContainer< unsigned int, bValueType > itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::bValueContainerType

Definition at line 83 of file itkStochasticTractographyFilter.h.

template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
typedef double itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::bValueType

Types for the Image-wide bValues

Definition at line 82 of file itkStochasticTractographyFilter.h.

template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
typedef SmartPointer< const Self > itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::ConstPointer

Definition at line 51 of file itkStochasticTractographyFilter.h.

template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
typedef vnl_vector_fixed< double, 6 > itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::ConstrainedModelParamType
protected

Types for the parameters of the Constrained Model

Definition at line 180 of file itkStochasticTractographyFilter.h.

template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
typedef Image< VariableLengthVector< double >, 3 > itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::DWIVectorImageType
protected

Type to hold generated DWI values

Definition at line 183 of file itkStochasticTractographyFilter.h.

template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
typedef VectorContainer< unsigned int, vnl_vector_fixed< double, 3 > > itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::GradientDirectionContainerType

Types for the Image-wide Magnetic Field Gradient Directions

Definition at line 79 of file itkStochasticTractographyFilter.h.

template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
typedef TInputDWIImage itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::InputDWIImageType

Types for the DWI Input Image

Definition at line 59 of file itkStochasticTractographyFilter.h.

template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
typedef TInputWhiteMatterProbabilityImage itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::InputWhiteMatterProbabilityImageType

Types for the Mask Image

Definition at line 65 of file itkStochasticTractographyFilter.h.

template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
typedef Image< SimpleFastMutexLock, 3 > itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::LikelihoodCacheMutexImageType
protected

Types for the Image of Mutexes of the Likelihood distribution

Definition at line 189 of file itkStochasticTractographyFilter.h.

template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
typedef vnl_matrix_fixed< double, 3, 3 > itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::MeasurementFrameType

Types for the Measurement Frame of the Gradients

Definition at line 86 of file itkStochasticTractographyFilter.h.

template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
typedef TOutputConnectivityImage itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::OutputConnectivityImageType

Types for the Connectivity Output Image

Definition at line 62 of file itkStochasticTractographyFilter.h.

template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
typedef Image< DiffusionTensor3D< double >, 3 > itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::OutputTensorImageType

Types for Tensor Output Image

Definition at line 75 of file itkStochasticTractographyFilter.h.

template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
typedef SmartPointer< Self > itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::Pointer

Definition at line 50 of file itkStochasticTractographyFilter.h.

template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
typedef Image< Array< double >, 3 > itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::ProbabilityDistributionImageType
protected

Types for Probability Distribution

Definition at line 186 of file itkStochasticTractographyFilter.h.

template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
typedef StochasticTractographyFilter itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::Self

Definition at line 47 of file itkStochasticTractographyFilter.h.

template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
typedef ImageToImageFilter< TInputDWIImage, TOutputConnectivityImage > itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::Superclass

Definition at line 49 of file itkStochasticTractographyFilter.h.

template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
typedef vnl_vector_fixed< double, 7 > itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::TensorModelParamType
protected

Convenience Types used only inside the filter Types for the parameters of the Tensor Model

Definition at line 177 of file itkStochasticTractographyFilter.h.

template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
typedef VectorContainer< unsigned int, typename TractType::Pointer > itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::TractContainerType

Types for the TractContainer

Definition at line 72 of file itkStochasticTractographyFilter.h.

template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
typedef VectorContainer< unsigned int, vnl_vector_fixed< double, 3 > > itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::TractOrientationContainerType

Type for the sample directions

Definition at line 90 of file itkStochasticTractographyFilter.h.

template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
typedef SlowPolyLineParametricPath< 3 > itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::TractType

Tract Types

Definition at line 68 of file itkStochasticTractographyFilter.h.

Constructor & Destructor Documentation

template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::StochasticTractographyFilter ( )
protected
template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
virtual itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::~StochasticTractographyFilter ( )
protectedvirtual

Member Function Documentation

template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
ProbabilityDistributionImageType::PixelType& itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::AccessLikelihoodCache ( typename InputDWIImageType::IndexType  index)
protected

Thread Safe Function to check/update an entry in the likelihood cache

template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
void itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::CalculateConstrainedModelParameters ( const TensorModelParamType tensormodelparams,
ConstrainedModelParamType constrainedmodelparams 
)
protected
template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
void itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::CalculateLikelihood ( const DWIVectorImageType::PixelType dwipixel,
TractOrientationContainerType::ConstPointer  orientations,
ProbabilityDistributionImageType::PixelType likelihood 
)
protected
template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
void itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::CalculateNoiseFreeDWIFromConstrainedModel ( const ConstrainedModelParamType constrainedmodelparams,
DWIVectorImageType::PixelType noisefreedwi 
)
protected
template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
void itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::CalculatePosterior ( const ProbabilityDistributionImageType::PixelType likelihood,
const ProbabilityDistributionImageType::PixelType prior,
ProbabilityDistributionImageType::PixelType posterior 
)
protected
template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
void itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::CalculatePrior ( TractOrientationContainerType::Element  v_prev,
TractOrientationContainerType::ConstPointer  orientations,
ProbabilityDistributionImageType::PixelType prior 
)
protected
template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
void itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::CalculateResidualVariance ( const DWIVectorImageType::PixelType noisydwi,
const DWIVectorImageType::PixelType noisefreedwi,
const vnl_diag_matrix< double > &  W,
const unsigned int  numberofparameters,
double &  residualvariance 
)
protected
template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
void itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::CalculateTensorModelParameters ( const DWIVectorImageType::PixelType dwivalues,
vnl_diag_matrix< double > &  W,
TensorModelParamType tensormodelparams 
)
protected
template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
Pointer itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::Clone ( ) const
template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
bool itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::DelegateTract ( unsigned long &  randomseed)
protected

Thread Safe Function to delegate a tract and obtain a randomseed to start tracking

template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
bool itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::FiberExistenceTest ( vnl_random &  randomgenerator,
typename InputWhiteMatterProbabilityImageType::ConstPointer  wmpimage,
typename InputWhiteMatterProbabilityImageType::IndexType  index 
)
protected

Randomly samples the existence of a fiber tract in the current voxel

template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
void itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::GenerateData ( )
template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
void itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::GenerateTensorImageOutput ( void  )
template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
void itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::GenerateTractContainerOutput ( void  )
template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
virtual const bValueContainerType* itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::GetbValues ( )
virtual
template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
virtual const char* itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::GetClassName ( ) const
virtual
template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
virtual const GradientDirectionContainerType* itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::GetGradients ( )
virtual
template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
virtual unsigned int itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::GetMaxLikelihoodCacheSize ( )
virtual
template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
virtual unsigned int itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::GetMaxTractLength ( )
virtual
template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
virtual MeasurementFrameType itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::GetMeasurementFrame ( )
virtual
template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
virtual OutputTensorImageType* itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::GetOutputTensorImage ( )
virtual

Get TensorImage

template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
virtual TractContainerType* itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::GetOutputTractContainer ( )
virtual

Get the Tracts that are generated

template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
virtual const TractOrientationContainerType* itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::GetSampleDirections ( )
virtual
template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
virtual InputDWIImageType::IndexType itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::GetSeedIndex ( )
virtual
template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
virtual unsigned int itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::GetTotalTracts ( )
virtual
template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::itkSetInputMacro ( WhiteMatterProbabilityImage  ,
InputWhiteMatterProbabilityImageType   
)

Set/Get the White Matter Probability Input image

template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
void itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::LoadDefaultSampleDirections ( void  )
protected

Load the default Sample Directions

template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
static Pointer itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::New ( )
static
template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
void itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::ProbabilisticallyInterpolate ( vnl_random &  randomgenerator,
const TractType::ContinuousIndexType cindex,
typename InputDWIImageType::IndexType &  index 
)
protected

Randomly chose a neighboring pixel weighted on distance

template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
void itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::SampleTractOrientation ( vnl_random &  randomgenerator,
const ProbabilityDistributionImageType::PixelType posterior,
TractOrientationContainerType::ConstPointer  orientations,
TractOrientationContainerType::Element &  choosendirection 
)
protected
template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
virtual void itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::SetbValues ( const bValueContainerType _arg)
virtual

Set/Get bvalues

template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
virtual void itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::SetGradients ( const GradientDirectionContainerType _arg)
virtual

Set/Get of gradient directions

template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
virtual void itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::SetMaxLikelihoodCacheSize ( unsigned int  _arg)
virtual

Set/Get the Maximum Likelihood Cache Size, the max num. of cached voxels

template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
virtual void itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::SetMaxTractLength ( unsigned int  _arg)
virtual

the maximum length of Tract

template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
virtual void itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::SetMeasurementFrame ( MeasurementFrameType  _arg)
virtual

Set/Get the Measurement Frame

template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
InputWhiteMatterProbabilityImageType void itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::SetPrimaryInput ( DataObject *  input)
inline

Definition at line 119 of file itkStochasticTractographyFilter.h.

References MITK_INFO, and mitk::New().

template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
virtual void itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::SetSampleDirections ( const TractOrientationContainerType _arg)
virtual

Set/Get the list of directions to sample

template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
virtual void itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::SetSeedIndex ( typename InputDWIImageType::IndexType  _arg)
virtual

Set/Get the seed index

template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
virtual void itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::SetTotalTracts ( unsigned int  _arg)
virtual

the number of Tracts to generate

template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
void itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::StochasticTractGeneration ( typename InputDWIImageType::ConstPointer  dwiimagePtr,
typename InputWhiteMatterProbabilityImageType::ConstPointer  maskimagePtr,
typename InputDWIImageType::IndexType  seedindex,
unsigned long  randomseed,
TractType::Pointer  tract 
)
protected
template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
static ITK_THREAD_RETURN_TYPE itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::StochasticTractGenerationCallback ( void *  arg)
staticprotected

Callback routine used by the threading library. This routine just calls the ThreadedGenerateData method after setting the correct region for this thread.

template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
void itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::StoreTract ( TractType::Pointer  tract)
protected

Thread Safe Function to store a tract to a TractContainer

template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
void itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::TractContainerToConnectivityMap ( TractContainerType::Pointer  tractcontainer)
protected

Function to write a tract to the connectivity map

template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
void itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::UpdateGradientDirections ( void  )
protected

Functions and data related to fitting the tensor model at each pixel

template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
void itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::UpdateTensorModelFittingMatrices ( void  )
protected

Member Data Documentation

template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
vnl_matrix< double >* itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::m_A
protected

Definition at line 287 of file itkStochasticTractographyFilter.h.

template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
vnl_qr< double >* itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::m_Aqr
protected

Definition at line 288 of file itkStochasticTractographyFilter.h.

template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
bValueContainerType::ConstPointer itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::m_bValues
protected

Definition at line 277 of file itkStochasticTractographyFilter.h.

template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
RealTimeClock::Pointer itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::m_ClockPtr
protected

Definition at line 296 of file itkStochasticTractographyFilter.h.

template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
unsigned long itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::m_CurrentLikelihoodCacheElements
protected

Definition at line 293 of file itkStochasticTractographyFilter.h.

template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
GradientDirectionContainerType::ConstPointer itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::m_Gradients
protected

Definition at line 274 of file itkStochasticTractographyFilter.h.

template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
SimpleFastMutexLock itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::m_LikelihoodCacheMutex
protected

Definition at line 294 of file itkStochasticTractographyFilter.h.

template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
LikelihoodCacheMutexImageType::Pointer itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::m_LikelihoodCacheMutexImagePtr
protected

Definition at line 271 of file itkStochasticTractographyFilter.h.

template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
ProbabilityDistributionImageType::Pointer itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::m_LikelihoodCachePtr
protected

Definition at line 289 of file itkStochasticTractographyFilter.h.

template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
unsigned long itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::m_MaxLikelihoodCacheElements
protected

Definition at line 292 of file itkStochasticTractographyFilter.h.

template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
unsigned long itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::m_MaxLikelihoodCacheSize
protected

Definition at line 291 of file itkStochasticTractographyFilter.h.

template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
unsigned int itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::m_MaxTractLength
protected

Definition at line 273 of file itkStochasticTractographyFilter.h.

template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
MeasurementFrameType itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::m_MeasurementFrame
protected

Definition at line 269 of file itkStochasticTractographyFilter.h.

template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
SimpleFastMutexLock itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::m_OutputImageMutex
protected

Definition at line 301 of file itkStochasticTractographyFilter.h.

template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
OutputTensorImageType::Pointer itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::m_OutputTensorImage
protected

Definition at line 305 of file itkStochasticTractographyFilter.h.

template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
TractContainerType::Pointer itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::m_OutputTractContainer
protected

Definition at line 302 of file itkStochasticTractographyFilter.h.

template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
SimpleFastMutexLock itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::m_OutputTractContainerMutex
protected

Definition at line 303 of file itkStochasticTractographyFilter.h.

template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
vnl_random itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::m_RandomGenerator
protected

Definition at line 306 of file itkStochasticTractographyFilter.h.

template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
TractOrientationContainerType::ConstPointer itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::m_SampleDirections
protected

Definition at line 280 of file itkStochasticTractographyFilter.h.

template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
InputDWIImageType::IndexType itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::m_SeedIndex
protected

Definition at line 279 of file itkStochasticTractographyFilter.h.

template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
unsigned int itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::m_TotalDelegatedTracts
protected

Definition at line 297 of file itkStochasticTractographyFilter.h.

template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
SimpleFastMutexLock itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::m_TotalDelegatedTractsMutex
protected

Definition at line 298 of file itkStochasticTractographyFilter.h.

template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
unsigned int itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::m_TotalTracts
protected

Definition at line 272 of file itkStochasticTractographyFilter.h.

template<class TInputDWIImage , class TInputWhiteMatterProbabilityImage , class TOutputConnectivityImage >
GradientDirectionContainerType::Pointer itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::m_TransformedGradients
protected

Definition at line 276 of file itkStochasticTractographyFilter.h.


The documentation for this class was generated from the following file: