ITK  4.2.0
Insight Segmentation and Registration Toolkit
Public Types | Public Member Functions | Static Public Attributes | Protected Member Functions | Protected Attributes | Private Attributes
itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell > Class Template Reference

#include <itkMultiphaseFiniteDifferenceImageFilter.h>

+ Inheritance diagram for itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >:
+ Collaboration diagram for itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >:

List of all members.

Public Types

typedef Vector< float,
itkGetStaticConstMacro(ImageDimension) > 
CentroidVectorType
typedef SmartPointer< const SelfConstPointer
typedef FeatureImageType::Pointer FeatureImagePointer
typedef TFeatureImage FeatureImageType
typedef FeatureImageType::PixelType FeaturePixelType
typedef FeatureImageType::PointType FeaturePointType
typedef
FeatureImageType::RegionType 
FeatureRegionType
typedef FeatureImageType::SizeType FeatureSizeType
typedef
FeatureImageType::SpacingType 
FeatureSpacingType
typedef
FiniteDifferenceFunctionType::Pointer 
FiniteDifferenceFunctionPointer
typedef TFiniteDifferenceFunction FiniteDifferenceFunctionType
typedef TIdCell IdCellType
typedef
InputPointType::CoordRepType 
InputCoordRepType
typedef InputImageType::Pointer InputImagePointer
typedef TInputImage InputImageType
typedef InputImageType::IndexType InputIndexType
typedef
InputIndexType::IndexValueType 
InputIndexValueType
typedef
InputImageType::OffsetValueType 
InputOffsetValueType
typedef InputImageType::PixelType InputPixelType
typedef InputImageType::PointType InputPointType
typedef InputImageType::RegionType InputRegionType
typedef InputImageType::SizeType InputSizeType
typedef
InputSizeType::SizeValueType 
InputSizeValueType
typedef InputImageType::SpacingType InputSpacingType
typedef
KdTreeGeneratorType::Pointer 
KdTreeGeneratorPointer
typedef
Statistics::KdTreeGenerator
< SampleType
KdTreeGeneratorType
typedef KdTreeType::Pointer KdTreePointer
typedef
KdTreeGeneratorType::KdTreeType 
KdTreeType
typedef OutputImageType::Pointer OutputImagePointer
typedef TOutputImage OutputImageType
typedef OutputImageType::IndexType OutputIndexType
typedef
OutputImageType::IndexValueType 
OutputIndexValueType
typedef OutputImageType::PixelType OutputPixelType
typedef OutputImageType::RegionType OutputRegionType
typedef OutputImageType::SizeType OutputSizeType
typedef
OutputImageType::SizeValueType 
OutputSizeValueType
typedef SmartPointer< SelfPointer
typedef
FiniteDifferenceFunctionType::RadiusType 
RadiusType
typedef Statistics::ListSample
< CentroidVectorType
SampleType
typedef
MultiphaseFiniteDifferenceImageFilter 
Self
typedef InPlaceImageFilter
< TFeatureImage, TOutputImage > 
Superclass
typedef
FiniteDifferenceFunctionType::TimeStepType 
TimeStepType
typedef std::vector< TimeStepTypeTimeStepVectorType
typedef std::vector< IdCellTypeVectorIdCellType
- Public Types inherited from itk::InPlaceImageFilter< TFeatureImage, TOutputImage >
typedef
InputImageType::ConstPointer 
InputImageConstPointer
typedef InputImageType::PixelType InputImagePixelType
typedef InputImageType::RegionType InputImageRegionType
typedef
Superclass::OutputImagePixelType 
OutputImagePixelType
typedef
Superclass::OutputImageRegionType 
OutputImageRegionType
- Public Types inherited from itk::ImageToImageFilter< TFeatureImage, TOutputImage >
- Public Types inherited from itk::ImageSource< TOutputImage >
typedef
Superclass::DataObjectIdentifierType 
DataObjectIdentifierType
typedef DataObject::Pointer DataObjectPointer
typedef
Superclass::DataObjectPointerArraySizeType 
DataObjectPointerArraySizeType
- Public Types inherited from itk::ProcessObject
typedef std::vector
< DataObjectPointer
DataObjectPointerArray
typedef std::vector
< DataObjectIdentifierType
NameArray
- Public Types inherited from itk::Object
- Public Types inherited from itk::LightObject

Public Member Functions

