NifTK  16.4.1 - 0798f20
CMIC's Translational Medical Imaging Platform
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | List of all members
itk::LagrangianInitializedRelaxStreamlinesFilter< TImageType, TScalarType, NDimensions > Class Template Reference

Implements section 2.3.2 in Bourgeat et. al. ISBI 2008. More...

Inheritance diagram for itk::LagrangianInitializedRelaxStreamlinesFilter< TImageType, TScalarType, NDimensions >:
Inheritance graph
[legend]
Collaboration diagram for itk::LagrangianInitializedRelaxStreamlinesFilter< TImageType, TScalarType, NDimensions >:
Collaboration graph
[legend]

Public Types

typedef
LagrangianInitializedRelaxStreamlinesFilter 
Self
 
typedef RelaxStreamlinesFilter
< TImageType, TScalarType,
NDimensions > 
Superclass
 
typedef SmartPointer< SelfPointer
 
typedef SmartPointer< const SelfConstPointer
 
typedef
Superclass::InputVectorImagePixelType 
InputVectorImagePixelType
 
typedef
Superclass::InputVectorImageType 
InputVectorImageType
 
typedef
Superclass::InputVectorImagePointer 
InputVectorImagePointer
 
typedef
Superclass::InputVectorImageConstPointer 
InputVectorImageConstPointer
 
typedef
Superclass::InputVectorImageIndexType 
InputVectorImageIndexType
 
typedef
Superclass::InputScalarImagePixelType 
InputScalarImagePixelType
 
typedef
Superclass::InputScalarImageType 
InputScalarImageType
 
typedef
Superclass::InputScalarImageSpacingType 
InputScalarImageSpacingType
 
typedef
Superclass::InputScalarImagePointType 
InputScalarImagePointType
 
typedef
Superclass::InputScalarImagePointer 
InputScalarImagePointer
 
typedef
Superclass::InputScalarImageIndexType 
InputScalarImageIndexType
 
typedef
Superclass::InputScalarImageConstPointer 
InputScalarImageConstPointer
 
typedef
Superclass::InputScalarImageRegionType 
InputScalarImageRegionType
 
typedef Superclass::OutputImageType OutputImageType
 
typedef
Superclass::OutputImagePixelType 
OutputImagePixelType
 
typedef
Superclass::OutputImagePointer 
OutputImagePointer
 
typedef
Superclass::OutputImageConstPointer 
OutputImageConstPointer
 
typedef
Superclass::OutputImageIndexType 
OutputImageIndexType
 
typedef
Superclass::OutputImageSpacingType 
OutputImageSpacingType
 
typedef
Superclass::OutputImageRegionType 
OutputImageRegionType
 
typedef
Superclass::OutputImageSizeType 
OutputImageSizeType
 
typedef
Superclass::VectorInterpolatorType 
VectorInterpolatorType
 
typedef
Superclass::VectorInterpolatorPointer 
VectorInterpolatorPointer
 
typedef
Superclass::VectorInterpolatorPointType 
VectorInterpolatorPointType
 
typedef
Superclass::ScalarInterpolatorType 
ScalarInterpolatorType
 
typedef
Superclass::ScalarInterpolatorPointer 
ScalarInterpolatorPointer
 
typedef
Superclass::ScalarInterpolatorPointType 
ScalarInterpolatorPointType
 
typedef ContinuousIndex
< TScalarType, NDimensions > 
ContinuousIndexType
 
- Public Types inherited from itk::RelaxStreamlinesFilter< TImageType, TScalarType, NDimensions >
typedef RelaxStreamlinesFilter Self
 
typedef
BaseCTEStreamlinesFilter
< TImageType, TScalarType,
NDimensions > 
Superclass
 
typedef SmartPointer< SelfPointer
 
typedef SmartPointer< const SelfConstPointer
 
typedef Vector< TScalarType,
NDimensions > 
InputVectorImagePixelType
 
typedef Image
< InputVectorImagePixelType,
NDimensions > 
InputVectorImageType
 
typedef
InputVectorImageType::Pointer 
InputVectorImagePointer
 
typedef
InputVectorImageType::ConstPointer 
InputVectorImageConstPointer
 
