Medical Imaging Interaction Toolkit  2016.11.0
Medical Imaging Interaction Toolkit
itk::GibbsTrackingFilter< ItkQBallImageType > Class Template Reference

Performes global fiber tractography on the input Q-Ball or tensor image (Gibbs tracking, Reisert 2010). More...

#include <itkGibbsTrackingFilter.h>

Inheritance diagram for itk::GibbsTrackingFilter< ItkQBallImageType >:
Collaboration diagram for itk::GibbsTrackingFilter< ItkQBallImageType >:

Public Types

typedef GibbsTrackingFilter Self
 
typedef ProcessObject Superclass
 
typedef SmartPointer< SelfPointer
 
typedef SmartPointer< const SelfConstPointer
 
typedef Image< DiffusionTensor3D< float >, 3 > ItkTensorImage
 
typedef ItkQBallImageType::Pointer ItkQBallImageTypePointer
 
typedef Image< float, 3 > ItkFloatImageType
 
typedef vtkSmartPointer< vtkPolyData > FiberPolyDataType
 

Public Member Functions

Pointer Clone () const
 
virtual const char * GetClassName () const
 
virtual void SetStartTemperature (float _arg)
 Start temperature of simulated annealing process. More...
 
virtual void SetEndTemperature (float _arg)
 End temperature of simulated annealing process. More...
 
virtual void SetIterations (double _arg)
 Number of iterations. More iterations usually mean better results. More...
 
virtual void SetParticleWeight (float _arg)
 Smaller particle weights result in a higher sensitivity if the method. More...
 
virtual void SetParticleWidth (float _arg)
 Thinner particles cause more reconstructed fibers. More...
 
virtual void SetParticleLength (float _arg)
 
virtual void SetConnectionPotential (float _arg)
 
virtual void SetInexBalance (float _arg)
 Values < 0 result in a stronger weighting of the internal energy, values > 0 cause a stronger weighting of the external energy,. More...
 
virtual void SetParticlePotential (float _arg)
 
virtual void SetMinFiberLength (int _arg)
 Shorter fibers are discarded. More...
 
virtual void SetAbortTracking (bool _arg)
 Set flag to prematurely abort tracking. More...
 
virtual void SetCurvatureThreshold (float _arg)
 Absolute angular threshold between two particles (in radians). More...
 
virtual void SetDuplicateImage (bool _arg)
 Work on copy of input image. More...
 
virtual void SetRandomSeed (int _arg)
 Seed for random generator. More...
 
virtual void SetLoadParameterFile (std::string _arg)
 Parameter file. More...
 
virtual void SetSaveParameterFile (std::string _arg)
 
virtual void SetLutPath (std::string _arg)
 Path to lookuptables. Default is binary directory. More...
 
virtual float GetParticleWeight ()
 
virtual float GetParticleWidth ()
 
virtual float GetParticleLength ()
 
virtual int GetNumParticles ()
 
virtual int GetNumConnections ()
 
virtual int GetNumAcceptedFibers ()
 
virtual float GetProposalAcceptance ()
 
virtual double GetCurrentIteration ()
 
virtual double GetIterations ()
 
virtual bool GetIsInValidState ()
 
FiberPolyDataType GetFiberBundle ()
 Output fibers. More...
 
virtual void SetQBallImage (typename ItkQBallImageType::Pointer _arg)
 
virtual void SetMaskImage (ItkFloatImageType::Pointer _arg)
 
virtual void SetTensorImage (ItkTensorImage::Pointer _arg)
 
virtual void Update () override
 

Static Public Member Functions

static Pointer New ()
 

Protected Member Functions

void GenerateData () override
 
 GibbsTrackingFilter ()
 
virtual ~GibbsTrackingFilter ()
 
void EstimateParticleWeight ()
 
void PrepareMaskImage ()
 
bool LoadParameters ()
 
bool SaveParameters ()
 