virtual const unsigned int & GetElapsedIterations ()
InputImagePointer GetLevelSet (const IdCellType &i)
virtual const char * GetNameOfClass () const
virtual void SetElapsedIterations (unsigned int _arg)
void SetFunctionCount (const IdCellType &n)
void SetKdTree (KdTreeType *kdtree)
void SetLevelSet (const IdCellType &i, const InputImageType *levelSet)
void SetLookup (VectorIdCellType lookup)
virtual const
FiniteDifferenceFunctionPointer 
GetDifferenceFunction (const IdCellType &functionIndex) const
virtual void SetDifferenceFunction (const IdCellType &functionIndex, FiniteDifferenceFunctionPointer function)
virtual void SetNumberOfIterations (unsigned int _arg)
virtual const unsigned int & GetNumberOfIterations ()
virtual void SetUseImageSpacing (bool _arg)
virtual void UseImageSpacingOn ()
virtual void UseImageSpacingOff ()
virtual const bool & GetUseImageSpacing ()
virtual void SetMaximumRMSError (double _arg)
virtual const double & GetMaximumRMSError ()
virtual void SetRMSChange (double _arg)
virtual const double & GetRMSChange ()
virtual void SetInitializedState (bool _arg)
virtual const bool & GetInitializedState ()
virtual void InitializedStateOn ()
virtual void InitializedStateOff ()
virtual void SetManualReinitialization (bool _arg)
virtual const bool & GetManualReinitialization ()
virtual void ManualReinitializationOn ()
virtual void ManualReinitializationOff ()
- Public Member Functions inherited from itk::InPlaceImageFilter< TFeatureImage, TOutputImage >
virtual bool CanRunInPlace () const
virtual void SetInPlace (bool _arg)
virtual bool GetInPlace () const
virtual void InPlaceOn ()
virtual void InPlaceOff ()
- Public Member Functions inherited from itk::ImageToImageFilter< TFeatureImage, TOutputImage >
const InputImageTypeGetInput (void) const
const InputImageTypeGetInput (unsigned int idx) const
virtual void PopBackInput ()
virtual void PopFrontInput ()
virtual void PushBackInput (const InputImageType *image)
virtual void PushFrontInput (const InputImageType *image)
virtual void SetInput (const InputImageType *image)
virtual void SetInput (unsigned int, const TFeatureImage *image)
- Public Member Functions inherited from itk::ImageSource< TOutputImage >
OutputImageTypeGetOutput (unsigned int idx)
virtual void GraftNthOutput (unsigned int idx, DataObject *output)
virtual void GraftOutput (DataObject *output)
virtual void GraftOutput (const DataObjectIdentifierType &key, DataObject *output)
OutputImageTypeGetOutput (void)
const OutputImageTypeGetOutput (void) const
virtual
ProcessObject::DataObjectPointer 
MakeOutput (ProcessObject::DataObjectPointerArraySizeType idx)
- Public Member Functions inherited from itk::ProcessObject
virtual void AbortGenerateDataOff ()
virtual void AbortGenerateDataOn ()
virtual void EnlargeOutputRequestedRegion (DataObject *)
virtual const bool & GetAbortGenerateData ()
NameArray GetInputNames () const
MultiThreader * GetMultiThreader () const
DataObjectPointerArraySizeType GetNumberOfIndexedInputs () const
DataObjectPointerArraySizeType GetNumberOfInputs () const
DataObjectPointerArraySizeType GetNumberOfOutputs () const
virtual
DataObjectPointerArraySizeType 
GetNumberOfValidRequiredInputs () const
NameArray GetOutputNames () const
virtual const float & GetProgress ()
NameArray GetRequiredInputNames () const
bool HasInput (const DataObjectIdentifierType &key) const
bool HasOutput (const DataObjectIdentifierType &key) const
virtual DataObjectPointer MakeOutput (const DataObjectIdentifierType &)
virtual void PrepareOutputs ()
virtual void PropagateRequestedRegion (DataObject *output)
virtual void ResetPipeline ()
virtual void SetAbortGenerateData (bool _arg)
virtual void SetProgress (float _arg)
virtual void Update ()
virtual void UpdateLargestPossibleRegion ()
virtual void UpdateOutputData (DataObject *output)
virtual void UpdateOutputInformation ()
void UpdateProgress (float amount)
DataObjectPointerArray GetInputs ()
DataObjectPointerArray GetOutputs ()
DataObjectPointerArray GetIndexedInputs ()
DataObjectPointerArray GetIndexedOutputs ()
DataObjectPointerArraySizeType GetNumberOfIndexedOutputs () const
virtual void SetReleaseDataFlag (bool flag)
virtual bool GetReleaseDataFlag () const
void ReleaseDataFlagOn ()
void ReleaseDataFlagOff ()
virtual void SetReleaseDataBeforeUpdateFlag (bool _arg)
virtual const bool & GetReleaseDataBeforeUpdateFlag ()
virtual void ReleaseDataBeforeUpdateFlagOn ()
virtual void ReleaseDataBeforeUpdateFlagOff ()
virtual void SetNumberOfThreads (ThreadIdType _arg)
virtual const ThreadIdTypeGetNumberOfThreads ()
- Public Member Functions inherited from itk::Object
unsigned long AddObserver (const EventObject &event, Command *)
unsigned long AddObserver (const EventObject &event, Command *) const
virtual LightObject::Pointer CreateAnother () const
virtual void DebugOff () const
virtual void DebugOn () const
CommandGetCommand (unsigned long tag)
bool GetDebug () const
MetaDataDictionaryGetMetaDataDictionary (void)
const MetaDataDictionaryGetMetaDataDictionary (void) const
virtual unsigned long GetMTime () const
virtual const TimeStampGetTimeStamp () const
bool HasObserver (const EventObject &event) const
void InvokeEvent (const EventObject &)
void InvokeEvent (const EventObject &) const
virtual void Modified () const
virtual void Register () const
void RemoveAllObservers ()
void RemoveObserver (unsigned long tag)
void SetDebug (bool debugFlag) const
void SetMetaDataDictionary (const MetaDataDictionary &rhs)
virtual void SetReferenceCount (int)
virtual void UnRegister () const
- Public Member Functions inherited from itk::LightObject
virtual void Delete ()
virtual int GetReferenceCount () const
 itkCloneMacro (Self)