typedef
InputVectorImageType::IndexType 
InputVectorImageIndexType
 
typedef TScalarType InputScalarImagePixelType
 
typedef Image
< InputScalarImagePixelType,
NDimensions > 
InputScalarImageType
 
typedef Point< TScalarType,
NDimensions > 
InputScalarImagePointType
 
typedef
InputScalarImageType::SpacingType 
InputScalarImageSpacingType
 
typedef
InputScalarImageType::Pointer 
InputScalarImagePointer
 
typedef
InputScalarImageType::IndexType 
InputScalarImageIndexType
 
typedef
InputScalarImageType::ConstPointer 
InputScalarImageConstPointer
 
typedef
InputScalarImageType::RegionType 
InputScalarImageRegionType
 
typedef InputScalarImageType OutputImageType
 
typedef OutputImageType::PixelType OutputImagePixelType
 
typedef OutputImageType::Pointer OutputImagePointer
 
typedef
OutputImageType::ConstPointer 
OutputImageConstPointer
 
typedef OutputImageType::IndexType OutputImageIndexType
 
typedef
OutputImageType::SpacingType 
OutputImageSpacingType
 
typedef OutputImageType::RegionType OutputImageRegionType
 
typedef OutputImageType::SizeType OutputImageSizeType
 
typedef
VectorInterpolateImageFunction
< InputVectorImageType,TScalarType > 
VectorInterpolatorType
 
typedef
VectorInterpolatorType::Pointer 
VectorInterpolatorPointer
 
typedef
VectorInterpolatorType::PointType 
VectorInterpolatorPointType
 
typedef
InterpolateImageFunction
< InputScalarImageType,TScalarType > 
ScalarInterpolatorType
 
typedef
ScalarInterpolatorType::Pointer 
ScalarInterpolatorPointer
 
typedef
ScalarInterpolatorType::PointType 
ScalarInterpolatorPointType
 
- Public Types inherited from itk::BaseCTEStreamlinesFilter< TImageType, TScalarType, NDimensions >
typedef BaseCTEStreamlinesFilter Self
 
typedef BaseCTEFilter< TImageType > Superclass
 
typedef SmartPointer< SelfPointer
 
typedef SmartPointer< const SelfConstPointer
 
typedef Vector< TScalarType,
NDimensions > 
InputVectorImagePixelType
 
typedef Image
< InputVectorImagePixelType,
NDimensions > 
InputVectorImageType
 
typedef
InputVectorImageType::Pointer 
InputVectorImagePointer
 
typedef
InputVectorImageType::ConstPointer 
InputVectorImageConstPointer
 
typedef TScalarType InputScalarImagePixelType
 
typedef Image
< InputScalarImagePixelType,
NDimensions > 
InputScalarImageType
 
typedef
InputScalarImageType::PointType 
InputScalarImagePointType
 
typedef
InputScalarImageType::Pointer 
InputScalarImagePointer
 
typedef
InputScalarImageType::IndexType 
InputScalarImageIndexType
 
typedef
InputScalarImageType::ConstPointer 
InputScalarImageConstPointer
 
typedef
InputScalarImageType::RegionType 
InputScalarImageRegionType
 
typedef InputScalarImageType OutputImageType
 
typedef OutputImageType::PixelType OutputImagePixelType
 
typedef OutputImageType::Pointer OutputImagePointer
 
typedef
OutputImageType::ConstPointer 
OutputImageConstPointer
 
typedef
VectorInterpolateImageFunction
< InputVectorImageType,TScalarType > 
VectorInterpolatorType
 
typedef
VectorInterpolatorType::Pointer 
VectorInterpolatorPointer
 
typedef
VectorInterpolatorType::PointType 
VectorInterpolatorPointType
 
typedef
InterpolateImageFunction
< InputScalarImageType,TScalarType > 
ScalarInterpolatorType
 
typedef
ScalarInterpolatorType::Pointer 
ScalarInterpolatorPointer
 
typedef
ScalarInterpolatorType::PointType 
ScalarInterpolatorPointType
 