Protected Attributes

ItkQBallImageType::Pointer m_QBallImage
 
ItkFloatImageType::Pointer m_MaskImage
 
ItkTensorImage::Pointer m_TensorImage
 
float m_StartTemperature
 Start temperature. More...
 
float m_EndTemperature
 End temperature. More...
 
double m_Iterations
 Total number of iterations. More...
 
double m_CurrentIteration
 Current iteration. More...
 
unsigned long m_CurrentStep
 current tracking step More...
 
float m_ParticleWeight
 w (unitless) More...
 
float m_ParticleWidth
 sigma (mm) More...
 
float m_ParticleLength
 l (mm) More...
 
float m_ConnectionPotential
 gross L (chemisches potential, default 10) More...
 
float m_InexBalance
 gewichtung zwischen den lambdas; -5 ... 5 -> nur intern ... nur extern,default 0 More...
 
float m_ParticlePotential
 default 0.2 More...
 
int m_MinFiberLength
 discard all fibers shortan than the specified length in mm More...
 
bool m_AbortTracking
 set flag to abort tracking More...
 
int m_NumAcceptedFibers
 number of reconstructed fibers generated by the FiberBuilder More...
 
volatile bool m_BuildFibers
 set flag to generate fibers from particle grid More...
 
float m_ProposalAcceptance
 proposal acceptance rate (0-1) More...
 
float m_CurvatureThreshold
 curvature threshold in radians (1 -> no curvature is accepted, -1 all curvature angles are accepted) More...
 
bool m_DuplicateImage
 generates a working copy of the qball image so that the original image won't be changed by the mean subtraction More...
 
int m_NumParticles
 current number of particles in grid More...
 
int m_NumConnections
 current number of connections between particles in grid More...
 
int m_RandomSeed
 seed value for random generator (-1 for standard seeding) More...
 
std::string m_LoadParameterFile
 filename of parameter file (reader) More...
 
std::string m_SaveParameterFile
 filename of parameter file (writer) More...
 
std::string m_LutPath
 path to lookuptables used by the sphere interpolator More...
 
bool m_IsInValidState
 Whether the filter is in a valid state, false if error occured. More...
 
FiberPolyDataType m_FiberPolyData
 container for reconstructed fibers More...
 

Static Protected Attributes

static const int m_ParticleGridCellCapacity
 

Detailed Description

template<class ItkQBallImageType>
class itk::GibbsTrackingFilter< ItkQBallImageType >

Performes global fiber tractography on the input Q-Ball or tensor image (Gibbs tracking, Reisert 2010).

Definition at line 41 of file itkGibbsTrackingFilter.h.

Member Typedef Documentation

template<class ItkQBallImageType>
typedef SmartPointer< const Self > itk::GibbsTrackingFilter< ItkQBallImageType >::ConstPointer

Definition at line 47 of file itkGibbsTrackingFilter.h.

template<class ItkQBallImageType>
typedef vtkSmartPointer< vtkPolyData > itk::GibbsTrackingFilter< ItkQBallImageType >::FiberPolyDataType

Definition at line 56 of file itkGibbsTrackingFilter.h.

template<class ItkQBallImageType>
typedef Image< float, 3 > itk::GibbsTrackingFilter< ItkQBallImageType >::ItkFloatImageType

Definition at line 55 of file itkGibbsTrackingFilter.h.

template<class ItkQBallImageType>
typedef ItkQBallImageType::Pointer itk::GibbsTrackingFilter< ItkQBallImageType >::ItkQBallImageTypePointer

Definition at line 54 of file itkGibbsTrackingFilter.h.

template<class ItkQBallImageType>
typedef Image< DiffusionTensor3D<float>, 3 > itk::GibbsTrackingFilter< ItkQBallImageType >::ItkTensorImage

Definition at line 53 of file itkGibbsTrackingFilter.h.