void Print (std::ostream &os, Indent indent=0) const

Static Public Attributes

static const unsigned int ImageDimension = TOutputImage::ImageDimension
- Static Public Attributes inherited from itk::InPlaceImageFilter< TFeatureImage, TOutputImage >
static const unsigned int InputImageDimension
static const unsigned int OutputImageDimension
- Static Public Attributes inherited from itk::ImageToImageFilter< TFeatureImage, TOutputImage >
- Static Public Attributes inherited from itk::ImageSource< TOutputImage >

Protected Member Functions

virtual void AllocateUpdateBuffer ()=0
virtual void ApplyUpdate (TimeStepType dt)=0
virtual TimeStepType CalculateChange ()=0
virtual void CopyInputToOutput ()=0
virtual void GenerateData ()
virtual void GenerateInputRequestedRegion ()
virtual bool Halt ()
virtual void Initialize ()
 MultiphaseFiniteDifferenceImageFilter ()
void PrintSelf (std::ostream &os, Indent indent) const
TimeStepType ResolveTimeStep (const TimeStepVectorType &timeStepList, const std::vector< bool > &valid)
virtual bool ThreadedHalt (void *)
 ~MultiphaseFiniteDifferenceImageFilter ()
virtual void InitializeIteration ()
- Protected Member Functions inherited from itk::InPlaceImageFilter< TFeatureImage, TOutputImage >
virtual void AllocateOutputs ()
virtual bool GetRunningInPlace () const
 InPlaceImageFilter ()
virtual void ReleaseInputs ()
 ~InPlaceImageFilter ()
- Protected Member Functions inherited from itk::ImageToImageFilter< TFeatureImage, TOutputImage >
virtual void CallCopyInputRegionToOutputRegion (OutputImageRegionType &destRegion, const InputImageRegionType &srcRegion)
virtual void CallCopyOutputRegionToInputRegion (InputImageRegionType &destRegion, const OutputImageRegionType &srcRegion)
 ImageToImageFilter ()
virtual void VerifyInputInformation ()
 ~ImageToImageFilter ()
void PushBackInput (const DataObject *input)
void PushFrontInput (const DataObject *input)
- Protected Member Functions inherited from itk::ImageSource< TOutputImage >
virtual void AfterThreadedGenerateData ()
virtual void BeforeThreadedGenerateData ()
 ImageSource ()
virtual unsigned int SplitRequestedRegion (unsigned int i, unsigned int num, OutputImageRegionType &splitRegion)
virtual void ThreadedGenerateData (const OutputImageRegionType &outputRegionForThread, ThreadIdType threadId)
virtual ~ImageSource ()
- Protected Member Functions inherited from itk::ProcessObject
virtual void AddInput (DataObject *input)
virtual void AddOutput (DataObject *output)
bool AddRequiredInputName (const DataObjectIdentifierType &)
virtual void CacheInputReleaseDataFlags ()
virtual void GenerateOutputInformation ()
virtual void GenerateOutputRequestedRegion (DataObject *output)
virtual const
DataObjectPointerArraySizeType
GetNumberOfRequiredInputs ()
virtual const
DataObjectPointerArraySizeType
GetNumberOfRequiredOutputs ()
bool IsIndexedName (const DataObjectIdentifierType &) const
bool IsRequiredInputName (const DataObjectIdentifierType &) const
 itkLegacyMacro (virtual void RemoveInput(DataObject *input))
 itkLegacyMacro (virtual void RemoveOutput(DataObject *output))
 itkLegacyMacro (void SetNumberOfInputs(DataObjectPointerArraySizeType num))
 itkLegacyMacro (void SetNumberOfOutputs(DataObjectPointerArraySizeType num))
DataObjectPointerArraySizeType MakeIndexFromName (const DataObjectIdentifierType &) const
DataObjectIdentifierType MakeNameFromIndex (DataObjectPointerArraySizeType) const
 ProcessObject ()
