go home Home | Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | File List | Namespace Members | Data Fields | Globals | Related Pages
Loading...
Searching...
No Matches
elastix::AdvancedTransformAdapter< TScalarType, NDimensions > Class Template Reference

#include <elxAdvancedTransformAdapter.h>

Detailed Description

template<class TScalarType, unsigned int NDimensions>
class elastix::AdvancedTransformAdapter< TScalarType, NDimensions >

Adapts the ITK transform that is specified by AdvancedTransformAdapter::SetExternalTransform to the elastix AdvancedTransform interface.

DO NOT USE IT FOR REGISTRATION. DO NOT USE IT TO RETRIEVE JACOBIAN OR THE HESSIAN VALUES.

Definition at line 38 of file elxAdvancedTransformAdapter.h.

Inheritance diagram for elastix::AdvancedTransformAdapter< TScalarType, NDimensions >:

Public Types

using ConstPointer = itk::SmartPointer<const Self>
using JacobianOfSpatialHessianType
using JacobianOfSpatialJacobianType
using NonZeroJacobianIndicesType
using Pointer = itk::SmartPointer<Self>
using Self = AdvancedTransformAdapter
using SpatialHessianType
using SpatialJacobianType
using Superclass = itk::AdvancedTransform<TScalarType, NDimensions, NDimensions>
using TransformType
Public Types inherited from itk::AdvancedTransform< TScalarType, NDimensions, NDimensions >
using ConstPointer
using InternalMatrixType
using InverseTransformBaseType
using JacobianOfSpatialHessianType
using JacobianOfSpatialJacobianType
using MovingImageGradientType
using MovingImageGradientValueType
using NonZeroJacobianIndicesType
using Pointer
using Self
using SpatialHessianType
using SpatialJacobianType
using Superclass
using TransformType
using TransformTypeConstPointer
using TransformTypePointer

Public Member Functions

virtual const char * GetClassName () const
const ParametersType & GetFixedParameters () const override
void GetJacobian (const InputPointType &, JacobianType &, NonZeroJacobianIndicesType &) const override
void GetJacobianOfSpatialHessian (const InputPointType &, JacobianOfSpatialHessianType &, NonZeroJacobianIndicesType &) const override
void GetJacobianOfSpatialHessian (const InputPointType &, SpatialHessianType &, JacobianOfSpatialHessianType &, NonZeroJacobianIndicesType &) const override
void GetJacobianOfSpatialJacobian (const InputPointType &, JacobianOfSpatialJacobianType &, NonZeroJacobianIndicesType &) const override
void GetJacobianOfSpatialJacobian (const InputPointType &, SpatialJacobianType &, JacobianOfSpatialJacobianType &, NonZeroJacobianIndicesType &) const override
TransformTypeGetModifiableExternalTransform () const
void GetSpatialHessian (const InputPointType &, SpatialHessianType &) const override
void GetSpatialJacobian (const InputPointType &, SpatialJacobianType &) const override
bool IsLinear () const override
 ITK_DISALLOW_COPY_AND_MOVE (AdvancedTransformAdapter)
 itkStaticConstMacro (InputSpaceDimension, unsigned int, Superclass::InputSpaceDimension)
 itkStaticConstMacro (OutputSpaceDimension, unsigned int, Superclass::OutputSpaceDimension)
virtual void SetExternalTransform (TransformType *_arg)
void SetFixedParameters (const ParametersType &) override
void SetParameters (const ParametersType &parameters) override
OutputCovariantVectorType TransformCovariantVector (const InputCovariantVectorType &) const override
OutputPointType TransformPoint (const InputPointType &point) const override
OutputVectorType TransformVector (const InputVectorType &) const override
OutputVnlVectorType TransformVector (const InputVnlVectorType &) const override
Public Member Functions inherited from itk::AdvancedTransform< TScalarType, NDimensions, NDimensions >
void ComputeJacobianWithRespectToParameters (const InputPointType &, JacobianType &) const override
virtual void EvaluateJacobianWithImageGradientProduct (const InputPointType &inputPoint, const MovingImageGradientType &movingImageGradient, DerivativeType &imageJacobian, NonZeroJacobianIndicesType &nonZeroJacobianIndices) const
virtual bool GetHasNonZeroJacobianOfSpatialHessian () const
virtual bool GetHasNonZeroSpatialHessian () const
virtual NumberOfParametersType GetNumberOfNonZeroJacobianIndices () const
 ITK_DISALLOW_COPY_AND_MOVE (AdvancedTransform)
 itkStaticConstMacro (InputSpaceDimension, unsigned int, NInputDimensions)
 itkStaticConstMacro (OutputSpaceDimension, unsigned int, NOutputDimensions)

