ITK  4.4.0
Insight Segmentation and Registration Toolkit
Public Types | Public Member Functions | Static Public Attributes | Protected Member Functions | Protected Attributes | Private Member Functions | Private Attributes | List of all members
itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter > Class Template Referenceabstract

#include <itkGPUFiniteDifferenceImageFilter.h>

+ Inheritance diagram for itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >:
+ Collaboration diagram for itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >:

Detailed Description

template<class TInputImage, class TOutputImage, class TParentImageFilter = FiniteDifferenceImageFilter< TInputImage, TOutputImage >>
class itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >

Base class for GPU Finite Difference Image Filters.

See Also
GPUDenseFiniteDifferenceImageFilter

Definition at line 37 of file itkGPUFiniteDifferenceImageFilter.h.

Public Types

typedef SmartPointer< const SelfConstPointer
 
typedef TParentImageFilter CPUSuperclass
 
enum  FilterStateType {
  UNINITIALIZED = 0,
  INITIALIZED = 1
}
 
typedef
GPUFiniteDifferenceFunction
< TOutputImage >
::DifferenceFunctionType 
FiniteDifferenceFunctionType
 
typedef GPUInPlaceImageFilter
< TInputImage, TOutputImage,
TParentImageFilter > 
GPUSuperclass
 
typedef TInputImage InputImageType
 
typedef TInputImage::PixelType InputPixelType
 
typedef NumericTraits
< InputPixelType >::ValueType 
InputPixelValueType
 
typedef
FiniteDifferenceFunctionType::NeighborhoodScalesType 
NeighborhoodScalesType
 
typedef TOutputImage OutputImageType
 
typedef TOutputImage::PixelType OutputPixelType
 
typedef NumericTraits
< OutputPixelType >::ValueType 
OutputPixelValueType
 
typedef OutputPixelType PixelType
 
typedef SmartPointer< SelfPointer
 
typedef
FiniteDifferenceFunctionType::RadiusType 
RadiusType
 
typedef
GPUFiniteDifferenceImageFilter 
Self
 
typedef
FiniteDifferenceFunctionType::TimeStepType 
TimeStepType
 
- Public Types inherited from itk::GPUInPlaceImageFilter< TInputImage, TOutputImage, TParentImageFilter >
typedef SmartPointer< const SelfConstPointer
 
typedef TParentImageFilter CPUSuperclass
 
typedef GPUImageToImageFilter
< TInputImage, TOutputImage,
TParentImageFilter > 
GPUSuperclass
 
typedef
InputImageType::ConstPointer 
InputImageConstPointer
 
typedef InputImageType::PixelType InputImagePixelType
 
typedef InputImageType::Pointer InputImagePointer
 
typedef InputImageType::RegionType InputImageRegionType
 
typedef TInputImage InputImageType
 
typedef
GPUSuperclass::OutputImagePixelType 
OutputImagePixelType
 
typedef
GPUSuperclass::OutputImagePointer 
OutputImagePointer
 
typedef
GPUSuperclass::OutputImageRegionType 
OutputImageRegionType
 
typedef
GPUSuperclass::OutputImageType 
OutputImageType
 
typedef SmartPointer< SelfPointer
 
typedef GPUInPlaceImageFilter Self
 
- Public Types inherited from itk::GPUImageToImageFilter< TInputImage, TOutputImage, TParentImageFilter >
typedef SmartPointer< const SelfConstPointer
 
typedef
Superclass::DataObjectIdentifierType 
DataObjectIdentifierType
 
typedef
InputImageType::ConstPointer 
InputImageConstPointer
 
typedef InputImageType::PixelType InputImagePixelType
 
typedef InputImageType::Pointer InputImagePointer
 
typedef InputImageType::RegionType InputImageRegionType
 
typedef TInputImage InputImageType
 
typedef
Superclass::OutputImagePixelType 
OutputImagePixelType
 
typedef
Superclass::OutputImageRegionType 
OutputImageRegionType
 
typedef SmartPointer< SelfPointer
 