template<class ItkQBallImageType>
typedef SmartPointer< Self > itk::GibbsTrackingFilter< ItkQBallImageType >::Pointer

Definition at line 46 of file itkGibbsTrackingFilter.h.

template<class ItkQBallImageType>
typedef GibbsTrackingFilter itk::GibbsTrackingFilter< ItkQBallImageType >::Self

Definition at line 44 of file itkGibbsTrackingFilter.h.

template<class ItkQBallImageType>
typedef ProcessObject itk::GibbsTrackingFilter< ItkQBallImageType >::Superclass

Definition at line 45 of file itkGibbsTrackingFilter.h.

Constructor & Destructor Documentation

template<class ItkQBallImageType >
itk::GibbsTrackingFilter< ItkQBallImageType >::GibbsTrackingFilter ( )
protected

Definition at line 45 of file itkGibbsTrackingFilter.cpp.

template<class ItkQBallImageType >
itk::GibbsTrackingFilter< ItkQBallImageType >::~GibbsTrackingFilter ( )
protectedvirtual

Definition at line 75 of file itkGibbsTrackingFilter.cpp.

Member Function Documentation

template<class ItkQBallImageType>
Pointer itk::GibbsTrackingFilter< ItkQBallImageType >::Clone ( ) const
template<class ItkQBallImageType>
virtual const char* itk::GibbsTrackingFilter< ItkQBallImageType >::GetClassName ( ) const
virtual
template<class ItkQBallImageType>
virtual double itk::GibbsTrackingFilter< ItkQBallImageType >::GetCurrentIteration ( )
virtual
template<class ItkQBallImageType >
GibbsTrackingFilter< ItkQBallImageType >::FiberPolyDataType itk::GibbsTrackingFilter< ItkQBallImageType >::GetFiberBundle ( )

Output fibers.

Definition at line 82 of file itkGibbsTrackingFilter.cpp.

template<class ItkQBallImageType>
virtual bool itk::GibbsTrackingFilter< ItkQBallImageType >::GetIsInValidState ( )
virtual
template<class ItkQBallImageType>
virtual double itk::GibbsTrackingFilter< ItkQBallImageType >::GetIterations ( )
virtual
template<class ItkQBallImageType>
virtual int itk::GibbsTrackingFilter< ItkQBallImageType >::GetNumAcceptedFibers ( )
virtual
template<class ItkQBallImageType>
virtual int itk::GibbsTrackingFilter< ItkQBallImageType >::GetNumConnections ( )
virtual
template<class ItkQBallImageType>
virtual int itk::GibbsTrackingFilter< ItkQBallImageType >::GetNumParticles ( )
virtual
template<class ItkQBallImageType>
virtual float itk::GibbsTrackingFilter< ItkQBallImageType >::GetParticleLength ( )
virtual
template<class ItkQBallImageType>
virtual float itk::GibbsTrackingFilter< ItkQBallImageType >::GetParticleWeight ( )
virtual

Getter.

template<class ItkQBallImageType>
virtual float itk::GibbsTrackingFilter< ItkQBallImageType >::GetParticleWidth ( )
virtual
template<class ItkQBallImageType>
virtual float itk::GibbsTrackingFilter< ItkQBallImageType >::GetProposalAcceptance ( )
virtual
template<class ItkQBallImageType >
bool itk::GibbsTrackingFilter< ItkQBallImageType >::LoadParameters ( )
protected

Definition at line 383 of file itkGibbsTrackingFilter.cpp.

References M_PI, and MITK_INFO.

template<class ItkQBallImageType>
static Pointer itk::GibbsTrackingFilter< ItkQBallImageType >::New ( )
static
template<class ItkQBallImageType >
void itk::GibbsTrackingFilter< ItkQBallImageType >::PrepareMaskImage ( )
protected

Definition at line 345 of file itkGibbsTrackingFilter.cpp.

References MITK_INFO, and mitk::New().