Static Public Member Functions

static Pointer New ()

Protected Member Functions

 AdvancedTransformAdapter ()=default
void PrintSelf (std::ostream &os, itk::Indent indent) const override
 ~AdvancedTransformAdapter () override=default
Protected Member Functions inherited from itk::AdvancedTransform< TScalarType, NDimensions, NDimensions >
 AdvancedTransform ()=default
 ~AdvancedTransform () override=default

Private Attributes

itk::SmartPointer< TransformTypem_ExternalTransform {}

Static Private Attributes

static constexpr const char * unimplementedOverrideMessage = "Not implemented for AdvancedTransformAdapter"

Additional Inherited Members

Protected Attributes inherited from itk::AdvancedTransform< TScalarType, NDimensions, NDimensions >
bool m_HasNonZeroJacobianOfSpatialHessian
bool m_HasNonZeroSpatialHessian

Member Typedef Documentation

◆ ConstPointer

template<class TScalarType, unsigned int NDimensions>
using elastix::AdvancedTransformAdapter< TScalarType, NDimensions >::ConstPointer = itk::SmartPointer<const Self>

Definition at line 48 of file elxAdvancedTransformAdapter.h.

◆ JacobianOfSpatialHessianType

template<class TScalarType, unsigned int NDimensions>
using itk::AdvancedTransform< TScalarType, NInputDimensions, NOutputDimensions >::JacobianOfSpatialHessianType

Definition at line 139 of file itkAdvancedTransform.h.

◆ JacobianOfSpatialJacobianType

template<class TScalarType, unsigned int NDimensions>
using itk::AdvancedTransform< TScalarType, NInputDimensions, NOutputDimensions >::JacobianOfSpatialJacobianType

Definition at line 135 of file itkAdvancedTransform.h.

◆ NonZeroJacobianIndicesType

template<class TScalarType, unsigned int NDimensions>
using itk::AdvancedTransform< TScalarType, NInputDimensions, NOutputDimensions >::NonZeroJacobianIndicesType

Types for the (Spatial)Jacobian/Hessian. Using an itk::FixedArray instead of an std::vector gives a performance gain for the SpatialHessianType.

Definition at line 133 of file itkAdvancedTransform.h.

◆ Pointer

template<class TScalarType, unsigned int NDimensions>
using elastix::AdvancedTransformAdapter< TScalarType, NDimensions >::Pointer = itk::SmartPointer<Self>

Definition at line 47 of file elxAdvancedTransformAdapter.h.

◆ Self

template<class TScalarType, unsigned int NDimensions>
using elastix::AdvancedTransformAdapter< TScalarType, NDimensions >::Self = AdvancedTransformAdapter

Standard class typedefs.

Definition at line 45 of file elxAdvancedTransformAdapter.h.

◆ SpatialHessianType

template<class TScalarType, unsigned int NDimensions>
using itk::AdvancedTransform< TScalarType, NInputDimensions, NOutputDimensions >::SpatialHessianType

Definition at line 137 of file itkAdvancedTransform.h.

◆ SpatialJacobianType

template<class TScalarType, unsigned int NDimensions>
using itk::AdvancedTransform< TScalarType, NInputDimensions, NOutputDimensions >::SpatialJacobianType

Definition at line 134 of file itkAdvancedTransform.h.

◆ Superclass

template<class TScalarType, unsigned int NDimensions>
using elastix::AdvancedTransformAdapter< TScalarType, NDimensions >::Superclass = itk::AdvancedTransform<TScalarType, NDimensions, NDimensions>

Definition at line 46 of file elxAdvancedTransformAdapter.h.

◆ TransformType

template<class TScalarType, unsigned int NDimensions>
using itk::AdvancedTransform< TScalarType, NInputDimensions, NOutputDimensions >::TransformType

Transform typedefs for the from Superclass.

Definition at line 125 of file itkAdvancedTransform.h.

Constructor & Destructor Documentation

◆ AdvancedTransformAdapter()

template<class TScalarType, unsigned int NDimensions>
elastix::AdvancedTransformAdapter< TScalarType, NDimensions >::AdvancedTransformAdapter ( )
protecteddefault