typedef GPUImageToImageFilter Self
 
typedef TParentImageFilter Superclass
 

Public Member Functions

virtual const char * GetNameOfClass () const
 
virtual void SetDifferenceFunction (FiniteDifferenceFunctionType *_arg)
 
void SetStateToInitialized ()
 
void SetStateToUninitialized ()
 
virtual const
FiniteDifferenceFunctionType::Pointer
GetDifferenceFunction () const
 
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 SetState (FilterStateType _arg)
 
virtual const FilterStateTypeGetState ()
 
virtual void SetManualReinitialization (bool _arg)
 
virtual const bool & GetManualReinitialization ()
 
virtual void ManualReinitializationOn ()
 
virtual void ManualReinitializationOff ()
 
virtual const TimeProbeGetInitTime ()
 
virtual const TimeProbeGetComputeUpdateTime ()
 
virtual const TimeProbeGetApplyUpdateTime ()
 
virtual const TimeProbeGetSmoothFieldTime ()
 

Static Public Attributes

static const unsigned int ImageDimension = OutputImageType::ImageDimension
 
- Static Public Attributes inherited from itk::GPUInPlaceImageFilter< TInputImage, TOutputImage, TParentImageFilter >
static const unsigned int InputImageDimension = TInputImage::ImageDimension
 
static const unsigned int OutputImageDimension = TOutputImage::ImageDimension
 
- Static Public Attributes inherited from itk::GPUImageToImageFilter< TInputImage, TOutputImage, TParentImageFilter >
static const unsigned int InputImageDimension = TInputImage::ImageDimension
 
static const unsigned int OutputImageDimension = TOutputImage::ImageDimension
 

Protected Member Functions

virtual void AllocateUpdateBuffer ()=0
 
virtual void CopyInputToOutput ()=0
 
virtual void GenerateInputRequestedRegion ()
 
virtual void GPUApplyUpdate (const TimeStepType &dt)=0
 
virtual TimeStepType GPUCalculateChange ()=0
 
 GPUFiniteDifferenceImageFilter ()
 
virtual void GPUGenerateData ()
 
virtual bool Halt ()
 
virtual void Initialize ()
 
virtual void InitializeIteration ()
 
virtual void PostProcessOutput ()
 
void PrintSelf (std::ostream &os, Indent indent) const
 
virtual TimeStepType ResolveTimeStep (const std::vector< TimeStepType > &timeStepList, const std::vector< bool > &valid) const
 
virtual void SetElapsedIterations (IdentifierType _arg)
 
virtual bool ThreadedHalt (void *)
 
 ~GPUFiniteDifferenceImageFilter ()
 
- Protected Member Functions inherited from itk::GPUInPlaceImageFilter< TInputImage, TOutputImage, TParentImageFilter >
virtual void AllocateOutputs ()
 
 GPUInPlaceImageFilter ()
 
virtual void ReleaseInputs ()
 
 ~GPUInPlaceImageFilter ()
 
- Protected Member Functions inherited from itk::GPUImageToImageFilter< TInputImage, TOutputImage, TParentImageFilter >
 GPUImageToImageFilter ()
 
 ~GPUImageToImageFilter ()
 

Protected Attributes

TimeProbe m_ApplyUpdateTime
 
TimeProbe m_ComputeUpdateTime
 
TimeProbe m_InitTime
 
bool m_ManualReinitialization
 
double m_MaximumRMSError
 
double m_RMSChange
 
TimeProbe m_SmoothFieldTime
 

Private Member Functions

 GPUFiniteDifferenceImageFilter (const Self &)
 
void InitializeFunctionCoefficients ()
 
void operator= (const Self &)
 

Private Attributes

FiniteDifferenceFunctionType::Pointer m_DifferenceFunction
 
FilterStateType m_State
 
bool m_UseImageSpacing
 

Additional Inherited Members

- Static Public Member Functions inherited from itk::GPUImageToImageFilter< TInputImage, TOutputImage, TParentImageFilter >
static Pointer New ()
 

Member Typedef Documentation