template<class ItkQBallImageType >
bool itk::GibbsTrackingFilter< ItkQBallImageType >::SaveParameters ( )
protected

Definition at line 446 of file itkGibbsTrackingFilter.cpp.

References MITK_INFO.

template<class ItkQBallImageType>
virtual void itk::GibbsTrackingFilter< ItkQBallImageType >::SetAbortTracking ( bool  _arg)
virtual

Set flag to prematurely abort tracking.

template<class ItkQBallImageType>
virtual void itk::GibbsTrackingFilter< ItkQBallImageType >::SetConnectionPotential ( float  _arg)
virtual
template<class ItkQBallImageType>
virtual void itk::GibbsTrackingFilter< ItkQBallImageType >::SetCurvatureThreshold ( float  _arg)
virtual

Absolute angular threshold between two particles (in radians).

template<class ItkQBallImageType>
virtual void itk::GibbsTrackingFilter< ItkQBallImageType >::SetDuplicateImage ( bool  _arg)
virtual

Work on copy of input image.

template<class ItkQBallImageType>
virtual void itk::GibbsTrackingFilter< ItkQBallImageType >::SetEndTemperature ( float  _arg)
virtual

End temperature of simulated annealing process.

template<class ItkQBallImageType>
virtual void itk::GibbsTrackingFilter< ItkQBallImageType >::SetInexBalance ( float  _arg)
virtual

Values < 0 result in a stronger weighting of the internal energy, values > 0 cause a stronger weighting of the external energy,.

template<class ItkQBallImageType>
virtual void itk::GibbsTrackingFilter< ItkQBallImageType >::SetIterations ( double  _arg)
virtual

Number of iterations. More iterations usually mean better results.

template<class ItkQBallImageType>
virtual void itk::GibbsTrackingFilter< ItkQBallImageType >::SetLoadParameterFile ( std::string  _arg)
virtual

Parameter file.

template<class ItkQBallImageType>
virtual void itk::GibbsTrackingFilter< ItkQBallImageType >::SetLutPath ( std::string  _arg)
virtual

Path to lookuptables. Default is binary directory.

template<class ItkQBallImageType>
virtual void itk::GibbsTrackingFilter< ItkQBallImageType >::SetMaskImage ( ItkFloatImageType::Pointer  _arg)
virtual
template<class ItkQBallImageType>
virtual void itk::GibbsTrackingFilter< ItkQBallImageType >::SetMinFiberLength ( int  _arg)
virtual

Shorter fibers are discarded.

template<class ItkQBallImageType>
virtual void itk::GibbsTrackingFilter< ItkQBallImageType >::SetParticleLength ( float  _arg)
virtual
template<class ItkQBallImageType>
virtual void itk::GibbsTrackingFilter< ItkQBallImageType >::SetParticlePotential ( float  _arg)
virtual
template<class ItkQBallImageType>
virtual void itk::GibbsTrackingFilter< ItkQBallImageType >::SetParticleWeight ( float  _arg)
virtual

Smaller particle weights result in a higher sensitivity if the method.

template<class ItkQBallImageType>
virtual void itk::GibbsTrackingFilter< ItkQBallImageType >::SetParticleWidth ( float  _arg)
virtual

Thinner particles cause more reconstructed fibers.

template<class ItkQBallImageType>
virtual void itk::GibbsTrackingFilter< ItkQBallImageType >::SetQBallImage ( typename ItkQBallImageType::Pointer  _arg)
virtual

Input images.

template<class ItkQBallImageType>
virtual void itk::GibbsTrackingFilter< ItkQBallImageType >::SetRandomSeed ( int  _arg)
virtual

Seed for random generator.

template<class ItkQBallImageType>
virtual void itk::GibbsTrackingFilter< ItkQBallImageType >::SetSaveParameterFile ( std::string  _arg)
virtual
template<class ItkQBallImageType>
virtual void itk::GibbsTrackingFilter< ItkQBallImageType >::SetStartTemperature ( float  _arg)
virtual

