ITK  5.2.0
Insight Toolkit
Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes | List of all members
itk::DisplacementFieldTransform< TParametersValueType, NDimensions > Class Template Reference

#include <itkDisplacementFieldTransform.h>

+ Inheritance diagram for itk::DisplacementFieldTransform< TParametersValueType, NDimensions >:
+ Collaboration diagram for itk::DisplacementFieldTransform< TParametersValueType, NDimensions >:

Public Types

using ConstPointer = SmartPointer< const Self >
 
using DerivativeType = typename Superclass::DerivativeType
 
using DirectionType = typename DisplacementFieldType::DirectionType
 
using DisplacementFieldConstPointer = typename DisplacementFieldType::ConstPointer
 
using DisplacementFieldPointer = typename DisplacementFieldType::Pointer
 
using DisplacementFieldType = Image< OutputVectorType, Dimension >
 
using FixedParametersType = typename Superclass::FixedParametersType
 
using FixedParametersValueType = typename Superclass::FixedParametersValueType
 
using IndexType = typename DisplacementFieldType::IndexType
 
using InputCovariantVectorType = typename Superclass::InputCovariantVectorType
 
using InputDiffusionTensor3DType = typename Superclass::InputDiffusionTensor3DType
 
using InputPointType = typename Superclass::InputPointType
 
using InputTensorEigenVectorType = CovariantVector< ScalarType, InputDiffusionTensor3DType::Dimension >
 
using InputVectorPixelType = typename Superclass::InputVectorPixelType
 
using InputVectorType = typename Superclass::InputVectorType
 
using InputVnlVectorType = typename Superclass::InputVnlVectorType
 
using InterpolatorType = VectorInterpolateImageFunction< DisplacementFieldType, ScalarType >
 
using InverseJacobianPositionType = typename Superclass::InverseJacobianPositionType
 
using InverseTransformBasePointer = typename Superclass::InverseTransformBasePointer
 
using JacobianPositionType = typename Superclass::JacobianPositionType
 
using JacobianType = typename Superclass::JacobianType
 
using NumberOfParametersType = typename Superclass::NumberOfParametersType
 
using OptimizerParametersHelperType = ImageVectorOptimizerParametersHelper< ScalarType, OutputVectorType::Dimension, Dimension >
 
using OutputCovariantVectorType = typename Superclass::OutputCovariantVectorType
 
using OutputDiffusionTensor3DType = typename Superclass::OutputDiffusionTensor3DType
 
using OutputPointType = typename Superclass::OutputPointType
 
using OutputTensorEigenVectorType = CovariantVector< ScalarType, OutputDiffusionTensor3DType::Dimension >
 
using OutputVectorPixelType = typename Superclass::OutputVectorPixelType
 
using OutputVectorType = typename Superclass::OutputVectorType
 
using OutputVnlVectorType = typename Superclass::OutputVnlVectorType
 
using ParametersType = typename Superclass::ParametersType
 
using ParametersValueType = typename Superclass::ParametersValueType
 
using PixelType = typename DisplacementFieldType::PixelType
 
using Pointer = SmartPointer< Self >
 
using PointType = typename DisplacementFieldType::PointType
 
using RegionType = typename DisplacementFieldType::RegionType
 
using ScalarType = typename Superclass::ScalarType
 
using Self = DisplacementFieldTransform
 
using SizeType = typename DisplacementFieldType::SizeType
 
using SpacingType = typename DisplacementFieldType::SpacingType
 
using Superclass = Transform< TParametersValueType, NDimensions, NDimensions >
 
using TransformCategoryEnum = typename Superclass::TransformCategoryEnum
 
- Public Types inherited from itk::Transform< TParametersValueType, NDimensions, NDimensions >
using ConstPointer = SmartPointer< const Self >
 
using DerivativeType = Array< ParametersValueType >
 
using DirectionChangeMatrix = Matrix< double, Self::OutputSpaceDimension, Self::InputSpaceDimension >
 
using FixedParametersType = typename Superclass::FixedParametersType
 
using FixedParametersValueType = typename Superclass::FixedParametersValueType
 
using InputCovariantVectorType = CovariantVector< TParametersValueType, NInputDimensions >
 
using InputDiffusionTensor3DType = DiffusionTensor3D< TParametersValueType >
 
using InputDirectionMatrix = Matrix< double, Self::InputSpaceDimension, Self::InputSpaceDimension >
 
using InputPointType = Point< TParametersValueType, NInputDimensions >
 
using InputSymmetricSecondRankTensorType = SymmetricSecondRankTensor< TParametersValueType, NInputDimensions >
 
using InputVectorPixelType = VariableLengthVector< TParametersValueType >
 
using InputVectorType = Vector< TParametersValueType, NInputDimensions >
 
using InputVnlVectorType = vnl_vector_fixed< TParametersValueType, NInputDimensions >
 
using InverseJacobianPositionType = vnl_matrix_fixed< ParametersValueType, NInputDimensions, NOutputDimensions >
 
using InverseTransformBasePointer = typename InverseTransformBaseType::Pointer
 
using InverseTransformBaseType = Transform< TParametersValueType, NOutputDimensions, NInputDimensions >
 
using JacobianPositionType = vnl_matrix_fixed< ParametersValueType, NOutputDimensions, NInputDimensions >
 
using JacobianType = Array2D< ParametersValueType >
 
using MatrixType = Matrix< TParametersValueType, Self::OutputSpaceDimension, Self::InputSpaceDimension >
 
using NumberOfParametersType = typename Superclass::NumberOfParametersType
 
using OutputCovariantVectorType = CovariantVector< TParametersValueType, NOutputDimensions >
 
using OutputDiffusionTensor3DType = DiffusionTensor3D< TParametersValueType >
 
using OutputDirectionMatrix = Matrix< double, Self::OutputSpaceDimension, Self::OutputSpaceDimension >
 
using OutputPointType = Point< TParametersValueType, NOutputDimensions >
 
using OutputSymmetricSecondRankTensorType = SymmetricSecondRankTensor< TParametersValueType, NOutputDimensions >
 
using OutputVectorPixelType = VariableLengthVector< TParametersValueType >
 
using OutputVectorType = Vector< TParametersValueType, NOutputDimensions >
 