- Public Types inherited from itk::BaseCTEFilter< TImageType >
typedef BaseCTEFilter Self
 
typedef ImageToImageFilter
< TImageType, TImageType > 
Superclass
 
typedef SmartPointer< SelfPointer
 
typedef SmartPointer< const SelfConstPointer
 
typedef TImageType InputImageType
 
typedef InputImageType::PixelType InputPixelType
 
typedef InputImageType::IndexType InputIndexType
 
typedef InputImageType::SizeType InputSizeType
 
typedef InputImageType::Pointer InputImagePointer
 
typedef
InputImageType::ConstPointer 
InputImageConstPointer
 
typedef InputPixelType OutputPixelType
 
typedef Image< OutputPixelType,
TImageType::ImageDimension > 
OutputImageType
 
typedef OutputImageType::Pointer OutputImagePointer
 
typedef
OutputImageType::ConstPointer 
OutputImageConstPointer
 
typedef OutputImageType::SizeType OutputSizeType
 

Public Member Functions

virtual const char * GetClassName () const
 
void SetSegmentedImage (const InputScalarImageType *image)
 
void SetGMPVMap (const InputScalarImageType *image)
 
virtual void SetGreyMatterPVInterpolator (ScalarInterpolatorType *_arg)
 
virtual ScalarInterpolatorTypeGetGreyMatterPVInterpolator ()
 
virtual void SetStepSizeThreshold (double _arg)
 
virtual double GetStepSizeThreshold ()
 
virtual void SetGreyMatterPercentage (double _arg)
 
virtual double GetGreyMatterPercentage ()
 
virtual double GetMaximumSearchDistance ()
 
void SetMaximumSearchDistance (double d)
 
virtual void SetDefaultMaximumSearchDistance (bool _arg)
 
virtual bool GetDefaultMaximumSearchDistance ()
 
- Public Member Functions inherited from itk::RelaxStreamlinesFilter< TImageType, TScalarType, NDimensions >
 itkStaticConstMacro (Dimension, unsigned int, NDimensions)
 
void SetScalarImage (const InputScalarImageType *image)
 
void SetVectorImage (const InputVectorImageType *image)
 
void SetSegmentedImage (const InputScalarImageType *image)
 
virtual void SetEpsilonConvergenceThreshold (double _arg)
 
virtual double GetEpsilonConvergenceThreshold ()
 
virtual void SetMaximumNumberOfIterations (unsigned long int _arg)
 
virtual unsigned long int GetMaximumNumberOfIterations ()
 
virtual void SetMaximumLength (double _arg)
 
virtual double GetMaximumLength ()
 
virtual void SetInitializeBoundaries (bool _arg)
 
virtual bool GetInitializeBoundaries ()
 
OutputImageTypeGetL0Image () const
 
OutputImageTypeGetL1Image () const
 
- Public Member Functions inherited from itk::BaseCTEStreamlinesFilter< TImageType, TScalarType, NDimensions >
virtual void SetLowVoltage (InputScalarImagePixelType _arg)
 
virtual InputScalarImagePixelType GetLowVoltage ()
 
virtual void SetHighVoltage (InputScalarImagePixelType _arg)
 
virtual InputScalarImagePixelType GetHighVoltage ()
 
virtual void SetVectorInterpolator (VectorInterpolatorType *_arg)
 
virtual const
VectorInterpolatorType
GetVectorInterpolator ()
 
virtual void SetScalarInterpolator (ScalarInterpolatorType *_arg)
 
virtual const
ScalarInterpolatorType
GetScalarInterpolator ()
 
- Public Member Functions inherited from itk::BaseCTEFilter< TImageType >
 itkStaticConstMacro (Dimension, unsigned int, TImageType::ImageDimension)
 
virtual InputPixelType GetGreyMatterLabel ()
 
virtual InputPixelType GetWhiteMatterLabel ()
 
virtual InputPixelType GetExtraCerebralMatterLabel ()
 
void SetLabelThresholds (InputPixelType greyMatterLabel, InputPixelType whiteMatterLabel, InputPixelType extraCerebralMatterLabel)
 
virtual bool GetUserHasSetTheLabelThresholds ()
 