Default-constructor.

◆ ~AdvancedTransformAdapter()

template<class TScalarType, unsigned int NDimensions>
elastix::AdvancedTransformAdapter< TScalarType, NDimensions >::~AdvancedTransformAdapter ( )
overrideprotecteddefault

Destructor.

Member Function Documentation

◆ GetClassName()

template<class TScalarType, unsigned int NDimensions>
virtual const char * elastix::AdvancedTransformAdapter< TScalarType, NDimensions >::GetClassName ( ) const
virtual

Run-time type information (and related methods).

Reimplemented from itk::AdvancedTransform< TScalarType, NDimensions, NDimensions >.

◆ GetFixedParameters()

template<class TScalarType, unsigned int NDimensions>
const ParametersType & elastix::AdvancedTransformAdapter< TScalarType, NDimensions >::GetFixedParameters ( ) const
inlineoverride

Get the fixed parameters.

Definition at line 99 of file elxAdvancedTransformAdapter.h.

◆ GetJacobian()

template<class TScalarType, unsigned int NDimensions>
void elastix::AdvancedTransformAdapter< TScalarType, NDimensions >::GetJacobian ( const InputPointType & ,
JacobianType & ,
NonZeroJacobianIndicesType &  ) const
inlineoverridevirtual

◆ GetJacobianOfSpatialHessian() [1/2]

template<class TScalarType, unsigned int NDimensions>
void elastix::AdvancedTransformAdapter< TScalarType, NDimensions >::GetJacobianOfSpatialHessian ( const InputPointType & ,
JacobianOfSpatialHessianType & ,
NonZeroJacobianIndicesType &  ) const
inlineoverridevirtual

◆ GetJacobianOfSpatialHessian() [2/2]

template<class TScalarType, unsigned int NDimensions>
void elastix::AdvancedTransformAdapter< TScalarType, NDimensions >::GetJacobianOfSpatialHessian ( const InputPointType & ,
SpatialHessianType & ,
JacobianOfSpatialHessianType & ,
NonZeroJacobianIndicesType &  ) const
inlineoverridevirtual

◆ GetJacobianOfSpatialJacobian() [1/2]

template<class TScalarType, unsigned int NDimensions>
void elastix::AdvancedTransformAdapter< TScalarType, NDimensions >::GetJacobianOfSpatialJacobian ( const InputPointType & ,
JacobianOfSpatialJacobianType & ,
NonZeroJacobianIndicesType &  ) const
inlineoverridevirtual

◆ GetJacobianOfSpatialJacobian() [2/2]

template<class TScalarType, unsigned int NDimensions>
void elastix::AdvancedTransformAdapter< TScalarType, NDimensions >::GetJacobianOfSpatialJacobian ( const InputPointType & ,
SpatialJacobianType & ,
JacobianOfSpatialJacobianType & ,
NonZeroJacobianIndicesType &  ) const
inlineoverridevirtual

◆ GetModifiableExternalTransform()

template<class TScalarType, unsigned int NDimensions>
TransformType * elastix::AdvancedTransformAdapter< TScalarType, NDimensions >::GetModifiableExternalTransform ( ) const
inline
Note
GetModifiableExternalTransform() is const, because it does not affect the adapter itself.

Definition at line 194 of file elxAdvancedTransformAdapter.h.

◆ GetSpatialHessian()

template<class TScalarType, unsigned int NDimensions>
void elastix::AdvancedTransformAdapter< TScalarType, NDimensions >::GetSpatialHessian ( const InputPointType & ,
SpatialHessianType &  ) const
inlineoverridevirtual

◆ GetSpatialJacobian()

template<class TScalarType, unsigned int NDimensions>
void elastix::AdvancedTransformAdapter< TScalarType, NDimensions >::GetSpatialJacobian ( const InputPointType & ,
SpatialJacobianType &  ) const
inlineoverridevirtual

◆ IsLinear()

template<class TScalarType, unsigned int NDimensions>
bool elastix::AdvancedTransformAdapter< TScalarType, NDimensions >::IsLinear ( ) const
inlineoverride

Definition at line 131 of file elxAdvancedTransformAdapter.h.

◆ ITK_DISALLOW_COPY_AND_MOVE()

template<class TScalarType, unsigned int NDimensions>
elastix::AdvancedTransformAdapter< TScalarType, NDimensions >::ITK_DISALLOW_COPY_AND_MOVE ( AdvancedTransformAdapter< TScalarType, NDimensions > )