virtual void PropagateResetPipeline ()
virtual void RemoveInput (const DataObjectIdentifierType &key)
virtual void RemoveInput (DataObjectPointerArraySizeType)
virtual void RemoveOutput (const DataObjectIdentifierType &key)
virtual void RemoveOutput (DataObjectPointerArraySizeType idx)
bool RemoveRequiredInputName (const DataObjectIdentifierType &)
virtual void RestoreInputReleaseDataFlags ()
virtual void SetInput (const DataObjectIdentifierType &key, DataObject *input)
virtual void SetNthInput (DataObjectPointerArraySizeType num, DataObject *input)
virtual void SetNthOutput (DataObjectPointerArraySizeType num, DataObject *output)
void SetNumberOfIndexedInputs (DataObjectPointerArraySizeType num)
void SetNumberOfIndexedOutputs (DataObjectPointerArraySizeType num)
virtual void SetNumberOfRequiredInputs (DataObjectPointerArraySizeType)
virtual void SetNumberOfRequiredOutputs (DataObjectPointerArraySizeType _arg)
virtual void SetOutput (const DataObjectIdentifierType &key, DataObject *output)
virtual void SetPrimaryInput (DataObject *input)
virtual void SetPrimaryOutput (DataObject *output)
void SetRequiredInputNames (const NameArray &)
virtual void VerifyPreconditions ()
 ~ProcessObject ()
DataObjectGetInput (const DataObjectIdentifierType &key)
const DataObjectGetInput (const DataObjectIdentifierType &key) const
DataObjectGetInput (DataObjectPointerArraySizeType)
const DataObjectGetInput (DataObjectPointerArraySizeType idx) const
DataObjectGetPrimaryInput ()
const DataObjectGetPrimaryInput () const
DataObjectGetOutput (const DataObjectIdentifierType &key)
const DataObjectGetOutput (const DataObjectIdentifierType &key) const
DataObjectGetOutput (DataObjectPointerArraySizeType idx)
const DataObjectGetOutput (DataObjectPointerArraySizeType idx) const
DataObjectGetPrimaryOutput ()
const DataObjectGetPrimaryOutput () const
- Protected Member Functions inherited from itk::Object
 Object ()
bool PrintObservers (std::ostream &os, Indent indent) const
virtual void SetTimeStamp (const TimeStamp &time)
virtual ~Object ()
- 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

std::vector
< FiniteDifferenceFunctionPointer
m_DifferenceFunctions
unsigned int m_ElapsedIterations
IdCellType m_FunctionCount
KdTreePointer m_KdTree
std::vector< InputImagePointerm_LevelSet
VectorIdCellType m_Lookup
double m_MaximumRMSError
unsigned int m_NumberOfIterations
double m_RMSChange
bool m_UseImageSpacing

Private Attributes

bool m_InitializedState
bool m_ManualReinitialization
virtual void PostProcessOutput ()
 MultiphaseFiniteDifferenceImageFilter (const Self &)
void operator= (const Self &)

Additional Inherited Members


Detailed Description

template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
class itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >

The Finite Difference Solver Hierarchy

This is an alternate version of the ITK finite difference solver (FDS) framework, supporting the solution of multiple functions, simultaneously. The FDS framework is a set of classes for creating filters to solve partial differential equations on images using an iterative, finite difference update scheme.

