Medical Imaging Interaction Toolkit
2016.11.0
Medical Imaging Interaction Toolkit
|
#include <itkStochasticTractographyFilter.h>
Classes | |
struct | StochasticTractGenerationCallbackStruct |
Public Types | |
typedef StochasticTractographyFilter | Self |
typedef ImageToImageFilter< TInputDWIImage, TOutputConnectivityImage > | Superclass |
typedef SmartPointer< Self > | Pointer |
typedef SmartPointer< const Self > | ConstPointer |
typedef TInputDWIImage | InputDWIImageType |
typedef TOutputConnectivityImage | OutputConnectivityImageType |
typedef TInputWhiteMatterProbabilityImage | InputWhiteMatterProbabilityImageType |
typedef SlowPolyLineParametricPath< 3 > | TractType |
typedef VectorContainer< unsigned int, typename TractType::Pointer > | TractContainerType |
typedef Image< DiffusionTensor3D< double >, 3 > | OutputTensorImageType |
typedef VectorContainer< unsigned int, vnl_vector_fixed< double, 3 > > | GradientDirectionContainerType |
typedef double | bValueType |
typedef VectorContainer< unsigned int, bValueType > | bValueContainerType |
typedef vnl_matrix_fixed< double, 3, 3 > | MeasurementFrameType |
typedef VectorContainer< unsigned int, vnl_vector_fixed< double, 3 > > | TractOrientationContainerType |
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::PixelType & | AccessLikelihoodCache (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 |
Definition at line 43 of file itkStochasticTractographyFilter.h.
typedef VectorContainer< unsigned int, bValueType > itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::bValueContainerType |
Definition at line 83 of file itkStochasticTractographyFilter.h.
typedef double itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::bValueType |
Types for the Image-wide bValues
Definition at line 82 of file itkStochasticTractographyFilter.h.
typedef SmartPointer< const Self > itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::ConstPointer |
Definition at line 51 of file itkStochasticTractographyFilter.h.
|
protected |
Types for the parameters of the Constrained Model
Definition at line 180 of file itkStochasticTractographyFilter.h.
|
protected |
Type to hold generated DWI values
Definition at line 183 of file itkStochasticTractographyFilter.h.
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.
typedef TInputDWIImage itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::InputDWIImageType |
Types for the DWI Input Image
Definition at line 59 of file itkStochasticTractographyFilter.h.
typedef TInputWhiteMatterProbabilityImage itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::InputWhiteMatterProbabilityImageType |
Types for the Mask Image
Definition at line 65 of file itkStochasticTractographyFilter.h.
|
protected |
Types for the Image of Mutexes of the Likelihood distribution
Definition at line 189 of file itkStochasticTractographyFilter.h.
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.
typedef TOutputConnectivityImage itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::OutputConnectivityImageType |
Types for the Connectivity Output Image
Definition at line 62 of file itkStochasticTractographyFilter.h.
typedef Image< DiffusionTensor3D< double >, 3 > itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::OutputTensorImageType |
Types for Tensor Output Image
Definition at line 75 of file itkStochasticTractographyFilter.h.
typedef SmartPointer< Self > itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::Pointer |
Definition at line 50 of file itkStochasticTractographyFilter.h.
|
protected |
Types for Probability Distribution
Definition at line 186 of file itkStochasticTractographyFilter.h.
typedef StochasticTractographyFilter itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::Self |
Definition at line 47 of file itkStochasticTractographyFilter.h.
typedef ImageToImageFilter< TInputDWIImage, TOutputConnectivityImage > itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::Superclass |
Definition at line 49 of file itkStochasticTractographyFilter.h.
|
protected |
Convenience Types used only inside the filter Types for the parameters of the Tensor Model
Definition at line 177 of file itkStochasticTractographyFilter.h.
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.
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.
typedef SlowPolyLineParametricPath< 3 > itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::TractType |
Tract Types
Definition at line 68 of file itkStochasticTractographyFilter.h.
|
protected |
|
protectedvirtual |
|
protected |
Thread Safe Function to check/update an entry in the likelihood cache
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
Pointer itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::Clone | ( | ) | const |
|
protected |
Thread Safe Function to delegate a tract and obtain a randomseed to start tracking
|
protected |
Randomly samples the existence of a fiber tract in the current voxel
void itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::GenerateData | ( | ) |
void itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::GenerateTensorImageOutput | ( | void | ) |
void itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::GenerateTractContainerOutput | ( | void | ) |
|
virtual |
|
virtual |
|
virtual |
|
virtual |
|
virtual |
|
virtual |
|
virtual |
Get TensorImage
|
virtual |
Get the Tracts that are generated
|
virtual |
|
virtual |
|
virtual |
itk::StochasticTractographyFilter< TInputDWIImage, TInputWhiteMatterProbabilityImage, TOutputConnectivityImage >::itkSetInputMacro | ( | WhiteMatterProbabilityImage | , |
InputWhiteMatterProbabilityImageType | |||
) |
Set/Get the White Matter Probability Input image
|
protected |
Load the default Sample Directions
|
static |
|
protected |
Randomly chose a neighboring pixel weighted on distance
|
protected |
|
virtual |
Set/Get bvalues
|
virtual |
Set/Get of gradient directions
|
virtual |
Set/Get the Maximum Likelihood Cache Size, the max num. of cached voxels
|
virtual |
the maximum length of Tract
|
virtual |
Set/Get the Measurement Frame
|
inline |
Definition at line 119 of file itkStochasticTractographyFilter.h.
References MITK_INFO, and mitk::New().
|
virtual |
Set/Get the list of directions to sample
|
virtual |
Set/Get the seed index
|
virtual |
the number of Tracts to generate
|
protected |
|
staticprotected |
Callback routine used by the threading library. This routine just calls the ThreadedGenerateData method after setting the correct region for this thread.
|
protected |
Thread Safe Function to store a tract to a TractContainer
|
protected |
Function to write a tract to the connectivity map
|
protected |
Functions and data related to fitting the tensor model at each pixel
|
protected |
|
protected |
Definition at line 287 of file itkStochasticTractographyFilter.h.
|
protected |
Definition at line 288 of file itkStochasticTractographyFilter.h.
|
protected |
Definition at line 277 of file itkStochasticTractographyFilter.h.
|
protected |
Definition at line 296 of file itkStochasticTractographyFilter.h.
|
protected |
Definition at line 293 of file itkStochasticTractographyFilter.h.
|
protected |
Definition at line 274 of file itkStochasticTractographyFilter.h.
|
protected |
Definition at line 294 of file itkStochasticTractographyFilter.h.
|
protected |
Definition at line 271 of file itkStochasticTractographyFilter.h.
|
protected |
Definition at line 289 of file itkStochasticTractographyFilter.h.
|
protected |
Definition at line 292 of file itkStochasticTractographyFilter.h.
|
protected |
Definition at line 291 of file itkStochasticTractographyFilter.h.
|
protected |
Definition at line 273 of file itkStochasticTractographyFilter.h.
|
protected |
Definition at line 269 of file itkStochasticTractographyFilter.h.
|
protected |
Definition at line 301 of file itkStochasticTractographyFilter.h.
|
protected |
Definition at line 305 of file itkStochasticTractographyFilter.h.
|
protected |
Definition at line 302 of file itkStochasticTractographyFilter.h.
|
protected |
Definition at line 303 of file itkStochasticTractographyFilter.h.
|
protected |
Definition at line 306 of file itkStochasticTractographyFilter.h.
|
protected |
Definition at line 280 of file itkStochasticTractographyFilter.h.
|
protected |
Definition at line 279 of file itkStochasticTractographyFilter.h.
|
protected |
Definition at line 297 of file itkStochasticTractographyFilter.h.
|
protected |
Definition at line 298 of file itkStochasticTractographyFilter.h.
|
protected |
Definition at line 272 of file itkStochasticTractographyFilter.h.
|
protected |
Definition at line 276 of file itkStochasticTractographyFilter.h.