template<class TInputImage, class TOutputImage, class TParentImageFilter = FiniteDifferenceImageFilter< TInputImage, TOutputImage >>
typedef SmartPointer< const Self > itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::ConstPointer

Definition at line 47 of file itkGPUFiniteDifferenceImageFilter.h.

template<class TInputImage, class TOutputImage, class TParentImageFilter = FiniteDifferenceImageFilter< TInputImage, TOutputImage >>
typedef TParentImageFilter itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::CPUSuperclass

Definition at line 45 of file itkGPUFiniteDifferenceImageFilter.h.

template<class TInputImage, class TOutputImage, class TParentImageFilter = FiniteDifferenceImageFilter< TInputImage, TOutputImage >>
typedef GPUFiniteDifferenceFunction< TOutputImage >::DifferenceFunctionType itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::FiniteDifferenceFunctionType

The value type of the time step. This is distinct from PixelType because PixelType may often be a vector value, while the TimeStep is a scalar value.

Definition at line 71 of file itkGPUFiniteDifferenceImageFilter.h.

template<class TInputImage, class TOutputImage, class TParentImageFilter = FiniteDifferenceImageFilter< TInputImage, TOutputImage >>
typedef GPUInPlaceImageFilter< TInputImage, TOutputImage, TParentImageFilter > itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::GPUSuperclass

Definition at line 44 of file itkGPUFiniteDifferenceImageFilter.h.

template<class TInputImage, class TOutputImage, class TParentImageFilter = FiniteDifferenceImageFilter< TInputImage, TOutputImage >>
typedef TInputImage itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::InputImageType

Input and output image types.

Definition at line 50 of file itkGPUFiniteDifferenceImageFilter.h.

template<class TInputImage, class TOutputImage, class TParentImageFilter = FiniteDifferenceImageFilter< TInputImage, TOutputImage >>
typedef TInputImage::PixelType itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::InputPixelType

Definition at line 61 of file itkGPUFiniteDifferenceImageFilter.h.

template<class TInputImage, class TOutputImage, class TParentImageFilter = FiniteDifferenceImageFilter< TInputImage, TOutputImage >>
typedef NumericTraits< InputPixelType >::ValueType itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::InputPixelValueType

Definition at line 66 of file itkGPUFiniteDifferenceImageFilter.h.

template<class TInputImage, class TOutputImage, class TParentImageFilter = FiniteDifferenceImageFilter< TInputImage, TOutputImage >>
typedef FiniteDifferenceFunctionType::NeighborhoodScalesType itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::NeighborhoodScalesType

Definition at line 76 of file itkGPUFiniteDifferenceImageFilter.h.

template<class TInputImage, class TOutputImage, class TParentImageFilter = FiniteDifferenceImageFilter< TInputImage, TOutputImage >>
typedef TOutputImage itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::OutputImageType

Definition at line 54 of file itkGPUFiniteDifferenceImageFilter.h.

template<class TInputImage, class TOutputImage, class TParentImageFilter = FiniteDifferenceImageFilter< TInputImage, TOutputImage >>
typedef TOutputImage::PixelType itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::OutputPixelType

The pixel type of the output image will be used in computations.

Definition at line 60 of file itkGPUFiniteDifferenceImageFilter.h.

template<class TInputImage, class TOutputImage, class TParentImageFilter = FiniteDifferenceImageFilter< TInputImage, TOutputImage >>
typedef NumericTraits< OutputPixelType >::ValueType itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::OutputPixelValueType

Extract value type in case the pixel is of vector type

Definition at line 65 of file itkGPUFiniteDifferenceImageFilter.h.

template<class TInputImage, class TOutputImage, class TParentImageFilter = FiniteDifferenceImageFilter< TInputImage, TOutputImage >>
typedef OutputPixelType itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::PixelType

Definition at line 62 of file itkGPUFiniteDifferenceImageFilter.h.

template<class TInputImage, class TOutputImage, class TParentImageFilter = FiniteDifferenceImageFilter< TInputImage, TOutputImage >>
typedef SmartPointer< Self > itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::Pointer