The high-level algorithm implemented by the framework can be described by the following pseudocode.
WHILE NOT convergence:
FOR ALL pixels i
FOR ALL functions f
min_time_step = min(min_time_step, calculate_change(f, i))
FOR ALL functions f
update(f, i, time_step)
The following equation describes update $n+1$ at pixel $i$ on discrete image $ u $ :
$u_{\mathbf{i}}^{n+1}=u^n_{\mathbf{i}}+\Delta u^n_{\mathbf{i}}\Delta t$
Component objects
The FDS hierarchy is comprised of two component object types, variations of which are designed to be plugged together to create filters for different applications. At the process level are the ``solver'' objects, which are subclasses of MultiphaseFiniteDifferenceImageFilter. Solver objects are filters that take image inputs and produce image outputs. Solver objects require a ``finite difference function'' object to perform the calculation at each image pixel during iteration. These specialized function objects are subclasses of FiniteDifferenceFunction. FiniteDifferenceFunctions take a neighborhood of pixels as input (in the form of an itk::NeighborhoodIterator) and produce a scalar valued result.
Filters for different applications are created by defining a function object to handle the numerical calculations and choosing (or creating) a solver object that reflects the requirements and constraints of the application. For example, anisotropic diffusion filters are created by plugging anisotropic diffusion functions into the DenseFiniteDifferenceImageFilter2. The separation between function object and solver object allows us to create, for example, sparse-field, dense-field, and narrow-band implementations of a level-set surface evolution filter can all be constructed by plugging the same function object into three different, specialized solvers.
Creating new filters in this hierarchy
The procedure for creating a filter within the FDS hierarchy is to identify all the virtual methods that need to be defined for your particular application. In the simplest case, a filter needs only to instantiate a specific function object and define some halting criteria. For more complicated applications, you may need to define a specialized type of iteration scheme or updating procedure in a higher-level solver object.
Some simple examples are the specific subclasses of AnisotropicDiffusionImageFilter. The leaves of the anisotropic diffusion filter tree only define the function object they use for their particular flavor of diffusion. See CurvatureAnisotropicDiffusionImageFilter and GradientAnisotropicDiffusionImageFilter for details.
FiniteDifferenceImageFilter2
This class defines the generic solver API at the top level of the FDS framework. FiniteDifferenceImageFilter2 is an abstract class that implements the generic, high-level algorithm (described above).
Inputs and Outputs
This filter is an Image to Image filter. Depending on the specific subclass implementation, finite difference image filters may process a variety of image types. The input to the filter is the initial value of $ u $ and the output of the filter is the solution to the p.d.e.
How to use this class
GenerateData() relies on several virtual methods that must be defined by a subclass. Specifically: AllocateUpdateBuffer ApplyUpdate CalculateChange and Halt. To create a finite difference solver, implement a subclass to define these methods.
Note that there is no fixed container type for the buffer used to hold the update $ \Delta $. The container might be another image, or simply a list of values. AllocateUpdateBuffer is responsible for creating the $ \Delta $ container. CalculateChange populates this buffer and ApplyUpdate adds the buffer values to the output image (solution). The boolean Halt() (or ThreadedHalt) method returns a true value to stop iteration.

Based on the paper:

   "An active contour model without edges"
    T. Chan and L. Vese.
    In Scale-Space Theories in Computer Vision, pages 141-151, 1999.
Author:
Mosaliganti K., Smith B., Gelas A., Gouaillard A., Megason S.

This code was taken from the Insight Journal paper:

"Cell Tracking using Coupled Active Surfaces for Nuclei and Membranes"
http://www.insight-journal.org/browse/publication/642
http://hdl.handle.net/10380/3055

That is based on the papers:

"Level Set Segmentation: Active Contours without edge"
http://www.insight-journal.org/browse/publication/322
http://hdl.handle.net/1926/1532

and

"Level set segmentation using coupled active surfaces"
http://www.insight-journal.org/browse/publication/323
http://hdl.handle.net/1926/1533
See also:
DenseFiniteDifferenceImageFilter2

Definition at line 165 of file itkMultiphaseFiniteDifferenceImageFilter.h.


Member Typedef Documentation

template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
typedef Vector< float, itkGetStaticConstMacro(ImageDimension) > itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::CentroidVectorType

Definition at line 226 of file itkMultiphaseFiniteDifferenceImageFilter.h.

template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
typedef SmartPointer< const Self > itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::ConstPointer
template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
typedef FeatureImageType::Pointer itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::FeatureImagePointer
template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
typedef TFeatureImage itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::FeatureImageType
template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
typedef FeatureImageType::PixelType itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::FeaturePixelType
template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
typedef FeatureImageType::PointType itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::FeaturePointType
template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
typedef FeatureImageType::RegionType itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::FeatureRegionType
template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
typedef FeatureImageType::SizeType itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::FeatureSizeType
template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
typedef FeatureImageType::SpacingType itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::FeatureSpacingType
template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
typedef FiniteDifferenceFunctionType::Pointer itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::FiniteDifferenceFunctionPointer
template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
typedef TFiniteDifferenceFunction itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::FiniteDifferenceFunctionType
template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
typedef TIdCell itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::IdCellType
template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
typedef InputPointType::CoordRepType itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::InputCoordRepType

Definition at line 186 of file itkMultiphaseFiniteDifferenceImageFilter.h.

template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
typedef InputImageType::Pointer itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::InputImagePointer
template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
typedef TInputImage itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::InputImageType
template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
typedef InputImageType::IndexType itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::InputIndexType
template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
typedef InputIndexType::IndexValueType itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::InputIndexValueType
template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
typedef InputImageType::OffsetValueType itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::InputOffsetValueType
template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
typedef InputImageType::PixelType itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::InputPixelType
template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
typedef InputImageType::PointType itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::InputPointType
template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
typedef InputImageType::RegionType itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::InputRegionType
template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
typedef InputImageType::SizeType itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::InputSizeType
template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
typedef InputSizeType::SizeValueType itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::InputSizeValueType
template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
typedef InputImageType::SpacingType itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::InputSpacingType
template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
typedef KdTreeGeneratorType::Pointer itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::KdTreeGeneratorPointer

Definition at line 229 of file itkMultiphaseFiniteDifferenceImageFilter.h.

template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
typedef Statistics::KdTreeGenerator< SampleType > itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::KdTreeGeneratorType

