ITK  4.2.0
Insight Segmentation and Registration Toolkit
Public Types | Public Member Functions | Static Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes | Private Member Functions
itk::GaussianSmoothingOnUpdateDisplacementFieldTransform< TScalar, NDimensions > Class Template Reference

#include <itkGaussianSmoothingOnUpdateDisplacementFieldTransform.h>

+ Inheritance diagram for itk::GaussianSmoothingOnUpdateDisplacementFieldTransform< TScalar, NDimensions >:
+ Collaboration diagram for itk::GaussianSmoothingOnUpdateDisplacementFieldTransform< TScalar, NDimensions >:

List of all members.

Public Types

typedef SmartPointer< const SelfConstPointer
typedef Superclass::DerivativeType DerivativeType
typedef DerivativeType::ValueType DerivativeValueType
typedef
Superclass::DisplacementFieldPointer 
DisplacementFieldPointer
typedef
Superclass::DisplacementFieldType 
DisplacementFieldType
typedef
DisplacementFieldType::PixelType 
DisplacementVectorType
typedef SmartPointer< SelfPointer
typedef Superclass::ScalarType ScalarType
typedef
GaussianSmoothingOnUpdateDisplacementFieldTransform 
Self
typedef
DisplacementFieldTransform
< TScalar, NDimensions > 
Superclass
typedef Transform< TScalar,
NDimensions, NDimensions >
::Pointer 
TransformPointer
- Public Types inherited from itk::DisplacementFieldTransform< TScalar, NDimensions >
typedef
DisplacementFieldType::DirectionType 
DirectionType
typedef
DisplacementFieldType::IndexType 
IndexType
typedef
Superclass::InputCovariantVectorType 
InputCovariantVectorType
typedef
Superclass::InputDiffusionTensor3DType 
InputDiffusionTensor3DType
typedef Superclass::InputPointType InputPointType
typedef CovariantVector
< ScalarType,
InputDiffusionTensor3DType::Dimension > 
InputTensorEigenVectorType
typedef
Superclass::InputVectorPixelType 
InputVectorPixelType
typedef Superclass::InputVectorType InputVectorType
typedef
Superclass::InputVnlVectorType 
InputVnlVectorType
typedef
VectorInterpolateImageFunction
< DisplacementFieldType,
ScalarType
InterpolatorType
typedef
Superclass::InverseTransformBasePointer 
InverseTransformBasePointer
typedef Superclass::JacobianType JacobianType
typedef
Superclass::NumberOfParametersType 
NumberOfParametersType
typedef
ImageVectorOptimizerParametersHelper
< ScalarType,
OutputVectorType::Dimension,
Dimension
OptimizerParametersHelperType
typedef
Superclass::OutputCovariantVectorType 
OutputCovariantVectorType
typedef
Superclass::OutputDiffusionTensor3DType 
OutputDiffusionTensor3DType
typedef Superclass::OutputPointType OutputPointType
typedef CovariantVector
< ScalarType,
OutputDiffusionTensor3DType::Dimension > 
OutputTensorEigenVectorType
typedef
Superclass::OutputVectorPixelType 
OutputVectorPixelType
typedef
Superclass::OutputVectorType 
OutputVectorType
typedef
Superclass::OutputVnlVectorType 
OutputVnlVectorType
typedef Superclass::ParametersType ParametersType
typedef
Superclass::ParametersValueType 
ParametersValueType
typedef
DisplacementFieldType::PixelType 
PixelType
typedef
DisplacementFieldType::PointType 
PointType
typedef
DisplacementFieldType::RegionType 
RegionType
typedef
DisplacementFieldType::SizeType 
SizeType
typedef
DisplacementFieldType::SpacingType 
SpacingType
- Public Types inherited from itk::Transform< TScalar, NDimensions, NDimensions >
typedef Matrix< double,
itkGetStaticConstMacro(OutputSpaceDimension),
itkGetStaticConstMacro(InputSpaceDimension)> 
DirectionChangeMatrix
typedef Matrix< double,
itkGetStaticConstMacro(InputSpaceDimension),
itkGetStaticConstMacro(InputSpaceDimension)> 
InputDirectionMatrix
typedef
SymmetricSecondRankTensor
< TScalar, NInputDimensions > 
InputSymmetricSecondRankTensorType
typedef Transform< TScalar,
NOutputDimensions,
NInputDimensions > 
InverseTransformBaseType
typedef Matrix< TScalar,
itkGetStaticConstMacro(OutputSpaceDimension),
itkGetStaticConstMacro(InputSpaceDimension)> 
MatrixType
typedef Matrix< double,
itkGetStaticConstMacro(OutputSpaceDimension),
itkGetStaticConstMacro(OutputSpaceDimension)> 
OutputDirectionMatrix
typedef
SymmetricSecondRankTensor
< TScalar, NOutputDimensions > 
OutputSymmetricSecondRankTensorType
- Public Types inherited from itk::TransformBase
- Public Types inherited from itk::Object
- Public Types inherited from itk::LightObject

