ITK
5.0.0
Insight Segmentation and Registration Toolkit
|
#include <itkSegmentationLevelSetFunction.h>
Definition at line 47 of file itkSegmentationLevelSetFunction.h.
Public Types | |
using | ConstPointer = SmartPointer< const Self > |
using | ContinuousIndexType = typename InterpolatorType::ContinuousIndexType |
using | FeatureImageType = TFeatureImageType |
using | FeatureScalarType = typename FeatureImageType::PixelType |
using | FloatOffsetType = typename Superclass::FloatOffsetType |
using | GlobalDataStruct = typename Superclass::GlobalDataStruct |
using | ImageType = typename Superclass::ImageType |
using | IndexType = typename ImageType::IndexType |
using | InterpolatorType = LinearInterpolateImageFunction< ImageType > |
using | NeighborhoodType = typename Superclass::NeighborhoodType |
using | PixelRealType = typename Superclass::PixelRealType |
using | Pointer = SmartPointer< Self > |
using | RadiusType = typename Superclass::RadiusType |
using | ScalarValueType = typename Superclass::ScalarValueType |
using | Self = SegmentationLevelSetFunction |
using | Superclass = LevelSetFunction< TImageType > |
using | VectorImageType = Image< VectorType, Self::ImageDimension > |
using | VectorInterpolatorType = VectorLinearInterpolateImageFunction< VectorImageType > |
using | VectorType = typename Superclass::VectorType |
Public Types inherited from itk::LevelSetFunction< TImageType > | |
using | ConstPointer = SmartPointer< const Self > |
using | FloatOffsetType = typename Superclass::FloatOffsetType |
using | ImageType = typename Superclass::ImageType |
using | NeighborhoodScalesType = typename Superclass::NeighborhoodScalesType |
using | NeighborhoodType = typename Superclass::NeighborhoodType |
using | PixelRealType = typename Superclass::PixelRealType |
using | PixelType = typename Superclass::PixelType |
using | Pointer = SmartPointer< Self > |
using | RadiusType = typename Superclass::RadiusType |
using | ScalarValueType = PixelType |
using | Self = LevelSetFunction |
using | Superclass = FiniteDifferenceFunction< TImageType > |
using | TimeStepType = double |
using | VectorType = FixedArray< ScalarValueType, Self::ImageDimension > |
Public Types inherited from itk::FiniteDifferenceFunction< TImageType > | |
using | ConstPointer = SmartPointer< const Self > |
using | DefaultBoundaryConditionType = ZeroFluxNeumannBoundaryCondition< ImageType > |
using | FloatOffsetType = Vector< float, Self::ImageDimension > |
using | ImageType = TImageType |
using | NeighborhoodScalesType = Vector< PixelRealType, Self::ImageDimension > |
using | NeighborhoodType = ConstNeighborhoodIterator< TImageType, DefaultBoundaryConditionType > |
using | PixelRealType = double |
using | PixelType = typename ImageType::PixelType |
using | Pointer = SmartPointer< Self > |
using | RadiusType = typename ConstNeighborhoodIterator< TImageType >::RadiusType |
using | Self = FiniteDifferenceFunction |
using | Superclass = LightObject |
using | TimeStepType = double |
Public Types inherited from itk::LightObject | |
using | ConstPointer = SmartPointer< const Self > |
using | Pointer = SmartPointer< Self > |
using | Self = LightObject |
Static Public Attributes | |
static constexpr unsigned int | ImageDimension = Superclass::ImageDimension |
Static Public Attributes inherited from itk::LevelSetFunction< TImageType > | |
static constexpr unsigned int | ImageDimension = Superclass::ImageDimension |
Static Public Attributes inherited from itk::FiniteDifferenceFunction< TImageType > | |
static constexpr unsigned int | ImageDimension = ImageType::ImageDimension |
Protected Member Functions | |
VectorType | AdvectionField (const NeighborhoodType &, const FloatOffsetType &, GlobalDataStruct *gd) const override |
ScalarValueType | PropagationSpeed (const NeighborhoodType &, const FloatOffsetType &, GlobalDataStruct *gd) const override |
SegmentationLevelSetFunction () | |
~SegmentationLevelSetFunction () override=default | |
Protected Member Functions inherited from itk::LevelSetFunction< TImageType > | |
LevelSetFunction () | |
void | PrintSelf (std::ostream &s, Indent indent) const override |
~LevelSetFunction () override=default | |
Protected Member Functions inherited from itk::FiniteDifferenceFunction< TImageType > | |
FiniteDifferenceFunction () | |
~FiniteDifferenceFunction () override=default | |
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 {0} |
ScalarValueType | m_CurvatureWeight |
ScalarValueType | m_EpsilonMagnitude |
ScalarValueType | m_LaplacianSmoothingWeight |
ScalarValueType | m_PropagationWeight |
bool | m_UseMinimalCurvature {false} |
OffsetValueType | m_xStride [Self::ImageDimension] |
std::slice | x_slice [Self::ImageDimension] |
Protected Attributes inherited from itk::FiniteDifferenceFunction< TImageType > | |
RadiusType | m_Radius |
PixelRealType | m_ScaleCoefficients [ImageDimension] |
Protected Attributes inherited from itk::LightObject | |
std::atomic< int > | m_ReferenceCount |
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 |
using itk::SegmentationLevelSetFunction< TImageType, TFeatureImageType >::ConstPointer = SmartPointer< const Self > |
Definition at line 57 of file itkSegmentationLevelSetFunction.h.
using itk::SegmentationLevelSetFunction< TImageType, TFeatureImageType >::ContinuousIndexType = typename InterpolatorType::ContinuousIndexType |
Continuous index type recognized by the interpolator
Definition at line 88 of file itkSegmentationLevelSetFunction.h.
using itk::SegmentationLevelSetFunction< TImageType, TFeatureImageType >::FeatureImageType = TFeatureImageType |
Definition at line 66 of file itkSegmentationLevelSetFunction.h.
using itk::SegmentationLevelSetFunction< TImageType, TFeatureImageType >::FeatureScalarType = typename FeatureImageType::PixelType |
Definition at line 70 of file itkSegmentationLevelSetFunction.h.
using itk::SegmentationLevelSetFunction< TImageType, TFeatureImageType >::FloatOffsetType = typename Superclass::FloatOffsetType |
Definition at line 67 of file itkSegmentationLevelSetFunction.h.
using itk::SegmentationLevelSetFunction< TImageType, TFeatureImageType >::GlobalDataStruct = typename Superclass::GlobalDataStruct |
Definition at line 73 of file itkSegmentationLevelSetFunction.h.
using itk::SegmentationLevelSetFunction< TImageType, TFeatureImageType >::ImageType = typename Superclass::ImageType |
Extract some parameters from the superclass.
Definition at line 63 of file itkSegmentationLevelSetFunction.h.
using itk::SegmentationLevelSetFunction< TImageType, TFeatureImageType >::IndexType = typename ImageType::IndexType |
Definition at line 71 of file itkSegmentationLevelSetFunction.h.
using itk::SegmentationLevelSetFunction< TImageType, TFeatureImageType >::InterpolatorType = LinearInterpolateImageFunction< ImageType > |
Define a scalar interpolator
Definition at line 82 of file itkSegmentationLevelSetFunction.h.
using itk::SegmentationLevelSetFunction< TImageType, TFeatureImageType >::NeighborhoodType = typename Superclass::NeighborhoodType |
Definition at line 69 of file itkSegmentationLevelSetFunction.h.
using itk::SegmentationLevelSetFunction< TImageType, TFeatureImageType >::PixelRealType = typename Superclass::PixelRealType |
Definition at line 65 of file itkSegmentationLevelSetFunction.h.
using itk::SegmentationLevelSetFunction< TImageType, TFeatureImageType >::Pointer = SmartPointer< Self > |
Definition at line 56 of file itkSegmentationLevelSetFunction.h.
using itk::SegmentationLevelSetFunction< TImageType, TFeatureImageType >::RadiusType = typename Superclass::RadiusType |
Definition at line 64 of file itkSegmentationLevelSetFunction.h.
using itk::SegmentationLevelSetFunction< TImageType, TFeatureImageType >::ScalarValueType = typename Superclass::ScalarValueType |
Definition at line 68 of file itkSegmentationLevelSetFunction.h.
using itk::SegmentationLevelSetFunction< TImageType, TFeatureImageType >::Self = SegmentationLevelSetFunction |
Standard class type aliases.
Definition at line 54 of file itkSegmentationLevelSetFunction.h.
using itk::SegmentationLevelSetFunction< TImageType, TFeatureImageType >::Superclass = LevelSetFunction< TImageType > |
Definition at line 55 of file itkSegmentationLevelSetFunction.h.
using itk::SegmentationLevelSetFunction< TImageType, TFeatureImageType >::VectorImageType = Image< VectorType, Self::ImageDimension > |
Define an image type for the advection field.
Definition at line 79 of file itkSegmentationLevelSetFunction.h.
using itk::SegmentationLevelSetFunction< TImageType, TFeatureImageType >::VectorInterpolatorType = VectorLinearInterpolateImageFunction< VectorImageType > |
Define a vector interpolator
Definition at line 85 of file itkSegmentationLevelSetFunction.h.
using itk::SegmentationLevelSetFunction< TImageType, TFeatureImageType >::VectorType = typename Superclass::VectorType |
Definition at line 72 of file itkSegmentationLevelSetFunction.h.
|
overrideprotecteddefault |
|
inlineprotected |
Definition at line 169 of file itkSegmentationLevelSetFunction.h.
|
overrideprotected |
Advection field. Returns a vector from the computed advectionfield.
|
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 124 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 118 of file itkSegmentationLevelSetFunction.h.
|
inlinevirtual |
Get/Set the image used as the advection field in the level set equation
Definition at line 104 of file itkSegmentationLevelSetFunction.h.
|
inlinevirtual |
Set/Get the image which will be used to calculate the speed function.
Definition at line 91 of file itkSegmentationLevelSetFunction.h.
|
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 98 of file itkSegmentationLevelSetFunction.h.
|
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::VectorThresholdSegmentationLevelSetFunction< TImageType, TFeatureImageType >, itk::ShapeDetectionLevelSetFunction< TImageType, TFeatureImageType >, and itk::ThresholdSegmentationLevelSetFunction< TImageType, TFeatureImageType >.
Referenced by itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::SetSegmentationFunction().
|
overrideprotected |
Returns the propagation speed from the precalculated speed image.
|
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
|
inlinevirtual |
Set/Get the image which will be used to calculate the speed function.
Definition at line 93 of file itkSegmentationLevelSetFunction.h.
void itk::SegmentationLevelSetFunction< TImageType, TFeatureImageType >::SetSpeedImage | ( | ImageType * | s | ) |
Get/Set the image used as the speed function in the level set equation
|
static |
Extract some parameters from the superclass.
Definition at line 76 of file itkSegmentationLevelSetFunction.h.
|
protected |
The image holding the advection field for front propation
Definition at line 154 of file itkSegmentationLevelSetFunction.h.
|
protected |
The image whose features will be used to create a speed image
Definition at line 148 of file itkSegmentationLevelSetFunction.h.
|
protected |
Definition at line 177 of file itkSegmentationLevelSetFunction.h.
|
protected |
The image holding the speed values for front propagation
Definition at line 151 of file itkSegmentationLevelSetFunction.h.
|
protected |
A casting functor to convert between vector types.
Definition at line 158 of file itkSegmentationLevelSetFunction.h.
|
protected |
Definition at line 179 of file itkSegmentationLevelSetFunction.h.