Static Public Member Functions

static Pointer New ()
 
- Static Public Member Functions inherited from itk::RelaxStreamlinesFilter< TImageType, TScalarType, NDimensions >
static Pointer New ()
 

Protected Member Functions

 LagrangianInitializedRelaxStreamlinesFilter ()
 
 ~LagrangianInitializedRelaxStreamlinesFilter ()
 
void PrintSelf (std::ostream &os, Indent indent) const
 
virtual void InitializeBoundaries (std::vector< InputScalarImageIndexType > &completeListOfGreyMatterPixels, InputScalarImageType *scalarImage, InputVectorImageType *vectorImage, OutputImageType *L0Image, OutputImageType *L1Image, std::vector< InputScalarImageIndexType > &L0greyList, std::vector< InputScalarImageIndexType > &L1greyList)
 
OutputImagePixelType LagrangianInitialisation (ContinuousIndexType &index, double &direction, double &defaultStepSize, double &minStepSize, InputVectorImageType *vectorImage, InputScalarImageType *greyMatterPVMap)
 
void UpdateGMPVMap (std::vector< InputScalarImageIndexType > &listOfGreyMatterPixels, InputScalarImageType *segmentedImage, InputVectorImageType *vectorImage, InputScalarImageType *gmPVMapImage, InputScalarImageType *editedPVMap)
 
double GetMaxStepSize (InputScalarImageType *image)
 
- Protected Member Functions inherited from itk::RelaxStreamlinesFilter< TImageType, TScalarType, NDimensions >
 RelaxStreamlinesFilter ()
 
 ~RelaxStreamlinesFilter ()
 
void PrintSelf (std::ostream &os, Indent indent) const
 
virtual void GenerateData ()
 
virtual void SolvePDE (bool isInnerBoundary, std::vector< InputScalarImageIndexType > &listOfGreyPixels, InputScalarImageType *scalarImage, InputVectorImageType *vectorImage, OutputImageType *outputImage)
 
- Protected Member Functions inherited from itk::BaseCTEStreamlinesFilter< TImageType, TScalarType, NDimensions >
 BaseCTEStreamlinesFilter ()
 
 ~BaseCTEStreamlinesFilter ()
 
- Protected Member Functions inherited from itk::BaseCTEFilter< TImageType >
 BaseCTEFilter ()
 
virtual ~BaseCTEFilter ()
 
virtual void GenerateInputRequestedRegion ()
 
virtual void EnlargeOutputRequestedRegion (DataObject *itkNotUsed)
 
virtual void CheckInputsAndOutputsSameSize ()
 
virtual bool IsOnBoundary (const InputImageType *image, const InputIndexType &index, const InputPixelType boundaryValue, bool useFullyConnected)
 
virtual bool IsOnCSFBoundary (const InputImageType *image, const InputIndexType &index, bool useFullyConnected)
 
virtual bool IsOnWMBoundary (const InputImageType *image, const InputIndexType &index, bool useFullyConnected)
 
virtual bool IsOnGMBoundary (const InputImageType *image, const InputIndexType &index, bool useFullyConnected)
 

Additional Inherited Members

- Protected Attributes inherited from itk::RelaxStreamlinesFilter< TImageType, TScalarType, NDimensions >
double m_EpsilonConvergenceThreshold
 
unsigned long int m_MaximumNumberOfIterations
 
double m_MaximumLength
 
bool m_InitializeBoundaries
 
- Protected Attributes inherited from itk::BaseCTEStreamlinesFilter< TImageType, TScalarType, NDimensions >
VectorInterpolatorPointer m_VectorInterpolator
 
ScalarInterpolatorPointer m_ScalarInterpolator
 
InputScalarImagePixelType m_LowVoltage
 
InputScalarImagePixelType m_HighVoltage
 
- Protected Attributes inherited from itk::BaseCTEFilter< TImageType >
InputPixelType m_GreyMatterLabel
 
InputPixelType m_WhiteMatterLabel
 
InputPixelType m_ExtraCerebralMatterLabel
 
bool m_UserHasSetTheLabelThresholds
 

Detailed Description