Public Member Functions

virtual ::itk::LightObject::Pointer CreateAnother (void) const
virtual DisplacementFieldPointer GaussianSmoothDisplacementField (DisplacementFieldType *, ScalarType)
virtual const char * GetNameOfClass () const
virtual void UpdateTransformParameters (const DerivativeType &update, ScalarType factor=1.0)
virtual void SetGaussianSmoothingVarianceForTheUpdateField (ScalarType _arg)
virtual const ScalarTypeGetGaussianSmoothingVarianceForTheUpdateField ()
virtual void SetGaussianSmoothingVarianceForTheTotalField (ScalarType _arg)
virtual const ScalarTypeGetGaussianSmoothingVarianceForTheTotalField ()
- Public Member Functions inherited from itk::DisplacementFieldTransform< TScalar, NDimensions >
virtual void ComputeInverseJacobianWithRespectToPosition (const InputPointType &x, JacobianType &j) const
virtual void ComputeJacobianWithRespectToParameters (const IndexType &, JacobianType &j) const
virtual void ComputeJacobianWithRespectToPosition (const InputPointType &x, JacobianType &j) const
virtual void ComputeJacobianWithRespectToPosition (const IndexType &x, JacobianType &j) const
virtual DisplacementFieldTypeGetDisplacementField ()
virtual const unsigned long & GetDisplacementFieldSetTime ()
bool GetInverse (Self *inverse) const
virtual void GetInverseJacobianOfForwardFieldWithRespectToPosition (const InputPointType &point, JacobianType &jacobian, bool useSVD=false) const
virtual void GetInverseJacobianOfForwardFieldWithRespectToPosition (const IndexType &index, JacobianType &jacobian, bool useSVD=false) const
virtual InverseTransformBasePointer GetInverseTransform () const
virtual NumberOfParametersType GetNumberOfLocalParameters (void) const
virtual bool HasLocalSupport () const
virtual bool IsLinear () const
virtual void SetDisplacementField (DisplacementFieldType *field)
virtual void SetFixedParameters (const ParametersType &)
virtual OutputVectorPixelType TransformCovariantVector (const InputVectorPixelType &) const
OutputVectorPixelType TransformDiffusionTensor (const InputVectorPixelType &) const
virtual OutputPointType TransformPoint (const InputPointType &thisPoint) const
virtual OutputVectorPixelType TransformVector (const InputVectorPixelType &) const
virtual OutputVnlVectorType TransformVector (const InputVnlVectorType &) const
virtual void UpdateTransformParameters (const DerivativeType &update, ScalarType factor=1.0)
virtual DisplacementFieldTypeGetInverseDisplacementField ()
virtual void SetInverseDisplacementField (DisplacementFieldType *inverseDisplacementField)
virtual InterpolatorTypeGetInterpolator ()
virtual void SetInterpolator (InterpolatorType *interpolator)
virtual OutputVectorType TransformVector (const InputVectorType &) const
OutputDiffusionTensor3DType TransformDiffusionTensor (const InputDiffusionTensor3DType &) const
virtual OutputCovariantVectorType TransformCovariantVector (const InputCovariantVectorType &) const
virtual void SetParameters (const ParametersType &params)
virtual void ComputeJacobianWithRespectToParameters (const InputPointType &, JacobianType &j) const
- Public Member Functions inherited from itk::Transform< TScalar, NDimensions, NDimensions >
virtual void ComputeInverseJacobianWithRespectToPosition (const InputPointType &x, JacobianType &jacobian) const
virtual void ComputeJacobianWithRespectToPosition (const InputPointType &, JacobianType &) const
virtual const ParametersTypeGetFixedParameters (void) const
unsigned int GetInputSpaceDimension (void) const
virtual NumberOfParametersType GetNumberOfParameters (void) const
unsigned int GetOutputSpaceDimension (void) const
virtual const ParametersTypeGetParameters (void) const
virtual std::string GetTransformTypeAsString () const
 itkCloneMacro (Self)