Definition at line 46 of file itkGPUFiniteDifferenceImageFilter.h.

template<class TInputImage, class TOutputImage, class TParentImageFilter = FiniteDifferenceImageFilter< TInputImage, TOutputImage >>
typedef FiniteDifferenceFunctionType::RadiusType itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::RadiusType

Definition at line 75 of file itkGPUFiniteDifferenceImageFilter.h.

template<class TInputImage, class TOutputImage, class TParentImageFilter = FiniteDifferenceImageFilter< TInputImage, TOutputImage >>
typedef GPUFiniteDifferenceImageFilter itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::Self

Standard class typedefs.

Definition at line 43 of file itkGPUFiniteDifferenceImageFilter.h.

template<class TInputImage, class TOutputImage, class TParentImageFilter = FiniteDifferenceImageFilter< TInputImage, TOutputImage >>
typedef FiniteDifferenceFunctionType::TimeStepType itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::TimeStepType

Definition at line 74 of file itkGPUFiniteDifferenceImageFilter.h.

Member Enumeration Documentation

template<class TInputImage, class TOutputImage, class TParentImageFilter = FiniteDifferenceImageFilter< TInputImage, TOutputImage >>
enum itk::GPUFiniteDifferenceImageFilter::FilterStateType
Enumerator
UNINITIALIZED 
INITIALIZED 

Definition at line 90 of file itkGPUFiniteDifferenceImageFilter.h.

Constructor & Destructor Documentation

template<class TInputImage, class TOutputImage, class TParentImageFilter = FiniteDifferenceImageFilter< TInputImage, TOutputImage >>
itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::GPUFiniteDifferenceImageFilter ( )
protected
template<class TInputImage, class TOutputImage, class TParentImageFilter = FiniteDifferenceImageFilter< TInputImage, TOutputImage >>
itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::~GPUFiniteDifferenceImageFilter ( )
protected
template<class TInputImage, class TOutputImage, class TParentImageFilter = FiniteDifferenceImageFilter< TInputImage, TOutputImage >>
itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::GPUFiniteDifferenceImageFilter ( const Self )
private

Member Function Documentation

template<class TInputImage, class TOutputImage, class TParentImageFilter = FiniteDifferenceImageFilter< TInputImage, TOutputImage >>
virtual void itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::AllocateUpdateBuffer ( )
protectedpure virtual
template<class TInputImage, class TOutputImage, class TParentImageFilter = FiniteDifferenceImageFilter< TInputImage, TOutputImage >>
virtual void itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::CopyInputToOutput ( )
protectedpure virtual
template<class TInputImage, class TOutputImage, class TParentImageFilter = FiniteDifferenceImageFilter< TInputImage, TOutputImage >>
virtual void itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::GenerateInputRequestedRegion ( )
protectedvirtual

FiniteDifferenceImageFilter 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 in itk::GPUPDEDeformableRegistrationFilter< TFixedImage, TMovingImage, TDisplacementField, TParentImageFilter >.

template<class TInputImage, class TOutputImage, class TParentImageFilter = FiniteDifferenceImageFilter< TInputImage, TOutputImage >>
virtual const TimeProbe& itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::GetApplyUpdateTime ( )
virtual

Methods to get timers

template<class TInputImage, class TOutputImage, class TParentImageFilter = FiniteDifferenceImageFilter< TInputImage, TOutputImage >>
virtual const TimeProbe& itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::GetComputeUpdateTime ( )
virtual

Methods to get timers

template<class TInputImage, class TOutputImage, class TParentImageFilter = FiniteDifferenceImageFilter< TInputImage, TOutputImage >>
virtual const FiniteDifferenceFunctionType ::Pointer& itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::GetDifferenceFunction ( ) const
virtual

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

Returns
A FiniteDifferenceObject pointer.
template<class TInputImage, class TOutputImage, class TParentImageFilter = FiniteDifferenceImageFilter< TInputImage, TOutputImage >>
virtual const TimeProbe& itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::GetInitTime ( )
virtual