template<class TImageType, typename TScalarType, unsigned int NDimensions>
class itk::LagrangianInitializedRelaxStreamlinesFilter< TImageType, TScalarType, NDimensions >

Implements section 2.3.2 in Bourgeat et. al. ISBI 2008.

This class is implemented as a sub-class of RelaxStreamlinesFilter to make it clear that apart from initializing the boundaries, there is no difference in terms of PDE solving.

Usage: See the implementation of niftkCTEBourgeat2008.cxx

You can additionally set the interpolator, but it defaults to Linear which should be fine. The StepSize threshold is the minimum step size in the dichotomy search, which defaults to 0.001 as mentioned in the paper. This class assumes that at the boundary you are modelling two tissue types, so that when the paper says the stopping point for Lagrangian Initialization (i.e. ray casting) is "where the PV maps are equal", then in this implementation, we simply search for the threshold 0.5. So GreyMatterPercentage defaults to 0.5, but you can tweak it if you want to.

See also
RelaxStreamlinesFilter

Member Typedef Documentation

template<class TImageType , typename TScalarType , unsigned int NDimensions>
typedef SmartPointer<const Self> itk::LagrangianInitializedRelaxStreamlinesFilter< TImageType, TScalarType, NDimensions >::ConstPointer
template<class TImageType , typename TScalarType , unsigned int NDimensions>
typedef ContinuousIndex<TScalarType, NDimensions> itk::LagrangianInitializedRelaxStreamlinesFilter< TImageType, TScalarType, NDimensions >::ContinuousIndexType
template<class TImageType , typename TScalarType , unsigned int NDimensions>
typedef Superclass::InputScalarImageConstPointer itk::LagrangianInitializedRelaxStreamlinesFilter< TImageType, TScalarType, NDimensions >::InputScalarImageConstPointer
template<class TImageType , typename TScalarType , unsigned int NDimensions>
typedef Superclass::InputScalarImageIndexType itk::LagrangianInitializedRelaxStreamlinesFilter< TImageType, TScalarType, NDimensions >::InputScalarImageIndexType
template<class TImageType , typename TScalarType , unsigned int NDimensions>
typedef Superclass::InputScalarImagePixelType itk::LagrangianInitializedRelaxStreamlinesFilter< TImageType, TScalarType, NDimensions >::InputScalarImagePixelType
template<class TImageType , typename TScalarType , unsigned int NDimensions>
typedef Superclass::InputScalarImagePointer itk::LagrangianInitializedRelaxStreamlinesFilter< TImageType, TScalarType, NDimensions >::InputScalarImagePointer
template<class TImageType , typename TScalarType , unsigned int NDimensions>
typedef Superclass::InputScalarImagePointType itk::LagrangianInitializedRelaxStreamlinesFilter< TImageType, TScalarType, NDimensions >::InputScalarImagePointType
template<class TImageType , typename TScalarType , unsigned int NDimensions>
typedef Superclass::InputScalarImageRegionType itk::LagrangianInitializedRelaxStreamlinesFilter< TImageType, TScalarType, NDimensions >::InputScalarImageRegionType
template<class TImageType , typename TScalarType , unsigned int NDimensions>
typedef Superclass::InputScalarImageSpacingType itk::LagrangianInitializedRelaxStreamlinesFilter< TImageType, TScalarType, NDimensions >::InputScalarImageSpacingType
template<class TImageType , typename TScalarType , unsigned int NDimensions>
typedef Superclass::InputScalarImageType itk::LagrangianInitializedRelaxStreamlinesFilter< TImageType, TScalarType, NDimensions >::InputScalarImageType
template<class TImageType , typename TScalarType , unsigned int NDimensions>
typedef Superclass::InputVectorImageConstPointer itk::LagrangianInitializedRelaxStreamlinesFilter< TImageType, TScalarType, NDimensions >::InputVectorImageConstPointer
template<class TImageType , typename TScalarType , unsigned int NDimensions>
typedef Superclass::InputVectorImageIndexType itk::LagrangianInitializedRelaxStreamlinesFilter< TImageType, TScalarType, NDimensions >::InputVectorImageIndexType
template<class TImageType , typename TScalarType , unsigned int NDimensions>
typedef Superclass::InputVectorImagePixelType itk::LagrangianInitializedRelaxStreamlinesFilter< TImageType, TScalarType, NDimensions >::InputVectorImagePixelType