virtual void SetParametersByValue (const ParametersType &p)
virtual OutputCovariantVectorType TransformCovariantVector (const InputCovariantVectorType &) const
virtual OutputCovariantVectorType TransformCovariantVector (const InputCovariantVectorType &vector, const InputPointType &point) const
virtual OutputVectorPixelType TransformCovariantVector (const InputVectorPixelType &) const
virtual OutputVectorPixelType TransformCovariantVector (const InputVectorPixelType &vector, const InputPointType &point) const
virtual OutputDiffusionTensor3DType TransformDiffusionTensor3D (const InputDiffusionTensor3DType &) const
virtual OutputDiffusionTensor3DType TransformDiffusionTensor3D (const InputDiffusionTensor3DType &tensor, const InputPointType &point) const
virtual OutputVectorPixelType TransformDiffusionTensor3D (const InputVectorPixelType &) const
virtual OutputVectorPixelType TransformDiffusionTensor3D (const InputVectorPixelType &tensor, const InputPointType &point) const
virtual OutputPointType TransformPoint (const InputPointType &) const =0
virtual
OutputSymmetricSecondRankTensorType 
TransformSymmetricSecondRankTensor (const InputSymmetricSecondRankTensorType &tensor, const InputPointType &point) const
virtual
OutputSymmetricSecondRankTensorType 
TransformSymmetricSecondRankTensor (const InputSymmetricSecondRankTensorType &) const
virtual OutputVectorPixelType TransformSymmetricSecondRankTensor (const InputVectorPixelType &) const
virtual OutputVectorPixelType TransformSymmetricSecondRankTensor (const InputVectorPixelType &tensor, const InputPointType &point) const
virtual OutputVectorType TransformVector (const InputVectorType &) const
virtual OutputVectorType TransformVector (const InputVectorType &vector, const InputPointType &point) const
virtual OutputVnlVectorType TransformVector (const InputVnlVectorType &) const
virtual OutputVnlVectorType TransformVector (const InputVnlVectorType &vector, const InputPointType &point) const
virtual OutputVectorPixelType TransformVector (const InputVectorPixelType &) const
virtual OutputVectorPixelType TransformVector (const InputVectorPixelType &vector, const InputPointType &point) const
virtual void UpdateTransformParameters (const DerivativeType &update, TScalarfactor=1.0)
virtual void ComputeJacobianWithRespectToParameters (const InputPointType &, JacobianType &) const

Static Public Member Functions

static Pointer New ()

Protected Types

typedef GaussianOperator
< ScalarType,
Superclass::Dimension
GaussianSmoothingOperatorType
typedef
VectorNeighborhoodOperatorImageFilter
< DisplacementFieldType,
DisplacementFieldType
GaussianSmoothingSmootherType

Protected Member Functions

 GaussianSmoothingOnUpdateDisplacementFieldTransform ()
virtual LightObject::Pointer InternalClone () const
void PrintSelf (std::ostream &os, Indent indent) const
virtual ~GaussianSmoothingOnUpdateDisplacementFieldTransform ()
- Protected Member Functions inherited from itk::DisplacementFieldTransform< TScalar, NDimensions >
 DisplacementFieldTransform ()
