ITK
4.8.0
Insight Segmentation and Registration Toolkit
|
#include <itkSegmentationLevelSetFunction.h>
Definition at line 47 of file itkSegmentationLevelSetFunction.h.
Static Public Attributes | |
static const unsigned int | ImageDimension = Superclass::ImageDimension |
Static Public Attributes inherited from itk::LevelSetFunction< TImageType > | |
static const unsigned int | ImageDimension = Superclass::ImageDimension |
Static Public Attributes inherited from itk::FiniteDifferenceFunction< TImageType > | |
static const unsigned int | ImageDimension = ImageType::ImageDimension |
Protected Member Functions | |
virtual VectorType | AdvectionField (const NeighborhoodType &, const FloatOffsetType &, GlobalDataStruct *gd) const override |
virtual ScalarValueType | PropagationSpeed (const NeighborhoodType &, const FloatOffsetType &, GlobalDataStruct *gd) const override |
SegmentationLevelSetFunction () | |
virtual | ~SegmentationLevelSetFunction () |
Protected Member Functions inherited from itk::LevelSetFunction< TImageType > | |
LevelSetFunction () | |
void | PrintSelf (std::ostream &s, Indent indent) const override |
virtual | ~LevelSetFunction () |
Protected Member Functions inherited from itk::FiniteDifferenceFunction< TImageType > | |
FiniteDifferenceFunction () | |
~FiniteDifferenceFunction () | |
Protected Member Functions inherited from itk::LightObject | |
virtual LightObject::Pointer | InternalClone () const |
LightObject () | |
virtual void | PrintHeader (std::ostream &os, Indent indent) const |
virtual void | PrintTrailer (std::ostream &os, Indent indent) const |
virtual | ~LightObject () |
Protected Attributes | |
VectorImageType::Pointer | m_AdvectionImage |
FeatureImageType::ConstPointer | m_FeatureImage |
InterpolatorType::Pointer | m_Interpolator |
ImageType::Pointer | m_SpeedImage |
Functor::VectorCast< typename VectorInterpolatorType::OutputType, VectorType > | m_VectorCast |
VectorInterpolatorType::Pointer | m_VectorInterpolator |
Protected Attributes inherited from itk::LevelSetFunction< TImageType > | |
ScalarValueType | m_AdvectionWeight |
OffsetValueType | m_Center |
ScalarValueType | m_CurvatureWeight |
ScalarValueType | m_EpsilonMagnitude |
ScalarValueType | m_LaplacianSmoothingWeight |
ScalarValueType | m_PropagationWeight |
bool | m_UseMinimalCurvature |
OffsetValueType | m_xStride [itkGetStaticConstMacro(ImageDimension)] |
std::slice | x_slice [itkGetStaticConstMacro(ImageDimension)] |
Protected Attributes inherited from itk::FiniteDifferenceFunction< TImageType > | |
RadiusType | m_Radius |
PixelRealType | m_ScaleCoefficients [ImageDimension] |
Protected Attributes inherited from itk::LightObject | |
AtomicInt< int > | m_ReferenceCount |
Private Member Functions | |
void | operator= (const Self &) |
SegmentationLevelSetFunction (const Self &) | |
Additional Inherited Members | |
Static Public Member Functions inherited from itk::LevelSetFunction< TImageType > | |
static double | GetMaximumCurvatureTimeStep () |
static double | GetMaximumPropagationTimeStep () |
static Pointer | New () |
static void | SetMaximumCurvatureTimeStep (double n) |
static void | SetMaximumPropagationTimeStep (double n) |
Static Public Member Functions inherited from itk::LightObject | |
static void | BreakOnError () |
static Pointer | New () |
Static Protected Member Functions inherited from itk::LevelSetFunction< TImageType > | |
static VectorType | InitializeZeroVectorConstant () |
Static Protected Attributes inherited from itk::LevelSetFunction< TImageType > | |
static double | m_DT |
static double | m_WaveDT |
static VectorType | m_ZeroVectorConstant |
typedef SmartPointer< const Self > itk::SegmentationLevelSetFunction< TImageType, TFeatureImageType >::ConstPointer |
Definition at line 55 of file itkSegmentationLevelSetFunction.h.
typedef InterpolatorType::ContinuousIndexType itk::SegmentationLevelSetFunction< TImageType, TFeatureImageType >::ContinuousIndexType |
Continuous index type recognized by the interpolator
Definition at line 86 of file itkSegmentationLevelSetFunction.h.
typedef TFeatureImageType itk::SegmentationLevelSetFunction< TImageType, TFeatureImageType >::FeatureImageType |
Definition at line 64 of file itkSegmentationLevelSetFunction.h.
typedef FeatureImageType::PixelType itk::SegmentationLevelSetFunction< TImageType, TFeatureImageType >::FeatureScalarType |
Definition at line 68 of file itkSegmentationLevelSetFunction.h.
typedef Superclass::FloatOffsetType itk::SegmentationLevelSetFunction< TImageType, TFeatureImageType >::FloatOffsetType |
Definition at line 65 of file itkSegmentationLevelSetFunction.h.
typedef Superclass::GlobalDataStruct itk::SegmentationLevelSetFunction< TImageType, TFeatureImageType >::GlobalDataStruct |
Definition at line 71 of file itkSegmentationLevelSetFunction.h.
typedef Superclass::ImageType itk::SegmentationLevelSetFunction< TImageType, TFeatureImageType >::ImageType |
Extract some parameters from the superclass.
Definition at line 58 of file itkSegmentationLevelSetFunction.h.
typedef ImageType::IndexType itk::SegmentationLevelSetFunction< TImageType, TFeatureImageType >::IndexType |
Definition at line 69 of file itkSegmentationLevelSetFunction.h.
typedef LinearInterpolateImageFunction< ImageType > itk::SegmentationLevelSetFunction< TImageType, TFeatureImageType >::InterpolatorType |
Define a scalar interpolator
Definition at line 80 of file itkSegmentationLevelSetFunction.h.
typedef Superclass::NeighborhoodType itk::SegmentationLevelSetFunction< TImageType, TFeatureImageType >::NeighborhoodType |
Definition at line 67 of file itkSegmentationLevelSetFunction.h.
typedef Superclass::PixelRealType itk::SegmentationLevelSetFunction< TImageType, TFeatureImageType >::PixelRealType |
Definition at line 63 of file itkSegmentationLevelSetFunction.h.
typedef SmartPointer< Self > itk::SegmentationLevelSetFunction< TImageType, TFeatureImageType >::Pointer |
Definition at line 54 of file itkSegmentationLevelSetFunction.h.
typedef Superclass::RadiusType itk::SegmentationLevelSetFunction< TImageType, TFeatureImageType >::RadiusType |
Definition at line 62 of file itkSegmentationLevelSetFunction.h.
typedef Superclass::ScalarValueType itk::SegmentationLevelSetFunction< TImageType, TFeatureImageType >::ScalarValueType |
Definition at line 66 of file itkSegmentationLevelSetFunction.h.
typedef SegmentationLevelSetFunction itk::SegmentationLevelSetFunction< TImageType, TFeatureImageType >::Self |
Standard class typedefs.
Definition at line 52 of file itkSegmentationLevelSetFunction.h.
typedef LevelSetFunction< TImageType > itk::SegmentationLevelSetFunction< TImageType, TFeatureImageType >::Superclass |
Definition at line 53 of file itkSegmentationLevelSetFunction.h.
typedef Image< VectorType, itkGetStaticConstMacro(ImageDimension) > itk::SegmentationLevelSetFunction< TImageType, TFeatureImageType >::VectorImageType |
Define an image type for the advection field.
Definition at line 77 of file itkSegmentationLevelSetFunction.h.
typedef VectorLinearInterpolateImageFunction< VectorImageType > itk::SegmentationLevelSetFunction< TImageType, TFeatureImageType >::VectorInterpolatorType |
Define a vector interpolator
Definition at line 83 of file itkSegmentationLevelSetFunction.h.
typedef Superclass::VectorType itk::SegmentationLevelSetFunction< TImageType, TFeatureImageType >::VectorType |
Definition at line 70 of file itkSegmentationLevelSetFunction.h.
|
inlineprotectedvirtual |
Definition at line 166 of file itkSegmentationLevelSetFunction.h.
|
inlineprotected |
Definition at line 167 of file itkSegmentationLevelSetFunction.h.
References itk::SegmentationLevelSetFunction< TImageType, TFeatureImageType >::m_AdvectionImage, itk::SegmentationLevelSetFunction< TImageType, TFeatureImageType >::m_Interpolator, itk::SegmentationLevelSetFunction< TImageType, TFeatureImageType >::m_SpeedImage, itk::SegmentationLevelSetFunction< TImageType, TFeatureImageType >::m_VectorInterpolator, itk::VectorLinearInterpolateImageFunction< TInputImage, TCoordRep >::New(), itk::LinearInterpolateImageFunction< TInputImage, TCoordRep >::New(), and itk::Image< TPixel, VImageDimension >::New().
|
private |
|
overrideprotectedvirtual |
Advection field. Returns a vector from the computed advectionfield.
Reimplemented from itk::LevelSetFunction< TImageType >.
|
virtual |
Allocates the image that will be used for the level set function's Advection field term. See LevelSetFunction for more information.
|
virtual |
Allocates the image that will be used for the level set function's Propagation Speed term. See LevelSetFunction for more information.
|
inlinevirtual |
This method must be defined in a subclass to implement a working function object. This method is called before the solver begins its work to produce the speed image used as the level set function's Advection field term. See LevelSetFunction for more information.
Reimplemented in itk::GeodesicActiveContourShapePriorLevelSetFunction< TImageType, TFeatureImageType >, itk::GeodesicActiveContourLevelSetFunction< TImageType, TFeatureImageType >, itk::CurvesLevelSetFunction< TImageType, TFeatureImageType >, and itk::CannySegmentationLevelSetFunction< TImageType, TFeatureImageType >.
Definition at line 122 of file itkSegmentationLevelSetFunction.h.
|
inlinevirtual |
This method must be defined in a subclass to implement a working function object. This method is called before the solver begins its work to produce the speed image used as the level set function's Propagation speed term. See LevelSetFunction for more information.
Reimplemented in itk::GeodesicActiveContourShapePriorLevelSetFunction< TImageType, TFeatureImageType >, itk::VectorThresholdSegmentationLevelSetFunction< TImageType, TFeatureImageType >, itk::GeodesicActiveContourLevelSetFunction< TImageType, TFeatureImageType >, itk::ShapeDetectionLevelSetFunction< TImageType, TFeatureImageType >, itk::CurvesLevelSetFunction< TImageType, TFeatureImageType >, itk::ThresholdSegmentationLevelSetFunction< TImageType, TFeatureImageType >, itk::CannySegmentationLevelSetFunction< TImageType, TFeatureImageType >, and itk::LaplacianSegmentationLevelSetFunction< TImageType, TFeatureImageType >.
Definition at line 116 of file itkSegmentationLevelSetFunction.h.
|
inlinevirtual |
Get/Set the image used as the advection field in the level set equation
Definition at line 102 of file itkSegmentationLevelSetFunction.h.
References itk::SmartPointer< TObjectType >::GetPointer(), and itk::SegmentationLevelSetFunction< TImageType, TFeatureImageType >::m_AdvectionImage.
Referenced by itk::NarrowBandLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType, Image< TOutputPixelType, TInputImage::ImageDimension > >::GetAdvectionImage(), and itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::GetAdvectionImage().
|
inlinevirtual |
Set/Get the image which will be used to calculate the speed function.
Definition at line 89 of file itkSegmentationLevelSetFunction.h.
References itk::SegmentationLevelSetFunction< TImageType, TFeatureImageType >::m_FeatureImage.
|
virtual |
Run-time type information (and related methods)
Reimplemented from itk::LevelSetFunction< TImageType >.
Reimplemented in itk::GeodesicActiveContourShapePriorLevelSetFunction< TImageType, TFeatureImageType >, itk::GeodesicActiveContourLevelSetFunction< TImageType, TFeatureImageType >, itk::ShapeDetectionLevelSetFunction< TImageType, TFeatureImageType >, itk::CurvesLevelSetFunction< TImageType, TFeatureImageType >, itk::VectorThresholdSegmentationLevelSetFunction< TImageType, TFeatureImageType >, itk::ThresholdSegmentationLevelSetFunction< TImageType, TFeatureImageType >, itk::ShapePriorSegmentationLevelSetFunction< TImageType, TFeatureImageType >, itk::CannySegmentationLevelSetFunction< TImageType, TFeatureImageType >, and itk::LaplacianSegmentationLevelSetFunction< TImageType, TFeatureImageType >.
|
inlinevirtual |
Get/Set the image used as the speed function in the level set equation
Definition at line 96 of file itkSegmentationLevelSetFunction.h.
References itk::SegmentationLevelSetFunction< TImageType, TFeatureImageType >::m_SpeedImage.
Referenced by itk::NarrowBandLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType, Image< TOutputPixelType, TInputImage::ImageDimension > >::GetSpeedImage(), and itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::GetSpeedImage().
|
overridevirtual |
This method creates the appropriate member variable operators for the level-set calculations. The argument to this function is a the radius necessary for performing the level-set calculations.
Reimplemented from itk::LevelSetFunction< TImageType >.
Reimplemented in itk::GeodesicActiveContourShapePriorLevelSetFunction< TImageType, TFeatureImageType >, itk::GeodesicActiveContourLevelSetFunction< TImageType, TFeatureImageType >, itk::VectorThresholdSegmentationLevelSetFunction< TImageType, TFeatureImageType >, itk::CurvesLevelSetFunction< TImageType, TFeatureImageType >, itk::ShapeDetectionLevelSetFunction< TImageType, TFeatureImageType >, itk::ThresholdSegmentationLevelSetFunction< TImageType, TFeatureImageType >, itk::CannySegmentationLevelSetFunction< TImageType, TFeatureImageType >, and itk::LaplacianSegmentationLevelSetFunction< TImageType, TFeatureImageType >.
Referenced by itk::LaplacianSegmentationLevelSetFunction< TImageType, TFeatureImageType >::Initialize(), itk::CannySegmentationLevelSetFunction< TImageType, TFeatureImageType >::Initialize(), itk::ThresholdSegmentationLevelSetFunction< TImageType, TFeatureImageType >::Initialize(), itk::ShapeDetectionLevelSetFunction< TImageType, TFeatureImageType >::Initialize(), itk::VectorThresholdSegmentationLevelSetFunction< TImageType, TFeatureImageType >::Initialize(), itk::GeodesicActiveContourLevelSetFunction< TImageType, TFeatureImageType >::Initialize(), itk::GeodesicActiveContourShapePriorLevelSetFunction< TImageType, TFeatureImageType >::Initialize(), and itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::SetSegmentationFunction().
|
private |
|
overrideprotectedvirtual |
Returns the propagation speed from the precalculated speed image.
Reimplemented from itk::LevelSetFunction< TImageType >.
Referenced by itk::CurvesLevelSetFunction< TImageType, TFeatureImageType >::CurvatureSpeed(), itk::ShapeDetectionLevelSetFunction< TImageType, TFeatureImageType >::CurvatureSpeed(), itk::GeodesicActiveContourLevelSetFunction< TImageType, TFeatureImageType >::CurvatureSpeed(), and itk::GeodesicActiveContourShapePriorLevelSetFunction< TImageType, TFeatureImageType >::CurvatureSpeed().
|
virtual |
Determines whether Positive or Negative speed terms will cause surface expansion. This method flips the sign of all of the speed, advection, etc terms. By convention, filters should be written so that POSITIVE speed terms cause surface expansion. Calling this method will toggle between the standard POSITIVE EXPANSION convention and the nonstandard NEGATIVE EXPANSION convention.
IMPORTANT: When adding terms to the level-set equation through subclassing you may need to override this function so that your new terms will be properly adjusted.
void itk::SegmentationLevelSetFunction< TImageType, TFeatureImageType >::SetAdvectionImage | ( | VectorImageType * | s | ) |
Get/Set the image used as the advection field in the level set equation
Referenced by itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::SetAdvectionImage().
|
inlinevirtual |
Set/Get the image which will be used to calculate the speed function.
Definition at line 91 of file itkSegmentationLevelSetFunction.h.
References itk::SegmentationLevelSetFunction< TImageType, TFeatureImageType >::m_FeatureImage.
Referenced by itk::NarrowBandLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType, Image< TOutputPixelType, TInputImage::ImageDimension > >::SetFeatureImage(), and itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::SetFeatureImage().
void itk::SegmentationLevelSetFunction< TImageType, TFeatureImageType >::SetSpeedImage | ( | ImageType * | s | ) |
Get/Set the image used as the speed function in the level set equation
Referenced by itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::SetSpeedImage().
|
static |
Extract some parameters from the superclass.
Definition at line 74 of file itkSegmentationLevelSetFunction.h.
|
protected |
The image holding the advection field for front propation
Definition at line 152 of file itkSegmentationLevelSetFunction.h.
Referenced by itk::SegmentationLevelSetFunction< TImageType, TFeatureImageType >::GetAdvectionImage(), and itk::SegmentationLevelSetFunction< TImageType, TFeatureImageType >::SegmentationLevelSetFunction().
|
protected |
The image whose features will be used to create a speed image
Definition at line 146 of file itkSegmentationLevelSetFunction.h.
Referenced by itk::SegmentationLevelSetFunction< TImageType, TFeatureImageType >::GetFeatureImage(), and itk::SegmentationLevelSetFunction< TImageType, TFeatureImageType >::SetFeatureImage().
|
protected |
Definition at line 175 of file itkSegmentationLevelSetFunction.h.
Referenced by itk::SegmentationLevelSetFunction< TImageType, TFeatureImageType >::SegmentationLevelSetFunction().
|
protected |
The image holding the speed values for front propagation
Definition at line 149 of file itkSegmentationLevelSetFunction.h.
Referenced by itk::SegmentationLevelSetFunction< TImageType, TFeatureImageType >::GetSpeedImage(), and itk::SegmentationLevelSetFunction< TImageType, TFeatureImageType >::SegmentationLevelSetFunction().
|
protected |
A casting functor to convert between vector types.
Definition at line 156 of file itkSegmentationLevelSetFunction.h.
|
protected |
Definition at line 177 of file itkSegmentationLevelSetFunction.h.
Referenced by itk::SegmentationLevelSetFunction< TImageType, TFeatureImageType >::SegmentationLevelSetFunction().