Standard typedefs.

template<class TImageType , typename TScalarType , unsigned int NDimensions>
typedef Superclass::InputVectorImagePointer itk::LagrangianInitializedRelaxStreamlinesFilter< TImageType, TScalarType, NDimensions >::InputVectorImagePointer
template<class TImageType , typename TScalarType , unsigned int NDimensions>
typedef Superclass::InputVectorImageType itk::LagrangianInitializedRelaxStreamlinesFilter< TImageType, TScalarType, NDimensions >::InputVectorImageType
template<class TImageType , typename TScalarType , unsigned int NDimensions>
typedef Superclass::OutputImageConstPointer itk::LagrangianInitializedRelaxStreamlinesFilter< TImageType, TScalarType, NDimensions >::OutputImageConstPointer
template<class TImageType , typename TScalarType , unsigned int NDimensions>
typedef Superclass::OutputImageIndexType itk::LagrangianInitializedRelaxStreamlinesFilter< TImageType, TScalarType, NDimensions >::OutputImageIndexType
template<class TImageType , typename TScalarType , unsigned int NDimensions>
typedef Superclass::OutputImagePixelType itk::LagrangianInitializedRelaxStreamlinesFilter< TImageType, TScalarType, NDimensions >::OutputImagePixelType
template<class TImageType , typename TScalarType , unsigned int NDimensions>
typedef Superclass::OutputImagePointer itk::LagrangianInitializedRelaxStreamlinesFilter< TImageType, TScalarType, NDimensions >::OutputImagePointer
template<class TImageType , typename TScalarType , unsigned int NDimensions>
typedef Superclass::OutputImageRegionType itk::LagrangianInitializedRelaxStreamlinesFilter< TImageType, TScalarType, NDimensions >::OutputImageRegionType
template<class TImageType , typename TScalarType , unsigned int NDimensions>
typedef Superclass::OutputImageSizeType itk::LagrangianInitializedRelaxStreamlinesFilter< TImageType, TScalarType, NDimensions >::OutputImageSizeType
template<class TImageType , typename TScalarType , unsigned int NDimensions>
typedef Superclass::OutputImageSpacingType itk::LagrangianInitializedRelaxStreamlinesFilter< TImageType, TScalarType, NDimensions >::OutputImageSpacingType
template<class TImageType , typename TScalarType , unsigned int NDimensions>
typedef Superclass::OutputImageType itk::LagrangianInitializedRelaxStreamlinesFilter< TImageType, TScalarType, NDimensions >::OutputImageType
template<class TImageType , typename TScalarType , unsigned int NDimensions>
typedef SmartPointer<Self> itk::LagrangianInitializedRelaxStreamlinesFilter< TImageType, TScalarType, NDimensions >::Pointer
template<class TImageType , typename TScalarType , unsigned int NDimensions>
typedef Superclass::ScalarInterpolatorPointer itk::LagrangianInitializedRelaxStreamlinesFilter< TImageType, TScalarType, NDimensions >::ScalarInterpolatorPointer
template<class TImageType , typename TScalarType , unsigned int NDimensions>
typedef Superclass::ScalarInterpolatorPointType itk::LagrangianInitializedRelaxStreamlinesFilter< TImageType, TScalarType, NDimensions >::ScalarInterpolatorPointType
template<class TImageType , typename TScalarType , unsigned int NDimensions>
typedef Superclass::ScalarInterpolatorType itk::LagrangianInitializedRelaxStreamlinesFilter< TImageType, TScalarType, NDimensions >::ScalarInterpolatorType
template<class TImageType , typename TScalarType , unsigned int NDimensions>
typedef LagrangianInitializedRelaxStreamlinesFilter itk::LagrangianInitializedRelaxStreamlinesFilter< TImageType, TScalarType, NDimensions >::Self

Standard "Self" typedef.