virtual ~DisplacementFieldTransform ()
- Protected Member Functions inherited from itk::Transform< TScalar, NDimensions, NDimensions >
OutputDiffusionTensor3DType PreservationOfPrincipalDirectionDiffusionTensor3DReorientation (const InputDiffusionTensor3DType, const JacobianType) const
 Transform ()
 Transform (NumberOfParametersType NumberOfParameters)
virtual ~Transform ()
- Protected Member Functions inherited from itk::TransformBase
 TransformBase ()
virtual ~TransformBase ()
- 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
 LightObject ()
virtual void PrintHeader (std::ostream &os, Indent indent) const
virtual void PrintTrailer (std::ostream &os, Indent indent) const
virtual ~LightObject ()

Protected Attributes

GaussianSmoothingOperatorType m_GaussianSmoothingOperator
ScalarType m_GaussianSmoothingVarianceForTheTotalField
ScalarType m_GaussianSmoothingVarianceForTheUpdateField
- Protected Attributes inherited from itk::DisplacementFieldTransform< TScalar, NDimensions >
DisplacementFieldType::Pointer m_DisplacementField
unsigned long m_DisplacementFieldSetTime
InterpolatorType::Pointer m_Interpolator
DisplacementFieldType::Pointer m_InverseDisplacementField
JacobianType m_IdentityJacobian
- Protected Attributes inherited from itk::Transform< TScalar, NDimensions, NDimensions >
DirectionChangeMatrix m_DirectionChange
ParametersType m_FixedParameters
ParametersType m_Parameters

Private Member Functions

 GaussianSmoothingOnUpdateDisplacementFieldTransform (const Self &)
void operator= (const Self &)

Additional Inherited Members

- Static Public Attributes inherited from itk::DisplacementFieldTransform< TScalar, NDimensions >
static const unsigned int Dimension = NDimensions
- Static Public Attributes inherited from itk::Transform< TScalar, NDimensions, NDimensions >
static const unsigned int InputSpaceDimension
static const unsigned int OutputSpaceDimension

Detailed Description

template<class TScalar, unsigned int NDimensions>
class itk::GaussianSmoothingOnUpdateDisplacementFieldTransform< TScalar, NDimensions >

Modifies the UpdateTransformParameters method to peform a Gaussian smoothing of the displacement field after adding the update array.

This class is the same as DisplacementFieldTransform, except for the changes to UpdateTransformParameters. The method smooths the result of the addition of the update array and the displacement field, using a GaussianOperator filter.

To free the memory allocated and cached in GaussianSmoothDisplacementField on demand, see FreeGaussianSmoothingTempField.

Definition at line 46 of file itkGaussianSmoothingOnUpdateDisplacementFieldTransform.h.


Member Typedef Documentation

template<class TScalar , unsigned int NDimensions>
typedef SmartPointer<const Self> itk::GaussianSmoothingOnUpdateDisplacementFieldTransform< TScalar, NDimensions >::ConstPointer
template<class TScalar , unsigned int NDimensions>
typedef Superclass::DerivativeType itk::GaussianSmoothingOnUpdateDisplacementFieldTransform< TScalar, NDimensions >::DerivativeType
template<class TScalar , unsigned int NDimensions>
typedef DerivativeType::ValueType itk::GaussianSmoothingOnUpdateDisplacementFieldTransform< TScalar, NDimensions >::DerivativeValueType
template<class TScalar , unsigned int NDimensions>
typedef Superclass::DisplacementFieldPointer itk::GaussianSmoothingOnUpdateDisplacementFieldTransform< TScalar, NDimensions >::DisplacementFieldPointer
template<class TScalar , unsigned int NDimensions>
typedef Superclass::DisplacementFieldType itk::GaussianSmoothingOnUpdateDisplacementFieldTransform< TScalar, NDimensions >::DisplacementFieldType

Define the displacement field type and corresponding interpolator type.

Reimplemented from itk::DisplacementFieldTransform< TScalar, NDimensions >.

Definition at line 67 of file itkGaussianSmoothingOnUpdateDisplacementFieldTransform.h.