using OutputVnlVectorType = vnl_vector_fixed< TParametersValueType, NOutputDimensions >
 
using ParametersType = typename Superclass::ParametersType
 
using ParametersValueType = typename Superclass::ParametersValueType
 
using Pointer = SmartPointer< Self >
 
using ScalarType = ParametersValueType
 
using Self = Transform
 
using Superclass = TransformBaseTemplate< TParametersValueType >
 
using TransformCategoryEnum = typename Superclass::TransformCategoryEnum
 
- Public Types inherited from itk::TransformBaseTemplate< TParametersValueType >
using ConstPointer = SmartPointer< const Self >
 
using FixedParametersType = OptimizerParameters< FixedParametersValueType >
 
using FixedParametersValueType = double
 
using NumberOfParametersType = IdentifierType
 
using ParametersType = OptimizerParameters< ParametersValueType >
 
using ParametersValueType = TParametersValueType
 
using Pointer = SmartPointer< Self >
 
using Self = TransformBaseTemplate
 
using Superclass = Object
 
using TransformCategoryEnum = TransformBaseTemplateEnums::TransformCategory
 
- Public Types inherited from itk::Object
using ConstPointer = SmartPointer< const Self >
 
using Pointer = SmartPointer< Self >
 
using Self = Object
 
using Superclass = LightObject
 
- Public Types inherited from itk::LightObject
using ConstPointer = SmartPointer< const Self >
 
using Pointer = SmartPointer< Self >
 
using Self = LightObject
 

Public Member Functions

virtual ::itk::LightObject::Pointer CreateAnother () const
 
virtual const char * GetNameOfClass () const
 
- Public Member Functions inherited from itk::Transform< TParametersValueType, NDimensions, NDimensions >
void CopyInFixedParameters (const FixedParametersValueType *const begin, const FixedParametersValueType *const end) override
 
void CopyInParameters (const ParametersValueType *const begin, const ParametersValueType *const end) override
 
const FixedParametersTypeGetFixedParameters () const override
 
unsigned int GetInputSpaceDimension () const override
 
bool GetInverse (Self *) const
 
virtual NumberOfParametersType GetNumberOfFixedParameters () const
 
NumberOfParametersType GetNumberOfParameters () const override
 
unsigned int GetOutputSpaceDimension () const override
 
const ParametersTypeGetParameters () const override
 
TransformCategoryEnum GetTransformCategory () const override
 
std::string GetTransformTypeAsString () const override
 
virtual bool IsLinear () const
 
 itkCloneMacro (Self)
 
void SetParametersByValue (const ParametersType &p) override
 
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 &inputTensor, const InputPointType &point) const
 
virtual OutputVectorPixelType TransformDiffusionTensor3D (const InputVectorPixelType &) const
 
virtual OutputVectorPixelType TransformDiffusionTensor3D (const InputVectorPixelType &inputTensor, const InputPointType &point) const
 
virtual OutputPointType TransformPoint (const InputPointType &) const=0
 
virtual OutputSymmetricSecondRankTensorType TransformSymmetricSecondRankTensor (const InputSymmetricSecondRankTensorType &) const
 
virtual OutputSymmetricSecondRankTensorType TransformSymmetricSecondRankTensor (const InputSymmetricSecondRankTensorType &inputTensor, const InputPointType &point) const
 
virtual OutputVectorPixelType TransformSymmetricSecondRankTensor (const InputVectorPixelType &) const
 
virtual OutputVectorPixelType TransformSymmetricSecondRankTensor (const InputVectorPixelType &inputTensor, const InputPointType &point) const
 
virtual OutputVectorPixelType TransformVector (const InputVectorPixelType &) const
 