Methods to get timers

template<class TInputImage, class TOutputImage, class TParentImageFilter = FiniteDifferenceImageFilter< TInputImage, TOutputImage >>
virtual const bool& itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::GetManualReinitialization ( )
virtual

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

template<class TInputImage, class TOutputImage, class TParentImageFilter = FiniteDifferenceImageFilter< TInputImage, TOutputImage >>
virtual const double& itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::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 TOutputImage, class TParentImageFilter = FiniteDifferenceImageFilter< TInputImage, TOutputImage >>
virtual const char* itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::GetNameOfClass ( ) const
virtual
template<class TInputImage, class TOutputImage, class TParentImageFilter = FiniteDifferenceImageFilter< TInputImage, TOutputImage >>
virtual const double& itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::GetRMSChange ( )
virtual

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

template<class TInputImage, class TOutputImage, class TParentImageFilter = FiniteDifferenceImageFilter< TInputImage, TOutputImage >>
virtual const TimeProbe& itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::GetSmoothFieldTime ( )
virtual

Methods to get timers

template<class TInputImage, class TOutputImage, class TParentImageFilter = FiniteDifferenceImageFilter< TInputImage, TOutputImage >>
virtual const FilterStateType& itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::GetState ( )
virtual

Set/Get the state of the filter.

template<class TInputImage, class TOutputImage, class TParentImageFilter = FiniteDifferenceImageFilter< TInputImage, TOutputImage >>
virtual const bool& itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::GetUseImageSpacing ( )
virtual

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