template<class TScalar , unsigned int NDimensions>
typedef DisplacementFieldType::PixelType itk::GaussianSmoothingOnUpdateDisplacementFieldTransform< TScalar, NDimensions >::DisplacementVectorType
template<class TScalar , unsigned int NDimensions>
typedef GaussianOperator<ScalarType, Superclass::Dimension> itk::GaussianSmoothingOnUpdateDisplacementFieldTransform< TScalar, NDimensions >::GaussianSmoothingOperatorType
protected

Type of Gaussian Operator used during smoothing. Define here so we can use a member var during the operation.

Definition at line 122 of file itkGaussianSmoothingOnUpdateDisplacementFieldTransform.h.

template<class TScalar , unsigned int NDimensions>
typedef SmartPointer<Self> itk::GaussianSmoothingOnUpdateDisplacementFieldTransform< TScalar, NDimensions >::Pointer
template<class TScalar , unsigned int NDimensions>
typedef Superclass::ScalarType itk::GaussianSmoothingOnUpdateDisplacementFieldTransform< TScalar, NDimensions >::ScalarType
template<class TScalar , unsigned int NDimensions>
typedef GaussianSmoothingOnUpdateDisplacementFieldTransform itk::GaussianSmoothingOnUpdateDisplacementFieldTransform< TScalar, NDimensions >::Self

Standard class typedefs.

Reimplemented from itk::DisplacementFieldTransform< TScalar, NDimensions >.

Definition at line 51 of file itkGaussianSmoothingOnUpdateDisplacementFieldTransform.h.

template<class TScalar , unsigned int NDimensions>
typedef DisplacementFieldTransform<TScalar, NDimensions> itk::GaussianSmoothingOnUpdateDisplacementFieldTransform< TScalar, NDimensions >::Superclass
template<class TScalar , unsigned int NDimensions>
typedef Transform<TScalar,NDimensions,NDimensions>::Pointer itk::GaussianSmoothingOnUpdateDisplacementFieldTransform< TScalar, NDimensions >::TransformPointer

Constructor & Destructor Documentation

template<class TScalar , unsigned int NDimensions>
itk::GaussianSmoothingOnUpdateDisplacementFieldTransform< TScalar, NDimensions >::GaussianSmoothingOnUpdateDisplacementFieldTransform ( )
protected
template<class TScalar , unsigned int NDimensions>
virtual itk::GaussianSmoothingOnUpdateDisplacementFieldTransform< TScalar, NDimensions >::~GaussianSmoothingOnUpdateDisplacementFieldTransform ( )
protectedvirtual
template<class TScalar , unsigned int NDimensions>
itk::GaussianSmoothingOnUpdateDisplacementFieldTransform< TScalar, NDimensions >::GaussianSmoothingOnUpdateDisplacementFieldTransform ( const Self )
private

Member Function Documentation

template<class TScalar , unsigned int NDimensions>
virtual::itk::LightObject::Pointer itk::GaussianSmoothingOnUpdateDisplacementFieldTransform< TScalar, NDimensions >::CreateAnother ( void  ) const
virtual

Create an object from an instance, potentially deferring to a factory. This method allows you to create an instance of an object that is exactly the same type as the referring object. This is useful in cases where an object has been cast back to a base class.

Reimplemented from itk::DisplacementFieldTransform< TScalar, NDimensions >.

template<class TScalar , unsigned int NDimensions>
virtual DisplacementFieldPointer itk::GaussianSmoothingOnUpdateDisplacementFieldTransform< TScalar, NDimensions >::GaussianSmoothDisplacementField ( DisplacementFieldType ,
ScalarType   
)
virtual

Smooth the displacement field in-place. Uses m_GaussSmoothSigma to change the variance for the GaussianOperator.

Warning:
Not thread safe. Does its own threading.
template<class TScalar , unsigned int NDimensions>
virtual const ScalarType& itk::GaussianSmoothingOnUpdateDisplacementFieldTransform< TScalar, NDimensions >::GetGaussianSmoothingVarianceForTheTotalField ( )
virtual

Get/Set the Gaussian smoothing standard deviation for the total field. Default = 0.5.