Start temperature of simulated annealing process.

Setter.

template<class ItkQBallImageType>
virtual void itk::GibbsTrackingFilter< ItkQBallImageType >::SetTensorImage ( ItkTensorImage::Pointer  _arg)
virtual
template<class ItkQBallImageType>
virtual void itk::GibbsTrackingFilter< ItkQBallImageType >::Update ( )
inlineoverridevirtual

Member Data Documentation

template<class ItkQBallImageType>
bool itk::GibbsTrackingFilter< ItkQBallImageType >::m_AbortTracking
protected

set flag to abort tracking

Definition at line 128 of file itkGibbsTrackingFilter.h.

template<class ItkQBallImageType>
volatile bool itk::GibbsTrackingFilter< ItkQBallImageType >::m_BuildFibers
protected

set flag to generate fibers from particle grid

Definition at line 130 of file itkGibbsTrackingFilter.h.

template<class ItkQBallImageType>
float itk::GibbsTrackingFilter< ItkQBallImageType >::m_ConnectionPotential
protected

gross L (chemisches potential, default 10)

Definition at line 124 of file itkGibbsTrackingFilter.h.

template<class ItkQBallImageType>
double itk::GibbsTrackingFilter< ItkQBallImageType >::m_CurrentIteration
protected

Current iteration.

Definition at line 119 of file itkGibbsTrackingFilter.h.

template<class ItkQBallImageType>
unsigned long itk::GibbsTrackingFilter< ItkQBallImageType >::m_CurrentStep
protected

current tracking step

Definition at line 120 of file itkGibbsTrackingFilter.h.

template<class ItkQBallImageType>
float itk::GibbsTrackingFilter< ItkQBallImageType >::m_CurvatureThreshold
protected

curvature threshold in radians (1 -> no curvature is accepted, -1 all curvature angles are accepted)

Definition at line 132 of file itkGibbsTrackingFilter.h.

template<class ItkQBallImageType>
bool itk::GibbsTrackingFilter< ItkQBallImageType >::m_DuplicateImage
protected

generates a working copy of the qball image so that the original image won't be changed by the mean subtraction

Definition at line 133 of file itkGibbsTrackingFilter.h.

template<class ItkQBallImageType>
float itk::GibbsTrackingFilter< ItkQBallImageType >::m_EndTemperature
protected

End temperature.

Definition at line 117 of file itkGibbsTrackingFilter.h.

template<class ItkQBallImageType>
FiberPolyDataType itk::GibbsTrackingFilter< ItkQBallImageType >::m_FiberPolyData
protected

container for reconstructed fibers

Definition at line 142 of file itkGibbsTrackingFilter.h.

template<class ItkQBallImageType>
float itk::GibbsTrackingFilter< ItkQBallImageType >::m_InexBalance
protected

gewichtung zwischen den lambdas; -5 ... 5 -> nur intern ... nur extern,default 0

Definition at line 125 of file itkGibbsTrackingFilter.h.

template<class ItkQBallImageType>
bool itk::GibbsTrackingFilter< ItkQBallImageType >::m_IsInValidState
protected

Whether the filter is in a valid state, false if error occured.

Definition at line 140 of file itkGibbsTrackingFilter.h.

template<class ItkQBallImageType>
double itk::GibbsTrackingFilter< ItkQBallImageType >::m_Iterations
protected

Total number of iterations.

Definition at line 118 of file itkGibbsTrackingFilter.h.

template<class ItkQBallImageType>
std::string itk::GibbsTrackingFilter< ItkQBallImageType >::m_LoadParameterFile
protected

filename of parameter file (reader)

Definition at line 137 of file itkGibbsTrackingFilter.h.

template<class ItkQBallImageType>
std::string itk::GibbsTrackingFilter< ItkQBallImageType >::m_LutPath
protected