template<class TInputImage, class TOutputImage, class TParentImageFilter = FiniteDifferenceImageFilter< TInputImage, TOutputImage >>
virtual void itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::GPUApplyUpdate ( const 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 TOutputImage, class TParentImageFilter = FiniteDifferenceImageFilter< TInputImage, TOutputImage >>
virtual TimeStepType itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::GPUCalculateChange ( )
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::GPUDenseFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >, and itk::GPUDenseFiniteDifferenceImageFilter< TDisplacementField, TDisplacementField, TParentImageFilter >.

template<class TInputImage, class TOutputImage, class TParentImageFilter = FiniteDifferenceImageFilter< TInputImage, TOutputImage >>
virtual void itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::GPUGenerateData ( )
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::GPUImageToImageFilter< TInputImage, TOutputImage, TParentImageFilter >.

template<class TInputImage, class TOutputImage, class TParentImageFilter = FiniteDifferenceImageFilter< TInputImage, TOutputImage >>
virtual bool itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::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 TOutputImage, class TParentImageFilter = FiniteDifferenceImageFilter< TInputImage, TOutputImage >>
virtual void itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::Initialize ( void  )
inlineprotectedvirtual

This method is optionally defined by a subclass and is called before the loop of iterations of calculate_change & upate. It does the global initialization, i.e. in the SparseFieldLevelSetImageFilter, initialize the list of layers.

Reimplemented in itk::GPUPDEDeformableRegistrationFilter< TFixedImage, TMovingImage, TDisplacementField, TParentImageFilter >.

Definition at line 218 of file itkGPUFiniteDifferenceImageFilter.h.

template<class TInputImage, class TOutputImage, class TParentImageFilter = FiniteDifferenceImageFilter< TInputImage, TOutputImage >>
void itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::InitializeFunctionCoefficients ( )
private

Initialize the values of the Function coefficients. This function will also take care of checking whether the image spacing should be taken into account or not.

template<class TInputImage, class TOutputImage, class TParentImageFilter = FiniteDifferenceImageFilter< TInputImage, TOutputImage >>
virtual void itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::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::GPUPDEDeformableRegistrationFilter< TFixedImage, TMovingImage, TDisplacementField, TParentImageFilter >, itk::GPUDemonsRegistrationFilter< TFixedImage, TMovingImage, TDisplacementField, TParentImageFilter >, and itk::GPUAnisotropicDiffusionImageFilter< TInputImage, TOutputImage, TParentImageFilter >.

Definition at line 227 of file itkGPUFiniteDifferenceImageFilter.h.

template<class TInputImage, class TOutputImage, class TParentImageFilter = FiniteDifferenceImageFilter< TInputImage, TOutputImage >>
virtual void itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::ManualReinitializationOff ( )
virtual

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

template<class TInputImage, class TOutputImage, class TParentImageFilter = FiniteDifferenceImageFilter< TInputImage, TOutputImage >>
virtual void itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::ManualReinitializationOn ( )
virtual

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

template<class TInputImage, class TOutputImage, class TParentImageFilter = FiniteDifferenceImageFilter< TInputImage, TOutputImage >>
void itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::operator= ( const Self )
private
template<class TInputImage, class TOutputImage, class TParentImageFilter = FiniteDifferenceImageFilter< TInputImage, TOutputImage >>
virtual void itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::PostProcessOutput ( )
inlineprotectedvirtual

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

Reimplemented in itk::GPUPDEDeformableRegistrationFilter< TFixedImage, TMovingImage, TDisplacementField, TParentImageFilter >.

Definition at line 249 of file itkGPUFiniteDifferenceImageFilter.h.

template<class TInputImage, class TOutputImage, class TParentImageFilter = FiniteDifferenceImageFilter< TInputImage, TOutputImage >>
void itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::PrintSelf ( std::ostream &  os,
Indent  indent 
) const
protectedvirtual
template<class TInputImage, class TOutputImage, class TParentImageFilter = FiniteDifferenceImageFilter< TInputImage, TOutputImage >>
virtual TimeStepType itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::ResolveTimeStep ( const std::vector< TimeStepType > &  timeStepList,
const std::vector< bool > &  valid 
) const
protectedvirtual

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 TOutputImage, class TParentImageFilter = FiniteDifferenceImageFilter< TInputImage, TOutputImage >>
virtual void itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::SetDifferenceFunction ( FiniteDifferenceFunctionType _arg)
virtual

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

Returns
A FiniteDifferenceObject pointer.
template<class TInputImage, class TOutputImage, class TParentImageFilter = FiniteDifferenceImageFilter< TInputImage, TOutputImage >>
virtual void itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::SetElapsedIterations ( IdentifierType  _arg)
protectedvirtual

Set the number of elapsed iterations of the filter.

template<class TInputImage, class TOutputImage, class TParentImageFilter = FiniteDifferenceImageFilter< TInputImage, TOutputImage >>
virtual void itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::SetManualReinitialization ( bool  _arg)
virtual

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

template<class TInputImage, class TOutputImage, class TParentImageFilter = FiniteDifferenceImageFilter< TInputImage, TOutputImage >>
virtual void itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::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 TOutputImage, class TParentImageFilter = FiniteDifferenceImageFilter< TInputImage, TOutputImage >>
virtual void itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::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 TOutputImage, class TParentImageFilter = FiniteDifferenceImageFilter< TInputImage, TOutputImage >>
virtual void itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::SetState ( FilterStateType  _arg)
virtual

Set/Get the state of the filter.

template<class TInputImage, class TOutputImage, class TParentImageFilter = FiniteDifferenceImageFilter< TInputImage, TOutputImage >>
void itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::SetStateToInitialized ( )
inline

Set the state of the filter to INITIALIZED

Definition at line 112 of file itkGPUFiniteDifferenceImageFilter.h.

template<class TInputImage, class TOutputImage, class TParentImageFilter = FiniteDifferenceImageFilter< TInputImage, TOutputImage >>
void itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::SetStateToUninitialized ( )
inline

Set the state of the filter to UNINITIALIZED

Definition at line 118 of file itkGPUFiniteDifferenceImageFilter.h.

template<class TInputImage, class TOutputImage, class TParentImageFilter = FiniteDifferenceImageFilter< TInputImage, TOutputImage >>
virtual void itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::SetUseImageSpacing ( bool  _arg)
virtual

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

template<class TInputImage, class TOutputImage, class TParentImageFilter = FiniteDifferenceImageFilter< TInputImage, TOutputImage >>
virtual bool itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::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 209 of file itkGPUFiniteDifferenceImageFilter.h.

template<class TInputImage, class TOutputImage, class TParentImageFilter = FiniteDifferenceImageFilter< TInputImage, TOutputImage >>
virtual void itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::UseImageSpacingOff ( )
virtual

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

template<class TInputImage, class TOutputImage, class TParentImageFilter = FiniteDifferenceImageFilter< TInputImage, TOutputImage >>
virtual void itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::UseImageSpacingOn ( )
virtual

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

Member Data Documentation

template<class TInputImage, class TOutputImage, class TParentImageFilter = FiniteDifferenceImageFilter< TInputImage, TOutputImage >>
const unsigned int itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::ImageDimension = OutputImageType::ImageDimension
static

Dimensionality of input and output data is assumed to be the same.

Definition at line 57 of file itkGPUFiniteDifferenceImageFilter.h.

template<class TInputImage, class TOutputImage, class TParentImageFilter = FiniteDifferenceImageFilter< TInputImage, TOutputImage >>
TimeProbe itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::m_ApplyUpdateTime
protected

Definition at line 271 of file itkGPUFiniteDifferenceImageFilter.h.

template<class TInputImage, class TOutputImage, class TParentImageFilter = FiniteDifferenceImageFilter< TInputImage, TOutputImage >>
TimeProbe itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::m_ComputeUpdateTime
protected

Definition at line 271 of file itkGPUFiniteDifferenceImageFilter.h.

template<class TInputImage, class TOutputImage, class TParentImageFilter = FiniteDifferenceImageFilter< TInputImage, TOutputImage >>
FiniteDifferenceFunctionType::Pointer itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::m_DifferenceFunction
private

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

Definition at line 284 of file itkGPUFiniteDifferenceImageFilter.h.

template<class TInputImage, class TOutputImage, class TParentImageFilter = FiniteDifferenceImageFilter< TInputImage, TOutputImage >>
TimeProbe itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::m_InitTime
protected

Timers for statistics

Definition at line 271 of file itkGPUFiniteDifferenceImageFilter.h.

template<class TInputImage, class TOutputImage, class TParentImageFilter = FiniteDifferenceImageFilter< TInputImage, TOutputImage >>
bool itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::m_ManualReinitialization
protected

The maximum number of iterations this filter will run A counter for keeping track of the number of elapsed iterations during filtering. Indicates whether the filter automatically resets to UNINITIALIZED state after completing, or whether filter must be manually reset

Definition at line 253 of file itkGPUFiniteDifferenceImageFilter.h.

template<class TInputImage, class TOutputImage, class TParentImageFilter = FiniteDifferenceImageFilter< TInputImage, TOutputImage >>
double itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::m_MaximumRMSError
protected

Definition at line 268 of file itkGPUFiniteDifferenceImageFilter.h.

template<class TInputImage, class TOutputImage, class TParentImageFilter = FiniteDifferenceImageFilter< TInputImage, TOutputImage >>
double itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::m_RMSChange
protected

Definition at line 267 of file itkGPUFiniteDifferenceImageFilter.h.

template<class TInputImage, class TOutputImage, class TParentImageFilter = FiniteDifferenceImageFilter< TInputImage, TOutputImage >>
TimeProbe itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::m_SmoothFieldTime
protected

Definition at line 271 of file itkGPUFiniteDifferenceImageFilter.h.

template<class TInputImage, class TOutputImage, class TParentImageFilter = FiniteDifferenceImageFilter< TInputImage, TOutputImage >>
FilterStateType itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::m_State
private

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

Definition at line 291 of file itkGPUFiniteDifferenceImageFilter.h.

template<class TInputImage, class TOutputImage, class TParentImageFilter = FiniteDifferenceImageFilter< TInputImage, TOutputImage >>
bool itk::GPUFiniteDifferenceImageFilter< TInputImage, TOutputImage, TParentImageFilter >::m_UseImageSpacing
private

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

Definition at line 288 of file itkGPUFiniteDifferenceImageFilter.h.


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