template<class TScalar , unsigned int NDimensions>
virtual const ScalarType& itk::GaussianSmoothingOnUpdateDisplacementFieldTransform< TScalar, NDimensions >::GetGaussianSmoothingVarianceForTheUpdateField ( )
virtual

Get/Set the Gaussian smoothing standard deviation for the update field. Default = 1.75.

template<class TScalar , unsigned int NDimensions>
virtual const char* itk::GaussianSmoothingOnUpdateDisplacementFieldTransform< TScalar, NDimensions >::GetNameOfClass ( ) const
virtual

Run-time type information (and related methods).

Reimplemented from itk::DisplacementFieldTransform< TScalar, NDimensions >.

template<class TScalar , unsigned int NDimensions>
virtual LightObject::Pointer itk::GaussianSmoothingOnUpdateDisplacementFieldTransform< TScalar, NDimensions >::InternalClone ( ) const
protectedvirtual

Clone the current transform

Reimplemented from itk::Transform< TScalar, NDimensions, NDimensions >.

template<class TScalar , unsigned int NDimensions>
static Pointer itk::GaussianSmoothingOnUpdateDisplacementFieldTransform< TScalar, NDimensions >::New ( )
static

New macro for creation of through a Smart Pointer

Reimplemented from itk::DisplacementFieldTransform< TScalar, NDimensions >.

template<class TScalar , unsigned int NDimensions>
void itk::GaussianSmoothingOnUpdateDisplacementFieldTransform< TScalar, NDimensions >::operator= ( const Self )
private

Create an identity jacobian for use in ComputeJacobianWithRespectToParameters.

Reimplemented from itk::DisplacementFieldTransform< TScalar, NDimensions >.

template<class TScalar , unsigned int NDimensions>
void itk::GaussianSmoothingOnUpdateDisplacementFieldTransform< TScalar, NDimensions >::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::DisplacementFieldTransform< TScalar, NDimensions >.

template<class TScalar , unsigned int NDimensions>
virtual void itk::GaussianSmoothingOnUpdateDisplacementFieldTransform< TScalar, NDimensions >::SetGaussianSmoothingVarianceForTheTotalField ( ScalarType  _arg)
virtual

Get/Set the Gaussian smoothing standard deviation for the total field. Default = 0.5.

template<class TScalar , unsigned int NDimensions>
virtual void itk::GaussianSmoothingOnUpdateDisplacementFieldTransform< TScalar, NDimensions >::SetGaussianSmoothingVarianceForTheUpdateField ( ScalarType  _arg)
virtual

Get/Set the Gaussian smoothing standard deviation for the update field. Default = 1.75.

template<class TScalar , unsigned int NDimensions>
virtual void itk::GaussianSmoothingOnUpdateDisplacementFieldTransform< TScalar, NDimensions >::UpdateTransformParameters ( const DerivativeType update,
ScalarType  factor = 1.0 
)
virtual

Update the transform's parameters by the values in update. We assume update is of the same length as Parameters. Throw exception otherwise. factor is a scalar multiplier for each value in update. GaussianSmoothDisplacementField is called after the update is added to the field. See base class for more details.


Member Data Documentation

template<class TScalar , unsigned int NDimensions>
GaussianSmoothingOperatorType itk::GaussianSmoothingOnUpdateDisplacementFieldTransform< TScalar, NDimensions >::m_GaussianSmoothingOperator
protected
template<class TScalar , unsigned int NDimensions>
ScalarType itk::GaussianSmoothingOnUpdateDisplacementFieldTransform< TScalar, NDimensions >::m_GaussianSmoothingVarianceForTheTotalField
protected
template<class TScalar , unsigned int NDimensions>
ScalarType itk::GaussianSmoothingOnUpdateDisplacementFieldTransform< TScalar, NDimensions >::m_GaussianSmoothingVarianceForTheUpdateField
protected

Used in GaussianSmoothDisplacementField as variance for the GaussianOperator

Definition at line 116 of file itkGaussianSmoothingOnUpdateDisplacementFieldTransform.h.


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