◆ itkStaticConstMacro() [1/2]

template<class TScalarType, unsigned int NDimensions>
elastix::AdvancedTransformAdapter< TScalarType, NDimensions >::itkStaticConstMacro ( InputSpaceDimension ,
unsigned int ,
Superclass::InputSpaceDimension  )

Dimension of the domain spaces.

◆ itkStaticConstMacro() [2/2]

template<class TScalarType, unsigned int NDimensions>
elastix::AdvancedTransformAdapter< TScalarType, NDimensions >::itkStaticConstMacro ( OutputSpaceDimension ,
unsigned int ,
Superclass::OutputSpaceDimension  )

◆ New()

template<class TScalarType, unsigned int NDimensions>
Pointer elastix::AdvancedTransformAdapter< TScalarType, NDimensions >::New ( )
static

New macro for creation of through the object factory.

◆ PrintSelf()

template<class TScalarType, unsigned int NDimensions>
void elastix::AdvancedTransformAdapter< TScalarType, NDimensions >::PrintSelf ( std::ostream & os,
itk::Indent indent ) const
inlineoverrideprotected

Print contents of an AdvancedTransformAdapter.

Definition at line 208 of file elxAdvancedTransformAdapter.h.

◆ SetExternalTransform()

template<class TScalarType, unsigned int NDimensions>
virtual void elastix::AdvancedTransformAdapter< TScalarType, NDimensions >::SetExternalTransform ( TransformType * _arg)
virtual

◆ SetFixedParameters()

template<class TScalarType, unsigned int NDimensions>
void elastix::AdvancedTransformAdapter< TScalarType, NDimensions >::SetFixedParameters ( const ParametersType & )
inlineoverride

Set the fixed parameters. Not implemented for this transform.

Definition at line 92 of file elxAdvancedTransformAdapter.h.

◆ SetParameters()

template<class TScalarType, unsigned int NDimensions>
void elastix::AdvancedTransformAdapter< TScalarType, NDimensions >::SetParameters ( const ParametersType & parameters)
inlineoverride

Set the transformation parameters.

Definition at line 79 of file elxAdvancedTransformAdapter.h.

◆ TransformCovariantVector()

template<class TScalarType, unsigned int NDimensions>
OutputCovariantVectorType elastix::AdvancedTransformAdapter< TScalarType, NDimensions >::TransformCovariantVector ( const InputCovariantVectorType & ) const
inlineoverride

Definition at line 125 of file elxAdvancedTransformAdapter.h.

◆ TransformPoint()

template<class TScalarType, unsigned int NDimensions>
OutputPointType elastix::AdvancedTransformAdapter< TScalarType, NDimensions >::TransformPoint ( const InputPointType & point) const
inlineoverride

Transform a point.

Definition at line 106 of file elxAdvancedTransformAdapter.h.

◆ TransformVector() [1/2]

template<class TScalarType, unsigned int NDimensions>
OutputVectorType elastix::AdvancedTransformAdapter< TScalarType, NDimensions >::TransformVector ( const InputVectorType & ) const
inlineoverride

These vector transforms are not implemented for this transform.

Definition at line 113 of file elxAdvancedTransformAdapter.h.

◆ TransformVector() [2/2]

template<class TScalarType, unsigned int NDimensions>
OutputVnlVectorType elastix::AdvancedTransformAdapter< TScalarType, NDimensions >::TransformVector ( const InputVnlVectorType & ) const
inlineoverride

Definition at line 119 of file elxAdvancedTransformAdapter.h.

Field Documentation

◆ m_ExternalTransform

template<class TScalarType, unsigned int NDimensions>
itk::SmartPointer<TransformType> elastix::AdvancedTransformAdapter< TScalarType, NDimensions >::m_ExternalTransform {}
private

Definition at line 231 of file elxAdvancedTransformAdapter.h.

◆ unimplementedOverrideMessage

template<class TScalarType, unsigned int NDimensions>
const char* elastix::AdvancedTransformAdapter< TScalarType, NDimensions >::unimplementedOverrideMessage = "Not implemented for AdvancedTransformAdapter"
staticconstexprprivate

Definition at line 229 of file elxAdvancedTransformAdapter.h.



Generated on 1768596610 for elastix by doxygen 1.15.0 elastix logo