template<typename TInput, typename TOutput, typename TAuxValue, unsigned int VAuxDimension>
class itk::FastMarchingExtensionImageFilterBase< TInput, TOutput, TAuxValue, VAuxDimension >
Extend auxiliary variables smoothly using Fast Marching.
Fast marching can be used to extend auxiliary variables smoothly from the zero level set. Starting from an initial position on the front, this class simultaneously calculate the signed distance and extend a set of auxiliary values.
This class is templated over the level set image type, the auxiliary variable type and the number of auxiliary variables to extended. The initial front is specified by two containers: one containing the known points and one containing the trial points. The auxiliary variables on the front are represented by two auxiliary variable containers: one containing the value of the variables at the know points and on containing the value of the variables at the trail points.
Implementation of this class is based on Chapter 11 of "Level Set Methods and Fast Marching Methods", J.A. Sethian, Cambridge Press, Second edition, 1999.
For an alternative implementation, see itk::FastMarchingExtensionImageFilter.
- See also
- FastMarchingExtensionImageFilter
-
FastMarchingImageFilter
-
LevelSetTypeDefault
-
AuxVarTypeDefault
Definition at line 58 of file itkFastMarchingExtensionImageFilterBase.h.
|
using | AuxImagePointer = typename AuxImageType::Pointer |
|
using | AuxImageType = Image< AuxValueType, ImageDimension > |
|
using | AuxValueContainerConstIterator = typename AuxValueContainerType::ConstIterator |
|
using | AuxValueContainerPointer = typename AuxValueContainerType::Pointer |
|
using | AuxValueContainerType = VectorContainer< AuxValueVectorType > |
|
using | AuxValueType = TAuxValue |
|
using | AuxValueVectorType = Vector< AuxValueType, AuxDimension > |
|
using | ConstPointer = SmartPointer< const Self > |
|
using | Pointer = SmartPointer< Self > |
|
using | Self = FastMarchingExtensionImageFilterBase |
|
using | Superclass = FastMarchingImageFilterBase< TInput, TOutput > |
|
using | ConnectedComponentImagePointer = typename ConnectedComponentImageType::Pointer |
|
using | ConnectedComponentImageType = Image< unsigned int, ImageDimension > |
|
using | ConstPointer = SmartPointer< const Self > |
|
using | InputImagePointer = typename Superclass::InputDomainPointer |
|
using | InputImageType = typename Superclass::InputDomainType |
|
using | InternalNodeStructureArray = FixedArray< InternalNodeStructure, ImageDimension > |
|
using | LabelImagePointer = typename LabelImageType::Pointer |
|
using | LabelImageType = Image< unsigned char, ImageDimension > |
|
using | NeighborhoodIteratorType = NeighborhoodIterator< LabelImageType > |
|
using | NeighborhoodRadiusType = typename NeighborhoodIteratorType::RadiusType |
|
using | NodePairContainerConstIterator = typename Traits::NodePairContainerConstIterator |
|
using | NodePairContainerPointer = typename Traits::NodePairContainerPointer |
|
using | NodePairContainerType = typename Traits::NodePairContainerType |
|
using | NodePairType = typename Traits::NodePairType |
|
using | NodeType = typename Traits::NodeType |
|
using | OutputDirectionType = typename OutputImageType::DirectionType |
|
using | OutputImagePointer = typename Superclass::OutputDomainPointer |
|
using | OutputImageType = typename Superclass::OutputDomainType |
|
using | OutputPointType = typename OutputImageType::PointType |
|
using | OutputRegionType = typename OutputImageType::RegionType |
|
using | OutputSizeType = typename OutputImageType::SizeType |
|
using | OutputSpacingType = typename OutputImageType::SpacingType |
|
using | Pointer = SmartPointer< Self > |
|
using | Self = FastMarchingImageFilterBase |
|
using | Superclass = FastMarchingBase< TInput, TOutput > |
|
using | ConstPointer = SmartPointer< const Self > |
|
using | InputDomainPointer = typename Traits::InputDomainPointer |
|
using | InputDomainType = typename Traits::InputDomainType |
|
using | InputPixelType = typename Traits::InputPixelType |
|
using | LabelType = typename Traits::LabelType |
|
using | NodePairContainerConstIterator = typename Traits::NodePairContainerConstIterator |
|
using | NodePairContainerPointer = typename Traits::NodePairContainerPointer |
|
using | NodePairContainerType = typename Traits::NodePairContainerType |
|
using | NodePairType = typename Traits::NodePairType |
|
using | NodeType = typename Traits::NodeType |
|
using | OutputDomainPointer = typename Traits::OutputDomainPointer |
|
using | OutputDomainType = typename Traits::OutputDomainType |
|
using | OutputPixelType = typename Traits::OutputPixelType |
|
using | Pointer = SmartPointer< Self > |
|
using | Self = FastMarchingBase |
|
using | StoppingCriterionPointer = typename StoppingCriterionType::Pointer |
|
using | StoppingCriterionType = FastMarchingStoppingCriterionBase< TInput, TOutput > |
|
using | Superclass = typename FastMarchingTraits< TInput, TOutput >::SuperclassType |
|
using | SuperclassType = typename Traits::SuperclassType |
|
using | TopologyCheckEnum = FastMarchingTraitsEnums::TopologyCheck |
|
using | Traits = FastMarchingTraits< TInput, TOutput > |
|
|
void | EnlargeOutputRequestedRegion (DataObject *output) override |
|
| FastMarchingExtensionImageFilterBase () |
|
void | GenerateOutputInformation () override |
|
void | InitializeOutput (OutputImageType *) override |
|
void | PrintSelf (std::ostream &os, Indent indent) const override |
|
void | UpdateValue (OutputImageType *oImage, const NodeType &iNode) override |
|
| ~FastMarchingExtensionImageFilterBase () override=default |
|
bool | DoesVoxelChangeViolateStrictTopology (const NodeType &) const |
|
bool | DoesVoxelChangeViolateWellComposedness (const NodeType &) const |
|
void | EnlargeOutputRequestedRegion (DataObject *output) override |
|
| FastMarchingImageFilterBase () |
|
void | GenerateOutputInformation () override |
|
void | GetInternalNodesUsed (OutputImageType *oImage, const NodeType &iNode, InternalNodeStructureArray &ioNodesUsed) |
|
unsigned char | GetLabelValueForGivenNode (const NodeType &iNode) const override |
|
const OutputPixelType | GetOutputValue (OutputImageType *oImage, const NodeType &iNode) const override |
|
IdentifierType | GetTotalNumberOfNodes () const override |
|
void | InitializeIndices2D () |
|
void | InitializeIndices3D () |
|
bool | IsChangeWellComposed2D (const NodeType &) const |
|
bool | IsChangeWellComposed3D (const NodeType &) const |
|
bool | IsCriticalC1Configuration2D (const std::bitset< 9 > &) const |
|
bool | IsCriticalC1Configuration3D (const std::bitset< 8 > &) const |
|
bool | IsCriticalC2Configuration2D (const std::bitset< 9 > &) const |
|
unsigned int | IsCriticalC2Configuration3D (const std::bitset< 8 > &) const |
|
bool | IsCriticalC3Configuration2D (const std::bitset< 9 > &) const |
|
bool | IsCriticalC4Configuration2D (const std::bitset< 9 > &) const |
|
void | PrintSelf (std::ostream &os, Indent indent) const override |
|
void | SetLabelValueForGivenNode (const NodeType &iNode, const LabelType &iLabel) override |
|
void | SetOutputValue (OutputImageType *oImage, const NodeType &iNode, const OutputPixelType &iValue) override |
|
double | Solve (OutputImageType *oImage, const NodeType &iNode, InternalNodeStructureArray &iNeighbors) const |
|
void | UpdateNeighbors (OutputImageType *oImage, const NodeType &iNode) override |
|
void | UpdateValue (OutputImageType *oImage, const NodeType &iNode) override |
|
| ~FastMarchingImageFilterBase () override=default |
|
bool | CheckTopology (OutputImageType *oImage, const NodeType &iNode) override |
|
void | InitializeOutput (OutputImageType *oImage) override |
|
virtual bool | CheckTopology (OutputDomainType *oDomain, const NodeType &iNode)=0 |
|
| FastMarchingBase () |
|
void | GenerateData () override |
|
virtual unsigned char | GetLabelValueForGivenNode (const NodeType &iNode) const =0 |
|
virtual const OutputPixelType | GetOutputValue (OutputDomainType *oDomain, const NodeType &iNode) const =0 |
|
virtual IdentifierType | GetTotalNumberOfNodes () const =0 |
|
void | Initialize (OutputDomainType *oDomain) |
|
virtual void | InitializeOutput (OutputDomainType *oDomain)=0 |
|
void | PrintSelf (std::ostream &os, Indent indent) const override |
|
virtual void | SetLabelValueForGivenNode (const NodeType &iNode, const LabelType &iLabel)=0 |
|
virtual void | SetOutputValue (OutputDomainType *oDomain, const NodeType &iNode, const OutputPixelType &iValue)=0 |
|
virtual void | UpdateNeighbors (OutputDomainType *oDomain, const NodeType &iNode)=0 |
|
virtual void | UpdateValue (OutputDomainType *oDomain, const NodeType &iNode)=0 |
|
| ~FastMarchingBase () override=default |
|