template<class TImageType , typename TScalarType , unsigned int NDimensions>
typedef RelaxStreamlinesFilter<TImageType, TScalarType, NDimensions> itk::LagrangianInitializedRelaxStreamlinesFilter< TImageType, TScalarType, NDimensions >::Superclass
template<class TImageType , typename TScalarType , unsigned int NDimensions>
typedef Superclass::VectorInterpolatorPointer itk::LagrangianInitializedRelaxStreamlinesFilter< TImageType, TScalarType, NDimensions >::VectorInterpolatorPointer
template<class TImageType , typename TScalarType , unsigned int NDimensions>
typedef Superclass::VectorInterpolatorPointType itk::LagrangianInitializedRelaxStreamlinesFilter< TImageType, TScalarType, NDimensions >::VectorInterpolatorPointType
template<class TImageType , typename TScalarType , unsigned int NDimensions>
typedef Superclass::VectorInterpolatorType itk::LagrangianInitializedRelaxStreamlinesFilter< TImageType, TScalarType, NDimensions >::VectorInterpolatorType

Constructor & Destructor Documentation

template<class TImageType , typename TScalarType , unsigned int NDimensions>
itk::LagrangianInitializedRelaxStreamlinesFilter< TImageType, TScalarType, NDimensions >::LagrangianInitializedRelaxStreamlinesFilter ( )
protected
template<class TImageType , typename TScalarType , unsigned int NDimensions>
itk::LagrangianInitializedRelaxStreamlinesFilter< TImageType, TScalarType, NDimensions >::~LagrangianInitializedRelaxStreamlinesFilter ( )
inlineprotected

Member Function Documentation

template<class TImageType , typename TScalarType , unsigned int NDimensions>
virtual const char* itk::LagrangianInitializedRelaxStreamlinesFilter< TImageType, TScalarType, NDimensions >::GetClassName ( ) const
virtual
template<class TImageType , typename TScalarType , unsigned int NDimensions>
virtual bool itk::LagrangianInitializedRelaxStreamlinesFilter< TImageType, TScalarType, NDimensions >::GetDefaultMaximumSearchDistance ( )
virtual
template<class TImageType , typename TScalarType , unsigned int NDimensions>
virtual double itk::LagrangianInitializedRelaxStreamlinesFilter< TImageType, TScalarType, NDimensions >::GetGreyMatterPercentage ( )
virtual
template<class TImageType , typename TScalarType , unsigned int NDimensions>
virtual ScalarInterpolatorType* itk::LagrangianInitializedRelaxStreamlinesFilter< TImageType, TScalarType, NDimensions >::GetGreyMatterPVInterpolator ( )
virtual
template<class TImageType , typename TScalarType , unsigned int NDimensions>
virtual double itk::LagrangianInitializedRelaxStreamlinesFilter< TImageType, TScalarType, NDimensions >::GetMaximumSearchDistance ( )
virtual

Maximum distance to search for Lagrangian initialization. In a perfect world, your PV boundary would be 1 voxel thick, and this would be somewhat unnecessary. In the real world, you may be less trustworthy of how wide your PV boundary should be. So, we provide a maximum threshold. If the distance found is greater than this value, the distance value is capped at this value. Default 2mm.

template<class TImageType , typename TScalarType , unsigned int NDimensions>
double itk::LagrangianInitializedRelaxStreamlinesFilter< TImageType, TScalarType, NDimensions >::GetMaxStepSize ( InputScalarImageType image)
protected

Calculates a simple estimate for the max step size of dichotomy search.

template<class TImageType , typename TScalarType , unsigned int NDimensions>
virtual double itk::LagrangianInitializedRelaxStreamlinesFilter< TImageType, TScalarType, NDimensions >::GetStepSizeThreshold ( )
virtual
template<class TImageType , typename TScalarType , unsigned int NDimensions>
virtual void itk::LagrangianInitializedRelaxStreamlinesFilter< TImageType, TScalarType, NDimensions >::InitializeBoundaries ( std::vector< InputScalarImageIndexType > &  completeListOfGreyMatterPixels,
InputScalarImageType scalarImage,
InputVectorImageType vectorImage,
OutputImageType L0Image,
OutputImageType L1Image,
std::vector< InputScalarImageIndexType > &  L0greyList,
std::vector< InputScalarImageIndexType > &  L1greyList 
)
protectedvirtual