virtual OutputVectorPixelType TransformVector (const InputVectorPixelType &vector, 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 void UpdateTransformParameters (const DerivativeType &update, ParametersValueType factor=1.0)
 
virtual void ComputeJacobianWithRespectToParameters (const InputPointType &, JacobianType &) const=0
 
virtual void ComputeJacobianWithRespectToParametersCachedTemporaries (const InputPointType &p, JacobianType &jacobian, JacobianType &) const
 
virtual void ComputeJacobianWithRespectToPosition (const InputPointType &, JacobianPositionType &) const
 
 itkLegacyMacro (virtual void ComputeJacobianWithRespectToPosition(const InputPointType &x, JacobianType &jacobian) const)
 
 itkLegacyMacro (virtual void ComputeInverseJacobianWithRespectToPosition(const InputPointType &x, JacobianType &jacobian) const)
 
virtual void ComputeInverseJacobianWithRespectToPosition (const InputPointType &pnt, InverseJacobianPositionType &jacobian) const
 
- Public Member Functions inherited from itk::Object
unsigned long AddObserver (const EventObject &event, Command *)
 
unsigned long AddObserver (const EventObject &event, Command *) const
 
unsigned long AddObserver (const EventObject &event, std::function< void(const EventObject &)> function) const
 
virtual void DebugOff () const
 
virtual void DebugOn () const
 
CommandGetCommand (unsigned long tag)
 
bool GetDebug () const
 
MetaDataDictionaryGetMetaDataDictionary ()
 
const MetaDataDictionaryGetMetaDataDictionary () const
 
virtual ModifiedTimeType 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
 
void Register () const override
 
void RemoveAllObservers ()
 
void RemoveObserver (unsigned long tag)
 
void SetDebug (bool debugFlag) const
 
void SetReferenceCount (int) override
 
void UnRegister () const noexcept override
 
void SetMetaDataDictionary (const MetaDataDictionary &rhs)
 
void SetMetaDataDictionary (MetaDataDictionary &&rrhs)
 
virtual void SetObjectName (std::string _arg)
 
virtual const std::string & GetObjectName () const
 
- Public Member Functions inherited from itk::LightObject
Pointer Clone () const
 
virtual void Delete ()
 
virtual int GetReferenceCount () const
 
void Print (std::ostream &os, Indent indent=0) const
 

Static Public Member Functions

static Pointer New ()
 
- Static Public Member Functions inherited from itk::Object
static bool GetGlobalWarningDisplay ()
 
static void GlobalWarningDisplayOff ()
 
static void GlobalWarningDisplayOn ()
 
static Pointer New ()
 
static void SetGlobalWarningDisplay (bool val)
 
- Static Public Member Functions inherited from itk::LightObject
static void BreakOnError ()
 
static Pointer New ()
 

Static Public Attributes

static constexpr unsigned int Dimension = NDimensions
 
- Static Public Attributes inherited from itk::Transform< TParametersValueType, NDimensions, NDimensions >
static constexpr unsigned int InputSpaceDimension
 
static constexpr unsigned int OutputSpaceDimension
 
DisplacementFieldType::Pointer m_DisplacementField
 
DisplacementFieldType::Pointer m_InverseDisplacementField
 
InterpolatorType::Pointer m_Interpolator
 
InterpolatorType::Pointer m_InverseInterpolator
 
ModifiedTimeType m_DisplacementFieldSetTime { 0 }
 
JacobianType m_IdentityJacobian
 
double m_CoordinateTolerance
 
double m_DirectionTolerance
 
virtual void SetDisplacementField (DisplacementFieldType *field)
 
virtual DisplacementFieldTypeGetModifiableDisplacementField ()
 
virtual const DisplacementFieldTypeGetDisplacementField () const
 
virtual void SetInverseDisplacementField (DisplacementFieldType *inverseField)
 
virtual DisplacementFieldTypeGetModifiableInverseDisplacementField ()
 
virtual const DisplacementFieldTypeGetInverseDisplacementField () const
 
virtual void SetInterpolator (InterpolatorType *interpolator)
 
virtual InterpolatorTypeGetModifiableInterpolator ()
 
virtual const InterpolatorTypeGetInterpolator () const
 
virtual void SetInverseInterpolator (InterpolatorType *interpolator)
 
virtual InterpolatorTypeGetModifiableInverseInterpolator ()
 
virtual const InterpolatorTypeGetInverseInterpolator () const
 
virtual const ModifiedTimeTypeGetDisplacementFieldSetTime () const
 
OutputPointType TransformPoint (const InputPointType &inputPoint) const override
 
OutputVectorType TransformVector (const InputVectorType &) const override
 
OutputVectorPixelType TransformVector (const InputVectorPixelType &) const override
 
OutputVnlVectorType TransformVector (const InputVnlVectorType &) const override
 
OutputDiffusionTensor3DType TransformDiffusionTensor (const InputDiffusionTensor3DType &) const
 
OutputVectorPixelType TransformDiffusionTensor (const InputVectorPixelType &) const
 
OutputCovariantVectorType TransformCovariantVector (const InputCovariantVectorType &) const override
 
OutputVectorPixelType TransformCovariantVector (const InputVectorPixelType &) const override
 
void SetParameters (const ParametersType &params) override
 
void SetFixedParameters (const FixedParametersType &) override
 
void ComputeJacobianWithRespectToParameters (const InputPointType &, JacobianType &j) const override
 
virtual void ComputeJacobianWithRespectToParameters (const IndexType &, JacobianType &j) const
 
void ComputeJacobianWithRespectToPosition (const InputPointType &point, JacobianPositionType &jacobian) const override
 
void ComputeInverseJacobianWithRespectToPosition (const InputPointType &point, InverseJacobianPositionType &jacobian) const override
 
virtual void ComputeJacobianWithRespectToPosition (const IndexType &index, JacobianPositionType &jacobian) const
 
virtual void GetInverseJacobianOfForwardFieldWithRespectToPosition (const InputPointType &point, JacobianPositionType &jacobian, bool useSVD=false) const
 
virtual void GetInverseJacobianOfForwardFieldWithRespectToPosition (const IndexType &index, JacobianPositionType &jacobian, bool useSVD=false) const
 
void UpdateTransformParameters (const DerivativeType &update, ScalarType factor=1.0) override
 
bool GetInverse (Self *inverse) const
 
InverseTransformBasePointer GetInverseTransform () const override
 
virtual void SetIdentity ()
 
TransformCategoryEnum GetTransformCategory () const override
 
NumberOfParametersType GetNumberOfLocalParameters () const override
 
virtual void SetCoordinateTolerance (double _arg)
 
virtual double GetCoordinateTolerance () const
 
virtual void SetDirectionTolerance (double _arg)
 
virtual double GetDirectionTolerance () const
 
 DisplacementFieldTransform ()
 
 ~DisplacementFieldTransform () override=default
 
void PrintSelf (std::ostream &os, Indent indent) const override
 
virtual void ComputeJacobianWithRespectToPositionInternal (const IndexType &index, JacobianPositionType &jacobian, bool doInverseJacobian) const
 
virtual void VerifyFixedParametersInformation ()
 
virtual void SetFixedParametersFromDisplacementField () const
 

Additional Inherited Members

- Protected Member Functions inherited from itk::Transform< TParametersValueType, NDimensions, NDimensions >
LightObject::Pointer InternalClone () const override
 
 Transform ()
 
 Transform (NumberOfParametersType numberOfParameters)
 
 ~Transform () override=default
 
OutputDiffusionTensor3DType PreservationOfPrincipalDirectionDiffusionTensor3DReorientation (const InputDiffusionTensor3DType &, const InverseJacobianPositionType &) const
 
- Protected Member Functions inherited from itk::TransformBaseTemplate< TParametersValueType >
 TransformBaseTemplate ()=default
 
 ~TransformBaseTemplate () override=default
 
- Protected Member Functions inherited from itk::Object
 Object ()
 
 ~Object () override
 
bool PrintObservers (std::ostream &os, Indent indent) const
 
virtual void SetTimeStamp (const TimeStamp &timeStamp)
 
- 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 inherited from itk::Transform< TParametersValueType, NDimensions, NDimensions >
ParametersType m_Parameters
 
FixedParametersType m_FixedParameters
 
DirectionChangeMatrix m_DirectionChange
 
- Protected Attributes inherited from itk::LightObject
std::atomic< int > m_ReferenceCount
 

Detailed Description

template<typename TParametersValueType, unsigned int NDimensions>
class itk::DisplacementFieldTransform< TParametersValueType, NDimensions >

Provides local/dense/high-dimensionality transformation via a a displacement field.

The displacement field stores vectors of displacements, with dimension NDimensions. Transformation is performed at a given point by adding the displacement at that point to the input point.

T(x, p), x is the position, p is the local parameter at position x. For a 2D example:

x = (x0, x1), p = (p0, p1)

then T(x, p) is defined as:

T(x, p) = (T0, T1) = (x0+p0, x1+p1)

During transformation, out-of-bounds input points are returned with zero displacement.

The displacement field is defined using an itkImage, and must be set before use by the user, using SetDisplacementField. The image has the same dimensionality as the input and output spaces, defined by template parameter NDimensions, and is an image of vectors of type OutputVectorType, with dimensionality NDimensions as well.

An interpolator of type VectorInterpolateImageFunction is used with the displacement field image. By default, VectorLinearInterpolateImageFunction is used, and the user can override using SetInterpolator.

The displacement field data is stored using the common OptimizerParameters type in conjunction with the ImageVectorOptimizerParametersHelper class. This allows access of the displacement field image as if it were an itkArray, allowing transparent use with other classes.

Warning
The SetParameters method will copy the passed parameters, which can be costly since displacement fields are dense and thus potentially very large.

The UpdateTransformParameters method simply adds the provided update array, applying the usual optional scaling factor. Derived classes may provide different behavior.

Because this is a local transform, methods that have a version that takes a point must be used, such as TransformVector, TransformCovariantVector, and TransformDiffusionTensor. Also, ComputeJacobianWithRespectToParameters simply returns an identity matrix (see method documentation), and ComputeJacobianWithRespectToPosition should be used.

Examples
Examples/RegistrationITKv4/DeformableRegistration10.cxx, Examples/RegistrationITKv4/DeformableRegistration16.cxx, Examples/RegistrationITKv4/DeformableRegistration17.cxx, Examples/RegistrationITKv4/DeformableRegistration2.cxx, Examples/RegistrationITKv4/DeformableRegistration3.cxx, Examples/RegistrationITKv4/DeformableRegistration5.cxx, Examples/RegistrationITKv4/DeformableRegistration9.cxx, and Examples/RegistrationITKv4/LandmarkWarping2.cxx.

Definition at line 86 of file itkDisplacementFieldTransform.h.

Member Typedef Documentation

◆ ConstPointer

template<typename TParametersValueType , unsigned int NDimensions>
using itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::ConstPointer = SmartPointer<const Self>

Definition at line 95 of file itkDisplacementFieldTransform.h.

◆ DerivativeType

template<typename TParametersValueType , unsigned int NDimensions>
using itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::DerivativeType = typename Superclass::DerivativeType

Derivative type

Definition at line 154 of file itkDisplacementFieldTransform.h.

◆ DirectionType

template<typename TParametersValueType , unsigned int NDimensions>
using itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::DirectionType = typename DisplacementFieldType::DirectionType

Definition at line 171 of file itkDisplacementFieldTransform.h.

◆ DisplacementFieldConstPointer

template<typename TParametersValueType , unsigned int NDimensions>
using itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::DisplacementFieldConstPointer = typename DisplacementFieldType::ConstPointer

Definition at line 162 of file itkDisplacementFieldTransform.h.

◆ DisplacementFieldPointer

template<typename TParametersValueType , unsigned int NDimensions>
using itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::DisplacementFieldPointer = typename DisplacementFieldType::Pointer

Definition at line 161 of file itkDisplacementFieldTransform.h.

◆ DisplacementFieldType

template<typename TParametersValueType , unsigned int NDimensions>
using itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::DisplacementFieldType = Image<OutputVectorType, Dimension>

Define the displacement field type and corresponding interpolator type.

Definition at line 160 of file itkDisplacementFieldTransform.h.

◆ FixedParametersType

template<typename TParametersValueType , unsigned int NDimensions>
using itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::FixedParametersType = typename Superclass::FixedParametersType

Type of the input parameters.

Definition at line 110 of file itkDisplacementFieldTransform.h.

◆ FixedParametersValueType

template<typename TParametersValueType , unsigned int NDimensions>
using itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::FixedParametersValueType = typename Superclass::FixedParametersValueType

Definition at line 111 of file itkDisplacementFieldTransform.h.

◆ IndexType

template<typename TParametersValueType , unsigned int NDimensions>
using itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::IndexType = typename DisplacementFieldType::IndexType

Standard types for the displacement Field

Definition at line 167 of file itkDisplacementFieldTransform.h.

◆ InputCovariantVectorType

template<typename TParametersValueType , unsigned int NDimensions>
using itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::InputCovariantVectorType = typename Superclass::InputCovariantVectorType

Standard covariant vector type for this class

Definition at line 138 of file itkDisplacementFieldTransform.h.

◆ InputDiffusionTensor3DType

template<typename TParametersValueType , unsigned int NDimensions>
using itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::InputDiffusionTensor3DType = typename Superclass::InputDiffusionTensor3DType

Standard diffusion tensor type for this class

Definition at line 146 of file itkDisplacementFieldTransform.h.

◆ InputPointType

template<typename TParametersValueType , unsigned int NDimensions>
using itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::InputPointType = typename Superclass::InputPointType

Standard coordinate point type for this class.

Definition at line 127 of file itkDisplacementFieldTransform.h.

◆ InputTensorEigenVectorType

template<typename TParametersValueType , unsigned int NDimensions>
using itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::InputTensorEigenVectorType = CovariantVector<ScalarType, InputDiffusionTensor3DType::Dimension>

Standard tensor type for this class

Definition at line 150 of file itkDisplacementFieldTransform.h.

◆ InputVectorPixelType

template<typename TParametersValueType , unsigned int NDimensions>
using itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::InputVectorPixelType = typename Superclass::InputVectorPixelType

Definition at line 134 of file itkDisplacementFieldTransform.h.

◆ InputVectorType

template<typename TParametersValueType , unsigned int NDimensions>
using itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::InputVectorType = typename Superclass::InputVectorType

Standard vector type for this class.

Definition at line 131 of file itkDisplacementFieldTransform.h.

◆ InputVnlVectorType

template<typename TParametersValueType , unsigned int NDimensions>
using itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::InputVnlVectorType = typename Superclass::InputVnlVectorType

Standard vnl_vector type for this class.

Definition at line 142 of file itkDisplacementFieldTransform.h.

◆ InterpolatorType

template<typename TParametersValueType , unsigned int NDimensions>
using itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::InterpolatorType = VectorInterpolateImageFunction<DisplacementFieldType, ScalarType>

Definition at line 164 of file itkDisplacementFieldTransform.h.

◆ InverseJacobianPositionType

template<typename TParametersValueType , unsigned int NDimensions>
using itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::InverseJacobianPositionType = typename Superclass::InverseJacobianPositionType

Definition at line 118 of file itkDisplacementFieldTransform.h.

◆ InverseTransformBasePointer

template<typename TParametersValueType , unsigned int NDimensions>
using itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::InverseTransformBasePointer = typename Superclass::InverseTransformBasePointer

InverseTransform type.

Definition at line 104 of file itkDisplacementFieldTransform.h.

◆ JacobianPositionType

template<typename TParametersValueType , unsigned int NDimensions>
using itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::JacobianPositionType = typename Superclass::JacobianPositionType

Definition at line 117 of file itkDisplacementFieldTransform.h.

◆ JacobianType

template<typename TParametersValueType , unsigned int NDimensions>
using itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::JacobianType = typename Superclass::JacobianType

Jacobian types.

Definition at line 116 of file itkDisplacementFieldTransform.h.

◆ NumberOfParametersType

template<typename TParametersValueType , unsigned int NDimensions>
using itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::NumberOfParametersType = typename Superclass::NumberOfParametersType

The number of parameters defining this transform.

Definition at line 124 of file itkDisplacementFieldTransform.h.

◆ OptimizerParametersHelperType

template<typename TParametersValueType , unsigned int NDimensions>
using itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::OptimizerParametersHelperType = ImageVectorOptimizerParametersHelper<ScalarType, OutputVectorType::Dimension, Dimension>

Define the internal parameter helper used to access the field

Definition at line 177 of file itkDisplacementFieldTransform.h.

◆ OutputCovariantVectorType

template<typename TParametersValueType , unsigned int NDimensions>
using itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::OutputCovariantVectorType = typename Superclass::OutputCovariantVectorType

Definition at line 139 of file itkDisplacementFieldTransform.h.

◆ OutputDiffusionTensor3DType

template<typename TParametersValueType , unsigned int NDimensions>
using itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::OutputDiffusionTensor3DType = typename Superclass::OutputDiffusionTensor3DType

Definition at line 147 of file itkDisplacementFieldTransform.h.

◆ OutputPointType

template<typename TParametersValueType , unsigned int NDimensions>
using itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::OutputPointType = typename Superclass::OutputPointType

Definition at line 128 of file itkDisplacementFieldTransform.h.

◆ OutputTensorEigenVectorType

template<typename TParametersValueType , unsigned int NDimensions>
using itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::OutputTensorEigenVectorType = CovariantVector<ScalarType, OutputDiffusionTensor3DType::Dimension>

Definition at line 151 of file itkDisplacementFieldTransform.h.

◆ OutputVectorPixelType

template<typename TParametersValueType , unsigned int NDimensions>
using itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::OutputVectorPixelType = typename Superclass::OutputVectorPixelType

Definition at line 135 of file itkDisplacementFieldTransform.h.

◆ OutputVectorType

template<typename TParametersValueType , unsigned int NDimensions>
using itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::OutputVectorType = typename Superclass::OutputVectorType

Definition at line 132 of file itkDisplacementFieldTransform.h.

◆ OutputVnlVectorType

template<typename TParametersValueType , unsigned int NDimensions>
using itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::OutputVnlVectorType = typename Superclass::OutputVnlVectorType

Definition at line 143 of file itkDisplacementFieldTransform.h.

◆ ParametersType

template<typename TParametersValueType , unsigned int NDimensions>
using itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::ParametersType = typename Superclass::ParametersType

Definition at line 112 of file itkDisplacementFieldTransform.h.

◆ ParametersValueType

template<typename TParametersValueType , unsigned int NDimensions>
using itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::ParametersValueType = typename Superclass::ParametersValueType

Definition at line 113 of file itkDisplacementFieldTransform.h.

◆ PixelType

template<typename TParametersValueType , unsigned int NDimensions>
using itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::PixelType = typename DisplacementFieldType::PixelType

Definition at line 173 of file itkDisplacementFieldTransform.h.

◆ Pointer

template<typename TParametersValueType , unsigned int NDimensions>
using itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::Pointer = SmartPointer<Self>

Definition at line 94 of file itkDisplacementFieldTransform.h.

◆ PointType

template<typename TParametersValueType , unsigned int NDimensions>
using itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::PointType = typename DisplacementFieldType::PointType

Definition at line 172 of file itkDisplacementFieldTransform.h.

◆ RegionType

template<typename TParametersValueType , unsigned int NDimensions>
using itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::RegionType = typename DisplacementFieldType::RegionType

Definition at line 168 of file itkDisplacementFieldTransform.h.

◆ ScalarType

template<typename TParametersValueType , unsigned int NDimensions>
using itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::ScalarType = typename Superclass::ScalarType

Scalar type.

Definition at line 107 of file itkDisplacementFieldTransform.h.

◆ Self

template<typename TParametersValueType , unsigned int NDimensions>
using itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::Self = DisplacementFieldTransform

Standard class type aliases.

Definition at line 92 of file itkDisplacementFieldTransform.h.

◆ SizeType

template<typename TParametersValueType , unsigned int NDimensions>
using itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::SizeType = typename DisplacementFieldType::SizeType

Definition at line 169 of file itkDisplacementFieldTransform.h.

◆ SpacingType

template<typename TParametersValueType , unsigned int NDimensions>
using itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::SpacingType = typename DisplacementFieldType::SpacingType

Definition at line 170 of file itkDisplacementFieldTransform.h.

◆ Superclass

template<typename TParametersValueType , unsigned int NDimensions>
using itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::Superclass = Transform<TParametersValueType, NDimensions, NDimensions>

Definition at line 93 of file itkDisplacementFieldTransform.h.

◆ TransformCategoryEnum

template<typename TParametersValueType , unsigned int NDimensions>
using itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::TransformCategoryEnum = typename Superclass::TransformCategoryEnum

Transform category type.

Definition at line 121 of file itkDisplacementFieldTransform.h.

Constructor & Destructor Documentation

◆ DisplacementFieldTransform()

template<typename TParametersValueType , unsigned int NDimensions>
itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::DisplacementFieldTransform ( )
protected

The displacement field and its inverse (if it exists).

◆ ~DisplacementFieldTransform()

template<typename TParametersValueType , unsigned int NDimensions>
itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::~DisplacementFieldTransform ( )
overrideprotecteddefault

The displacement field and its inverse (if it exists).

Member Function Documentation

◆ ComputeInverseJacobianWithRespectToPosition()

template<typename TParametersValueType , unsigned int NDimensions>
void itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::ComputeInverseJacobianWithRespectToPosition ( const InputPointType point,
InverseJacobianPositionType jacobian 
) const
override

Compute the jacobian with respect to the position, by point. j will be resized as needed.

◆ ComputeJacobianWithRespectToParameters() [1/2]

template<typename TParametersValueType , unsigned int NDimensions>
virtual void itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::ComputeJacobianWithRespectToParameters ( const IndexType ,
JacobianType j 
) const
inlinevirtual

Compute the jacobian with respect to the parameters at an index. Simply returns identity matrix, sized [NDimensions, NDimensions]. See ComputeJacobianWithRespectToParameters( InputPointType, ... ) for rationale.

Definition at line 341 of file itkDisplacementFieldTransform.h.

◆ ComputeJacobianWithRespectToParameters() [2/2]

template<typename TParametersValueType , unsigned int NDimensions>
void itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::ComputeJacobianWithRespectToParameters ( const InputPointType ,
JacobianType j 
) const
inlineoverride

Compute the jacobian with respect to the parameters at a point. Simply returns identity matrix, sized [NDimensions, NDimensions].

T(x, p), x is the position, p is the local parameter at position x. Take a 2D example, x = (x0, x1), p = (p0, p1) and T(x, p) is defined as:

T(x, p) = (T0, T1) = (x0+p0, x1+p1)

Each local deformation is defined as a translation transform. So the Jacobian w.r.t parameters are

dT/dp = [ dT0/dp0, dT0/dp1; dT1/dp0, dT1/dp1 ];

= [1, 0; 0, 1];

TODO: format the above for doxygen formula.

Definition at line 328 of file itkDisplacementFieldTransform.h.

◆ ComputeJacobianWithRespectToPosition() [1/2]

template<typename TParametersValueType , unsigned int NDimensions>
virtual void itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::ComputeJacobianWithRespectToPosition ( const IndexType index,
JacobianPositionType jacobian 
) const
virtual

Compute the jacobian with respect to the position, by index. j will be resized as needed.

◆ ComputeJacobianWithRespectToPosition() [2/2]

template<typename TParametersValueType , unsigned int NDimensions>
void itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::ComputeJacobianWithRespectToPosition ( const InputPointType point,
JacobianPositionType jacobian 
) const
override

Compute the jacobian with respect to the position, by point. j will be resized as needed.

◆ ComputeJacobianWithRespectToPositionInternal()

template<typename TParametersValueType , unsigned int NDimensions>
virtual void itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::ComputeJacobianWithRespectToPositionInternal ( const IndexType index,
JacobianPositionType jacobian,
bool  doInverseJacobian 
) const
privatevirtual

Internal method for calculating either forward or inverse jacobian, depending on state of doInverseJacobian. Used by public methods ComputeJacobianWithRespectToPosition and GetInverseJacobianOfForwardFieldWithRespectToPosition to perform actual work. doInverseJacobian indicates that the inverse jacobian should be returned

◆ CreateAnother()

template<typename TParametersValueType , unsigned int NDimensions>
virtual::itk::LightObject::Pointer itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::CreateAnother ( ) const
virtual

◆ GetCoordinateTolerance()

template<typename TParametersValueType , unsigned int NDimensions>
virtual double itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::GetCoordinateTolerance ( ) const
virtual

The displacement field and its inverse (if it exists).

◆ GetDirectionTolerance()

template<typename TParametersValueType , unsigned int NDimensions>
virtual double itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::GetDirectionTolerance ( ) const
virtual

The displacement field and its inverse (if it exists).

◆ GetDisplacementField()

template<typename TParametersValueType , unsigned int NDimensions>
virtual const DisplacementFieldType* itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::GetDisplacementField ( ) const
virtual

The displacement field and its inverse (if it exists).

◆ GetDisplacementFieldSetTime()

template<typename TParametersValueType , unsigned int NDimensions>
virtual const ModifiedTimeType& itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::GetDisplacementFieldSetTime ( ) const
virtual

Get the modification time of displacement field.

◆ GetInterpolator()

template<typename TParametersValueType , unsigned int NDimensions>
virtual const InterpolatorType* itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::GetInterpolator ( ) const
virtual

The displacement field and its inverse (if it exists).

◆ GetInverse()

template<typename TParametersValueType , unsigned int NDimensions>
bool itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::GetInverse ( Self inverse) const

Return an inverse of this transform. Note that the inverse displacement field must be set by the user.

◆ GetInverseDisplacementField()

template<typename TParametersValueType , unsigned int NDimensions>
virtual const DisplacementFieldType* itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::GetInverseDisplacementField ( ) const
virtual

The displacement field and its inverse (if it exists).

◆ GetInverseInterpolator()

template<typename TParametersValueType , unsigned int NDimensions>
virtual const InterpolatorType* itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::GetInverseInterpolator ( ) const
virtual

The displacement field and its inverse (if it exists).

◆ GetInverseJacobianOfForwardFieldWithRespectToPosition() [1/2]

template<typename TParametersValueType , unsigned int NDimensions>
virtual void itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::GetInverseJacobianOfForwardFieldWithRespectToPosition ( const IndexType index,
JacobianPositionType jacobian,
bool  useSVD = false 
) const
virtual

Compute the inverse jacobian of the forward displacement field with respect to the position, by index.Note that this is different than the jacobian of the inverse displacement field. This takes advantage of the ability to compute the inverse jacobian of a displacement field by simply reversing the sign of the forward jacobian. However, a more accurate method for computing the inverse jacobian is to take the inverse of the jacobian matrix. This method is more computationally expensive and may be used by setting useSVD to true

◆ GetInverseJacobianOfForwardFieldWithRespectToPosition() [2/2]

template<typename TParametersValueType , unsigned int NDimensions>
virtual void itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::GetInverseJacobianOfForwardFieldWithRespectToPosition ( const InputPointType point,
JacobianPositionType jacobian,
bool  useSVD = false 
) const
virtual

Compute the inverse jacobian of the forward displacement field with respect to the position, by point. Note that this is different than the jacobian of the inverse displacement field. This takes advantage of the ability to compute the inverse jacobian of a displacement field by simply reversing the sign of the forward jacobian. However, a more accurate method for computing the inverse jacobian is to take the inverse of the jacobian matrix. This method is more computationally expensive and may be used by setting useSVD to true

◆ GetInverseTransform()

template<typename TParametersValueType , unsigned int NDimensions>
InverseTransformBasePointer itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::GetInverseTransform ( ) const
overridevirtual

Return an inverse of this transform. Note that the inverse displacement field must be set by the user.

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

Reimplemented in itk::VelocityFieldTransform< TParametersValueType, NDimensions >.

◆ GetModifiableDisplacementField()

template<typename TParametersValueType , unsigned int NDimensions>
virtual DisplacementFieldType* itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::GetModifiableDisplacementField ( )
virtual

The displacement field and its inverse (if it exists).

◆ GetModifiableInterpolator()

template<typename TParametersValueType , unsigned int NDimensions>
virtual InterpolatorType* itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::GetModifiableInterpolator ( )
virtual

The displacement field and its inverse (if it exists).

◆ GetModifiableInverseDisplacementField()

template<typename TParametersValueType , unsigned int NDimensions>
virtual DisplacementFieldType* itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::GetModifiableInverseDisplacementField ( )
virtual

The displacement field and its inverse (if it exists).

◆ GetModifiableInverseInterpolator()

template<typename TParametersValueType , unsigned int NDimensions>
virtual InterpolatorType* itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::GetModifiableInverseInterpolator ( )
virtual

The displacement field and its inverse (if it exists).

◆ GetNameOfClass()

template<typename TParametersValueType , unsigned int NDimensions>
virtual const char* itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::GetNameOfClass ( ) const
virtual

◆ GetNumberOfLocalParameters()

template<typename TParametersValueType , unsigned int NDimensions>
NumberOfParametersType itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::GetNumberOfLocalParameters ( ) const
inlineoverridevirtual

The displacement field and its inverse (if it exists).

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

Definition at line 426 of file itkDisplacementFieldTransform.h.

References itk::GTest::TypedefsAndConstructors::Dimension2::Dimension.

◆ GetTransformCategory()

template<typename TParametersValueType , unsigned int NDimensions>
TransformCategoryEnum itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::GetTransformCategory ( ) const
inlineoverridevirtual

This transform is not linear.

Implements itk::TransformBaseTemplate< TParametersValueType >.

Definition at line 420 of file itkDisplacementFieldTransform.h.

◆ New()

template<typename TParametersValueType , unsigned int NDimensions>
static Pointer itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::New ( )
static

New macro for creation of through a Smart Pointer

◆ PrintSelf()

template<typename TParametersValueType , unsigned int NDimensions>
void itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::PrintSelf ( std::ostream &  os,
Indent  indent 
) const
overrideprotectedvirtual

◆ SetCoordinateTolerance()

template<typename TParametersValueType , unsigned int NDimensions>
virtual void itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::SetCoordinateTolerance ( double  _arg)
virtual

Set/Get the coordinate tolerance. This tolerance is used when comparing the space defined by deformation fields and it's inverse to ensure they occupy the same physical space.

See also
ImageToImageFilterCommon::SetGlobalDefaultCoordinateTolerance

◆ SetDirectionTolerance()

template<typename TParametersValueType , unsigned int NDimensions>
virtual void itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::SetDirectionTolerance ( double  _arg)
virtual

Set/Get the direction tolerance. This tolerance is used to when comparing the orientation of the deformation fields and it's inverse to ensure they occupy the same physical space.

See also
ImageToImageFilterCommon::SetGlobalDefaultDirectionTolerance

◆ SetDisplacementField()

template<typename TParametersValueType , unsigned int NDimensions>
virtual void itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::SetDisplacementField ( DisplacementFieldType field)
virtual

Get/Set the displacement field. Set the displacement field. Create special set accessor to update interpolator and assign displacement field to transform parameters container.

Reimplemented in itk::VelocityFieldTransform< TParametersValueType, NDimensions >.

◆ SetFixedParameters()

template<typename TParametersValueType , unsigned int NDimensions>
void itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::SetFixedParameters ( const FixedParametersType )
overridevirtual

This method sets the fixed parameters of the transform. For a displacement field transform, the fixed parameters are the following: field size, field origin, field spacing, and field direction.

Note: If a displacement field already exists, this function creates a new one with zero displacement (identity transform). If an inverse displacement field exists, a new one is also created.

Implements itk::Transform< TParametersValueType, NDimensions, NDimensions >.

Reimplemented in itk::VelocityFieldTransform< TParametersValueType, NDimensions >.

◆ SetFixedParametersFromDisplacementField()

template<typename TParametersValueType , unsigned int NDimensions>
virtual void itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::SetFixedParametersFromDisplacementField ( ) const
privatevirtual

Convenience method which reads the information from the current displacement field into m_FixedParameters.

◆ SetIdentity()

template<typename TParametersValueType , unsigned int NDimensions>
virtual void itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::SetIdentity ( )
virtual

The displacement field and its inverse (if it exists).

◆ SetInterpolator()

template<typename TParametersValueType , unsigned int NDimensions>
virtual void itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::SetInterpolator ( InterpolatorType interpolator)
virtual

Get/Set the interpolator. Create out own set accessor that assigns the displacement field.

◆ SetInverseDisplacementField()

template<typename TParametersValueType , unsigned int NDimensions>
virtual void itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::SetInverseDisplacementField ( DisplacementFieldType inverseField)
virtual

Get/Set the inverse displacement field. This must be supplied by the user for GetInverse() to work.

◆ SetInverseInterpolator()

template<typename TParametersValueType , unsigned int NDimensions>
virtual void itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::SetInverseInterpolator ( InterpolatorType interpolator)
virtual

Get/Set the interpolator for the inverse field. Create out own set accessor that assigns the displacement field.

◆ SetParameters()

template<typename TParametersValueType , unsigned int NDimensions>
void itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::SetParameters ( const ParametersType params)
inlineoverridevirtual

Set the transformation parameters. This sets the displacement field image directly.

Implements itk::Transform< TParametersValueType, NDimensions, NDimensions >.

Definition at line 278 of file itkDisplacementFieldTransform.h.

References itk::Array< TValue >::Size().

◆ TransformCovariantVector() [1/2]

template<typename TParametersValueType , unsigned int NDimensions>
OutputCovariantVectorType itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::TransformCovariantVector ( const InputCovariantVectorType ) const
inlineoverride

The displacement field and its inverse (if it exists).

Definition at line 261 of file itkDisplacementFieldTransform.h.

◆ TransformCovariantVector() [2/2]

template<typename TParametersValueType , unsigned int NDimensions>
OutputVectorPixelType itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::TransformCovariantVector ( const InputVectorPixelType ) const
inlineoverride

The displacement field and its inverse (if it exists).

Definition at line 269 of file itkDisplacementFieldTransform.h.

◆ TransformDiffusionTensor() [1/2]

template<typename TParametersValueType , unsigned int NDimensions>
OutputDiffusionTensor3DType itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::TransformDiffusionTensor ( const InputDiffusionTensor3DType ) const
inline

The displacement field and its inverse (if it exists).

Definition at line 244 of file itkDisplacementFieldTransform.h.

◆ TransformDiffusionTensor() [2/2]

template<typename TParametersValueType , unsigned int NDimensions>
OutputVectorPixelType itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::TransformDiffusionTensor ( const InputVectorPixelType ) const
inline

The displacement field and its inverse (if it exists).

Definition at line 252 of file itkDisplacementFieldTransform.h.

◆ TransformPoint()

template<typename TParametersValueType , unsigned int NDimensions>
OutputPointType itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::TransformPoint ( const InputPointType inputPoint) const
override

Method to transform a point. Out-of-bounds points will be returned with zero displacement.

◆ TransformVector() [1/3]

template<typename TParametersValueType , unsigned int NDimensions>
OutputVectorPixelType itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::TransformVector ( const InputVectorPixelType ) const
inlineoverride

The displacement field and its inverse (if it exists).

Definition at line 228 of file itkDisplacementFieldTransform.h.

◆ TransformVector() [2/3]

template<typename TParametersValueType , unsigned int NDimensions>
OutputVectorType itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::TransformVector ( const InputVectorType ) const
inlineoverride

The displacement field and its inverse (if it exists).

Definition at line 220 of file itkDisplacementFieldTransform.h.

◆ TransformVector() [3/3]

template<typename TParametersValueType , unsigned int NDimensions>
OutputVnlVectorType itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::TransformVector ( const InputVnlVectorType ) const
inlineoverride

The displacement field and its inverse (if it exists).

Definition at line 235 of file itkDisplacementFieldTransform.h.

◆ UpdateTransformParameters()

template<typename TParametersValueType , unsigned int NDimensions>
void itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::UpdateTransformParameters ( const DerivativeType update,
ScalarType  factor = 1.0 
)
override

The displacement field and its inverse (if it exists).

◆ VerifyFixedParametersInformation()

template<typename TParametersValueType , unsigned int NDimensions>
virtual void itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::VerifyFixedParametersInformation ( )
privatevirtual

Internal method to check that the inverse and forward displacement fields have the same fixed parameters.

Member Data Documentation

◆ Dimension

template<typename TParametersValueType , unsigned int NDimensions>
constexpr unsigned int itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::Dimension = NDimensions
staticconstexpr

Dimension of the domain spaces.

Definition at line 157 of file itkDisplacementFieldTransform.h.

◆ m_CoordinateTolerance

template<typename TParametersValueType , unsigned int NDimensions>
double itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::m_CoordinateTolerance
private

The displacement field and its inverse (if it exists).

Definition at line 503 of file itkDisplacementFieldTransform.h.

◆ m_DirectionTolerance

template<typename TParametersValueType , unsigned int NDimensions>
double itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::m_DirectionTolerance
private

The displacement field and its inverse (if it exists).

Definition at line 504 of file itkDisplacementFieldTransform.h.

◆ m_DisplacementField

template<typename TParametersValueType , unsigned int NDimensions>
DisplacementFieldType::Pointer itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::m_DisplacementField
protected

The displacement field and its inverse (if it exists).

Definition at line 460 of file itkDisplacementFieldTransform.h.

◆ m_DisplacementFieldSetTime

template<typename TParametersValueType , unsigned int NDimensions>
ModifiedTimeType itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::m_DisplacementFieldSetTime { 0 }
protected

Track when the displacement field was last set/assigned, as distinct from when it may have had its contents modified.

Definition at line 469 of file itkDisplacementFieldTransform.h.

◆ m_IdentityJacobian

template<typename TParametersValueType , unsigned int NDimensions>
JacobianType itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::m_IdentityJacobian
protected

Create an identity jacobian for use in ComputeJacobianWithRespectToParameters.

Definition at line 473 of file itkDisplacementFieldTransform.h.

◆ m_Interpolator

template<typename TParametersValueType , unsigned int NDimensions>
InterpolatorType::Pointer itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::m_Interpolator
protected

The interpolator.

Definition at line 464 of file itkDisplacementFieldTransform.h.

◆ m_InverseDisplacementField

template<typename TParametersValueType , unsigned int NDimensions>
DisplacementFieldType::Pointer itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::m_InverseDisplacementField
protected

The displacement field and its inverse (if it exists).

Definition at line 461 of file itkDisplacementFieldTransform.h.

◆ m_InverseInterpolator

template<typename TParametersValueType , unsigned int NDimensions>
InterpolatorType::Pointer itk::DisplacementFieldTransform< TParametersValueType, NDimensions >::m_InverseInterpolator
protected

The displacement field and its inverse (if it exists).

Definition at line 465 of file itkDisplacementFieldTransform.h.


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