Definition at line 228 of file itkMultiphaseFiniteDifferenceImageFilter.h.

template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
typedef KdTreeType::Pointer itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::KdTreePointer

Definition at line 231 of file itkMultiphaseFiniteDifferenceImageFilter.h.

template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
typedef KdTreeGeneratorType::KdTreeType itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::KdTreeType

Definition at line 230 of file itkMultiphaseFiniteDifferenceImageFilter.h.

template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
typedef OutputImageType::Pointer itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::OutputImagePointer
template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
typedef TOutputImage itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::OutputImageType
template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
typedef OutputImageType::IndexType itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::OutputIndexType
template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
typedef OutputImageType::IndexValueType itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::OutputIndexValueType
template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
typedef OutputImageType::PixelType itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::OutputPixelType
template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
typedef OutputImageType::RegionType itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::OutputRegionType
template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
typedef OutputImageType::SizeType itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::OutputSizeType
template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
typedef OutputImageType::SizeValueType itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::OutputSizeValueType

Definition at line 209 of file itkMultiphaseFiniteDifferenceImageFilter.h.

template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
typedef SmartPointer< Self > itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::Pointer
template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
typedef FiniteDifferenceFunctionType::RadiusType itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::RadiusType

Definition at line 223 of file itkMultiphaseFiniteDifferenceImageFilter.h.

template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
typedef Statistics::ListSample< CentroidVectorType > itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::SampleType

Definition at line 227 of file itkMultiphaseFiniteDifferenceImageFilter.h.

template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
typedef MultiphaseFiniteDifferenceImageFilter itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::Self
template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
typedef InPlaceImageFilter< TFeatureImage, TOutputImage > itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::Superclass
template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
typedef FiniteDifferenceFunctionType::TimeStepType itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::TimeStepType
template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
typedef std::vector< TimeStepType > itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::TimeStepVectorType

Definition at line 222 of file itkMultiphaseFiniteDifferenceImageFilter.h.

template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
typedef std::vector< IdCellType > itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::VectorIdCellType

Definition at line 214 of file itkMultiphaseFiniteDifferenceImageFilter.h.


Constructor & Destructor Documentation

template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::MultiphaseFiniteDifferenceImageFilter ( )
inlineprotected

Definition at line 390 of file itkMultiphaseFiniteDifferenceImageFilter.h.

template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::~MultiphaseFiniteDifferenceImageFilter ( )
inlineprotected

Definition at line 404 of file itkMultiphaseFiniteDifferenceImageFilter.h.

template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::MultiphaseFiniteDifferenceImageFilter ( const Self )
private

This method is called after the solution has been generated to allow subclasses to apply some further processing to the output.


Member Function Documentation

template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
virtual void itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::AllocateUpdateBuffer ( )
protectedpure virtual
template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
virtual void itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::ApplyUpdate ( TimeStepType  dt)
protectedpure virtual

This method is defined by a subclass to apply changes to the output from an update buffer and a time step value "dt".

Parameters:
dtTime step value.
template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
virtual TimeStepType itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::CalculateChange ( )
protectedpure virtual

This method is defined by a subclass to populate an update buffer with changes for the pixels in the output. It returns a time step value to be used for the update.

Returns:
A time step to use in updating the output with the changes calculated from this method.

Implemented in itk::MultiphaseSparseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFunction, TIdCell >, itk::MultiphaseDenseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFunction, TIdCell >, and itk::MultiphaseDenseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFunction >.

template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
virtual void itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::CopyInputToOutput ( )
protectedpure virtual
template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
virtual void itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::GenerateData ( )
protectedvirtual

This is the default, high-level algorithm for calculating finite difference solutions. It calls virtual methods in its subclasses to implement the major steps of the algorithm.

Reimplemented from itk::ImageSource< TOutputImage >.

template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
virtual void itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::GenerateInputRequestedRegion ( )
protectedvirtual

FiniteDifferenceImageFilter2 needs a larger input requested region than the output requested region. As such, we need to provide an implementation for GenerateInputRequestedRegion() in order to inform the pipeline execution model.

The filter will ask for a padded region to perform its neighborhood calculations. If no such region is available, the boundaries will be handled as described in the FiniteDifferenceFunction defined by the subclass.
See also:
ProcessObject::GenerateInputRequestedRegion()

Reimplemented from itk::ImageToImageFilter< TFeatureImage, TOutputImage >.

template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
virtual const FiniteDifferenceFunctionPointer itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::GetDifferenceFunction ( const IdCellType functionIndex) const
inlinevirtual

This method returns a pointer to a FiniteDifferenceFunction object that will be used by the filter to calculate updates at image pixels.

Parameters:
functionIndexIndex of difference function to return.
Returns:
A FiniteDifferenceObject pointer.

Definition at line 237 of file itkMultiphaseFiniteDifferenceImageFilter.h.

template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
virtual const unsigned int& itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::GetElapsedIterations ( )
virtual