path to lookuptables used by the sphere interpolator

Definition at line 139 of file itkGibbsTrackingFilter.h.

template<class ItkQBallImageType>
ItkFloatImageType::Pointer itk::GibbsTrackingFilter< ItkQBallImageType >::m_MaskImage
protected

Definition at line 112 of file itkGibbsTrackingFilter.h.

template<class ItkQBallImageType>
int itk::GibbsTrackingFilter< ItkQBallImageType >::m_MinFiberLength
protected

discard all fibers shortan than the specified length in mm

Definition at line 127 of file itkGibbsTrackingFilter.h.

template<class ItkQBallImageType>
int itk::GibbsTrackingFilter< ItkQBallImageType >::m_NumAcceptedFibers
protected

number of reconstructed fibers generated by the FiberBuilder

Definition at line 129 of file itkGibbsTrackingFilter.h.

template<class ItkQBallImageType>
int itk::GibbsTrackingFilter< ItkQBallImageType >::m_NumConnections
protected

current number of connections between particles in grid

Definition at line 135 of file itkGibbsTrackingFilter.h.

template<class ItkQBallImageType>
int itk::GibbsTrackingFilter< ItkQBallImageType >::m_NumParticles
protected

current number of particles in grid

Definition at line 134 of file itkGibbsTrackingFilter.h.

template<class ItkQBallImageType>
const int itk::GibbsTrackingFilter< ItkQBallImageType >::m_ParticleGridCellCapacity
staticprotected

Definition at line 145 of file itkGibbsTrackingFilter.h.

template<class ItkQBallImageType>
float itk::GibbsTrackingFilter< ItkQBallImageType >::m_ParticleLength
protected

l (mm)

Definition at line 123 of file itkGibbsTrackingFilter.h.

template<class ItkQBallImageType>
float itk::GibbsTrackingFilter< ItkQBallImageType >::m_ParticlePotential
protected

default 0.2

Definition at line 126 of file itkGibbsTrackingFilter.h.

template<class ItkQBallImageType>
float itk::GibbsTrackingFilter< ItkQBallImageType >::m_ParticleWeight
protected

w (unitless)

Definition at line 121 of file itkGibbsTrackingFilter.h.

template<class ItkQBallImageType>
float itk::GibbsTrackingFilter< ItkQBallImageType >::m_ParticleWidth
protected

sigma (mm)

Definition at line 122 of file itkGibbsTrackingFilter.h.

template<class ItkQBallImageType>
float itk::GibbsTrackingFilter< ItkQBallImageType >::m_ProposalAcceptance
protected

proposal acceptance rate (0-1)

Definition at line 131 of file itkGibbsTrackingFilter.h.

template<class ItkQBallImageType>
ItkQBallImageType::Pointer itk::GibbsTrackingFilter< ItkQBallImageType >::m_QBallImage
protected

Definition at line 111 of file itkGibbsTrackingFilter.h.

template<class ItkQBallImageType>
int itk::GibbsTrackingFilter< ItkQBallImageType >::m_RandomSeed
protected

seed value for random generator (-1 for standard seeding)

Definition at line 136 of file itkGibbsTrackingFilter.h.

template<class ItkQBallImageType>
std::string itk::GibbsTrackingFilter< ItkQBallImageType >::m_SaveParameterFile
protected

filename of parameter file (writer)

Definition at line 138 of file itkGibbsTrackingFilter.h.

template<class ItkQBallImageType>
float itk::GibbsTrackingFilter< ItkQBallImageType >::m_StartTemperature
protected

Start temperature.

Definition at line 116 of file itkGibbsTrackingFilter.h.

template<class ItkQBallImageType>
ItkTensorImage::Pointer itk::GibbsTrackingFilter< ItkQBallImageType >::m_TensorImage
protected

Definition at line 113 of file itkGibbsTrackingFilter.h.


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