We set the whole of L0 and L1 image to zero, and extract the set of GM voxels.

Reimplemented from itk::RelaxStreamlinesFilter< TImageType, TScalarType, NDimensions >.

template<class TImageType , typename TScalarType , unsigned int NDimensions>
OutputImagePixelType itk::LagrangianInitializedRelaxStreamlinesFilter< TImageType, TScalarType, NDimensions >::LagrangianInitialisation ( ContinuousIndexType index,
double &  direction,
double &  defaultStepSize,
double &  minStepSize,
InputVectorImageType vectorImage,
InputScalarImageType greyMatterPVMap 
)
protected

Actually does the search for a single voxel.

template<class TImageType , typename TScalarType , unsigned int NDimensions>
static Pointer itk::LagrangianInitializedRelaxStreamlinesFilter< TImageType, TScalarType, NDimensions >::New ( )
static

Method for creation through the object factory.

template<class TImageType , typename TScalarType , unsigned int NDimensions>
void itk::LagrangianInitializedRelaxStreamlinesFilter< TImageType, TScalarType, NDimensions >::PrintSelf ( std::ostream &  ,
Indent   
) const
protectedvirtual
template<class TImageType , typename TScalarType , unsigned int NDimensions>
virtual void itk::LagrangianInitializedRelaxStreamlinesFilter< TImageType, TScalarType, NDimensions >::SetDefaultMaximumSearchDistance ( bool  _arg)
virtual

Set/Get the flag to determine if we let this filter establish its own max search distance. Defaults to true.

template<class TImageType , typename TScalarType , unsigned int NDimensions>
void itk::LagrangianInitializedRelaxStreamlinesFilter< TImageType, TScalarType, NDimensions >::SetGMPVMap ( const InputScalarImageType image)
inline

Sets the pv map, at input 3.

template<class TImageType , typename TScalarType , unsigned int NDimensions>
virtual void itk::LagrangianInitializedRelaxStreamlinesFilter< TImageType, TScalarType, NDimensions >::SetGreyMatterPercentage ( double  _arg)
virtual

Grey matter percentage to search for. Should always be 50%, so default is 0.5, but you can set it if you feel like it.

template<class TImageType , typename TScalarType , unsigned int NDimensions>
virtual void itk::LagrangianInitializedRelaxStreamlinesFilter< TImageType, TScalarType, NDimensions >::SetGreyMatterPVInterpolator ( ScalarInterpolatorType _arg)
virtual

Set/Get the interpolator for the GM pv map. Defaults to Linear.

template<class TImageType , typename TScalarType , unsigned int NDimensions>
void itk::LagrangianInitializedRelaxStreamlinesFilter< TImageType, TScalarType, NDimensions >::SetMaximumSearchDistance ( double  d)
inline
template<class TImageType , typename TScalarType , unsigned int NDimensions>
void itk::LagrangianInitializedRelaxStreamlinesFilter< TImageType, TScalarType, NDimensions >::SetSegmentedImage ( const InputScalarImageType image)
inline

Sets the segmented/label image, at input 2.

template<class TImageType , typename TScalarType , unsigned int NDimensions>
virtual void itk::LagrangianInitializedRelaxStreamlinesFilter< TImageType, TScalarType, NDimensions >::SetStepSizeThreshold ( double  _arg)
virtual

Set lower threshold of dichotomy search. Default 0.001 as per paper.

template<class TImageType , typename TScalarType , unsigned int NDimensions>
void itk::LagrangianInitializedRelaxStreamlinesFilter< TImageType, TScalarType, NDimensions >::UpdateGMPVMap ( std::vector< InputScalarImageIndexType > &  listOfGreyMatterPixels,
InputScalarImageType segmentedImage,
InputVectorImageType vectorImage,
InputScalarImageType gmPVMapImage,
InputScalarImageType editedPVMap 
)
protected

In section 2.3.2 of Bourgeat's paper, they describe a section, where the PV value is redistributed, thereby editing the GM volume.


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