Get the number of elapsed iterations of the filter.

template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
virtual const bool& itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::GetInitializedState ( )
virtual

Set/Get the state of the filter.

template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
InputImagePointer itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::GetLevelSet ( const IdCellType i)
inline

Definition at line 331 of file itkMultiphaseFiniteDifferenceImageFilter.h.

template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
virtual const bool& itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::GetManualReinitialization ( )
virtual

Require the filter to be manually reinitialized (by calling SetInitializedStateOff()

template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
virtual const double& itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::GetMaximumRMSError ( )
virtual

Set/Get the maximum error allowed in the solution. This may not be defined for all solvers and its meaning may change with the application.

template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
virtual const char* itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::GetNameOfClass ( ) const
virtual
template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
virtual const unsigned int& itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::GetNumberOfIterations ( )
virtual

Set/Get the number of iterations that the filter will run.

template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
virtual const double& itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::GetRMSChange ( )
virtual

Set/Get the root mean squared change of the previous iteration. May not be used by all solvers.

template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
virtual const bool& itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::GetUseImageSpacing ( )
virtual

Use the image spacing information in calculations. Use this option if you want derivatives in physical space. Default is UseImageSpacingOn.

template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
virtual bool itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::Halt ( )
protectedvirtual

This method returns true when the current iterative solution of the equation has met the criteria to stop solving. Defined by a subclass.

template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
virtual void itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::Initialize ( void  )
inlineprotectedvirtual
template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
virtual void itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::InitializedStateOff ( )
virtual

Set/Get the state of the filter.

template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
virtual void itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::InitializedStateOn ( )
virtual

Set/Get the state of the filter.

template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
virtual void itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::InitializeIteration ( )
inlineprotectedvirtual

This method is optionally defined by a subclass and is called immediately prior to each iterative CalculateChange-ApplyUpdate cycle. It can be used to set global variables needed for the next iteration (ie. average gradient magnitude of the image in anisotropic diffusion functions), or otherwise prepare for the next iteration.

Reimplemented in itk::MultiphaseSparseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFunction, TIdCell >, itk::ScalarChanAndVeseSparseLevelSetImageFilter< TInputImage, TFeatureImage, TOutputImage, TFunction, TSharedData, TIdCell >, and itk::ScalarChanAndVeseDenseLevelSetImageFilter< TInputImage, TFeatureImage, TOutputImage, TFunction, TSharedData >.

Definition at line 494 of file itkMultiphaseFiniteDifferenceImageFilter.h.

template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
virtual void itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::ManualReinitializationOff ( )
virtual

Require the filter to be manually reinitialized (by calling SetInitializedStateOff()

template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
virtual void itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::ManualReinitializationOn ( )
virtual

Require the filter to be manually reinitialized (by calling SetInitializedStateOff()

template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
void itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::operator= ( const Self )
private
template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
virtual void itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::PostProcessOutput ( )
inlineprotectedvirtual
template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
void itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::PrintSelf ( std::ostream &  os,
Indent  indent 
) const
protectedvirtual

Methods invoked by Print() to print information about the object including superclasses. Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes.

Reimplemented from itk::InPlaceImageFilter< TFeatureImage, TOutputImage >.

Reimplemented in itk::MultiphaseSparseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFunction, TIdCell >, itk::MultiphaseDenseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFunction, TIdCell >, and itk::MultiphaseDenseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFunction >.

template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
TimeStepType itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::ResolveTimeStep ( const TimeStepVectorType timeStepList,
const std::vector< bool > &  valid 
)
inlineprotected

Virtual method for resolving a single time step from a set of time steps returned from processing threads.

Returns:
Time step (dt) for the iteration update based on a list of time steps generated from the threaded calculated change method (one for each region processed).
Parameters:
timeStepListThe set of time changes compiled from all the threaded calls to ThreadedGenerateData.
validThe set of flags indicating which of "list" elements are valid

The default is to return the minimum value in the list.

template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
virtual void itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::SetDifferenceFunction ( const IdCellType functionIndex,
FiniteDifferenceFunctionPointer  function 
)
inlinevirtual

This method sets the pointer to a FiniteDifferenceFunction object that will be used by the filter to calculate updates at image pixels.

Parameters:
functionIndexIndex of difference function to set.
functionPointer to difference function to set.

Definition at line 255 of file itkMultiphaseFiniteDifferenceImageFilter.h.

template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
virtual void itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::SetElapsedIterations ( unsigned int  _arg)
virtual

Set the number of elapsed iterations of the filter.

template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
void itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::SetFunctionCount ( const IdCellType n)
inline

Definition at line 354 of file itkMultiphaseFiniteDifferenceImageFilter.h.

template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
virtual void itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::SetInitializedState ( bool  _arg)
virtual

Set/Get the state of the filter.

template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
void itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::SetKdTree ( KdTreeType kdtree)
inline

Definition at line 349 of file itkMultiphaseFiniteDifferenceImageFilter.h.

template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
void itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::SetLevelSet ( const IdCellType i,
const InputImageType levelSet 
)
inline

Definition at line 308 of file itkMultiphaseFiniteDifferenceImageFilter.h.

template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
void itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::SetLookup ( VectorIdCellType  lookup)
inline

Definition at line 344 of file itkMultiphaseFiniteDifferenceImageFilter.h.

template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
virtual void itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::SetManualReinitialization ( bool  _arg)
virtual

Require the filter to be manually reinitialized (by calling SetInitializedStateOff()

template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
virtual void itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::SetMaximumRMSError ( double  _arg)
virtual

Set/Get the maximum error allowed in the solution. This may not be defined for all solvers and its meaning may change with the application.

template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
virtual void itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::SetNumberOfIterations ( unsigned int  _arg)
virtual

Set/Get the number of iterations that the filter will run.

template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
virtual void itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::SetRMSChange ( double  _arg)
virtual

Set/Get the root mean squared change of the previous iteration. May not be used by all solvers.

template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
virtual void itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::SetUseImageSpacing ( bool  _arg)
virtual

Use the image spacing information in calculations. Use this option if you want derivatives in physical space. Default is UseImageSpacingOn.

template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
virtual bool itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::ThreadedHalt ( void *  )
inlineprotectedvirtual

This method is similar to Halt(), and its default implementation in this class is simply to call Halt(). However, this method takes as a parameter a void pointer to the MultiThreader::ThreadInfoStruct structure. If you override this method instead of overriding Halt, you will be able to get the current thread ID and handle the Halt method accordingly. This is useful if you are doing a lot of processing in Halt that you don't want parallelized. Notice that ThreadedHalt is only called by the multithreaded filters, so you still should implement Halt, just in case a non-threaded filter is used.

Definition at line 476 of file itkMultiphaseFiniteDifferenceImageFilter.h.

template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
virtual void itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::UseImageSpacingOff ( )
virtual

Use the image spacing information in calculations. Use this option if you want derivatives in physical space. Default is UseImageSpacingOn.

template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
virtual void itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::UseImageSpacingOn ( )
virtual

Use the image spacing information in calculations. Use this option if you want derivatives in physical space. Default is UseImageSpacingOn.


Member Data Documentation

template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
const unsigned int itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::ImageDimension = TOutputImage::ImageDimension
static
template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
std::vector< FiniteDifferenceFunctionPointer > itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::m_DifferenceFunctions
protected

The function that will be used in calculating updates for each pixel.

Definition at line 417 of file itkMultiphaseFiniteDifferenceImageFilter.h.

template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
unsigned int itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::m_ElapsedIterations
protected

Definition at line 411 of file itkMultiphaseFiniteDifferenceImageFilter.h.

template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
IdCellType itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::m_FunctionCount
protected

Definition at line 406 of file itkMultiphaseFiniteDifferenceImageFilter.h.

template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
bool itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::m_InitializedState
private

State that the filter is in, i.e. UNINITIALIZED or INITIALIZED

Definition at line 532 of file itkMultiphaseFiniteDifferenceImageFilter.h.

template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
KdTreePointer itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::m_KdTree
protected

Definition at line 409 of file itkMultiphaseFiniteDifferenceImageFilter.h.

template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
std::vector< InputImagePointer > itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::m_LevelSet
protected

Definition at line 407 of file itkMultiphaseFiniteDifferenceImageFilter.h.

template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
VectorIdCellType itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::m_Lookup
protected

Definition at line 408 of file itkMultiphaseFiniteDifferenceImageFilter.h.

template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
bool itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::m_ManualReinitialization
private

Indicates whether the filter automatically resets to UNINITIALIZED state after completing, or whether filter must be manually reset

Definition at line 529 of file itkMultiphaseFiniteDifferenceImageFilter.h.

template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
double itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::m_MaximumRMSError
protected

Definition at line 412 of file itkMultiphaseFiniteDifferenceImageFilter.h.

template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
unsigned int itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::m_NumberOfIterations
protected

Definition at line 414 of file itkMultiphaseFiniteDifferenceImageFilter.h.

template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
double itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::m_RMSChange
protected

Definition at line 413 of file itkMultiphaseFiniteDifferenceImageFilter.h.

template<class TInputImage, class TFeatureImage, class TOutputImage, class TFiniteDifferenceFunction = FiniteDifferenceFunction< TOutputImage >, typename TIdCell = unsigned int>
bool itk::MultiphaseFiniteDifferenceImageFilter< TInputImage, TFeatureImage, TOutputImage, TFiniteDifferenceFunction, TIdCell >::m_UseImageSpacing
protected

Control whether derivatives use spacing of the input image in its calculation.

Definition at line 421 of file itkMultiphaseFiniteDifferenceImageFilter.h.


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