go home Home | Main Page | Topics | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | File List | Namespace Members | Data Fields | Globals | Related Pages
Loading...
Searching...
No Matches
itk::AdvancedVersorRigid3DTransform< TScalarType > Class Template Reference

#include <itkAdvancedVersorRigid3DTransform.h>

Detailed Description

template<typename TScalarType = double>
class itk::AdvancedVersorRigid3DTransform< TScalarType >

AdvancedVersorRigid3DTransform of a vector space (e.g. space coordinates).

This transform applies a rotation and translation to the space The parameters for this transform can be set either using individual Set methods or in serialized form using SetParameters() and SetFixedParameters().

The serialization of the optimizable parameters is an array of 6 elements. The first 3 elements are the components of the versor representation of 3D rotation. The last 3 parameters defines the translation in each dimension.

The serialization of the fixed parameters is an array of 3 elements defining the center of rotation.

NB: SK: this class is just to have the AdvancedSimilarity3DTransform. It is not complete.

Definition at line 64 of file itkAdvancedVersorRigid3DTransform.h.

Inheritance diagram for itk::AdvancedVersorRigid3DTransform< TScalarType >:

Public Types

using AngleType
using AxisType
using ConstPointer = SmartPointer<const Self>
using Pointer = SmartPointer<Self>
using Self = AdvancedVersorRigid3DTransform
using Superclass = AdvancedVersorTransform<TScalarType>
using VersorType
Public Types inherited from itk::AdvancedVersorTransform< double >
using AngleType
using AxisType
using ConstPointer
typedef typename SpatialJacobianType::InternalMatrixType InternalMatrixType
typedef std::vector< SpatialHessianTypeJacobianOfSpatialHessianType
typedef std::vector< SpatialJacobianTypeJacobianOfSpatialJacobianType
typedef std::vector< uint64_t > NonZeroJacobianIndicesType
using Pointer
using Self
typedef FixedArray< Matrix< ScalarType, InputSpaceDimension, InputSpaceDimension >, OutputSpaceDimension > SpatialHessianType
typedef Matrix< ScalarType, OutputSpaceDimension, InputSpaceDimension > SpatialJacobianType
using Superclass
using VersorType
using VnlQuaternionType
Public Types inherited from itk::AdvancedRigid3DTransform< double >
using ConstPointer
typedef typename SpatialJacobianType::InternalMatrixType InternalMatrixType
typedef std::vector< SpatialHessianTypeJacobianOfSpatialHessianType
typedef std::vector< SpatialJacobianTypeJacobianOfSpatialJacobianType
typedef std::vector< uint64_t > NonZeroJacobianIndicesType
using Pointer
using Self
typedef FixedArray< Matrix< ScalarType, InputSpaceDimension, InputSpaceDimension >, OutputSpaceDimension > SpatialHessianType
typedef Matrix< ScalarType, OutputSpaceDimension, InputSpaceDimension > SpatialJacobianType
using Superclass
Public Types inherited from itk::AdvancedMatrixOffsetTransformBase< double, 3, 3 >
using CenterType
using ConstPointer
typedef typename SpatialJacobianType::InternalMatrixType InternalMatrixType
using InverseMatrixType
typedef std::vector< SpatialHessianTypeJacobianOfSpatialHessianType
typedef std::vector< SpatialJacobianTypeJacobianOfSpatialJacobianType
using MatrixType
typedef std::vector< uint64_t > NonZeroJacobianIndicesType
using OffsetType
using Pointer
using Self
typedef FixedArray< Matrix< ScalarType, InputSpaceDimension, InputSpaceDimension >, OutputSpaceDimension > SpatialHessianType
typedef Matrix< ScalarType, OutputSpaceDimension, InputSpaceDimension > SpatialJacobianType
using Superclass
using TranslationType
Public Types inherited from itk::AdvancedTransform< double, NInputDimensions, NOutputDimensions >
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

void GetJacobian (const InputPointType &, JacobianType &, NonZeroJacobianIndicesType &) const override
const ParametersType & GetParameters () const override
 ITK_DISALLOW_COPY_AND_MOVE (AdvancedVersorRigid3DTransform)
 itkOverrideGetNameOfClassMacro (AdvancedVersorRigid3DTransform)
 itkStaticConstMacro (InputSpaceDimension, unsigned int, 3)
 itkStaticConstMacro (OutputSpaceDimension, unsigned int, 3)
 itkStaticConstMacro (ParametersDimension, unsigned int, 6)
 itkStaticConstMacro (SpaceDimension, unsigned int, 3)
void SetParameters (const ParametersType &parameters) override
Public Member Functions inherited from itk::AdvancedVersorTransform< double >
void GetJacobian (const InputPointType &, JacobianType &, NonZeroJacobianIndicesType &) const override
const ParametersType & GetParameters () const override
virtual const VersorTypeGetVersor ()
 itkOverrideGetNameOfClassMacro (AdvancedVersorTransform)
 itkStaticConstMacro (SpaceDimension, unsigned int, 3)
void SetIdentity () override
void SetParameters (const ParametersType &parameters) override
void SetRotation (const VersorType &versor)
Public Member Functions inherited from itk::AdvancedRigid3DTransform< double >
 ITK_DISALLOW_COPY_AND_MOVE (AdvancedRigid3DTransform)
 itkOverrideGetNameOfClassMacro (AdvancedRigid3DTransform)
 itkStaticConstMacro (SpaceDimension, unsigned int, 3)
bool MatrixIsOrthogonal (const MatrixType &matrix, double tol=1e-10)
void SetMatrix (const MatrixType &matrix) override
void SetParameters (const ParametersType &parameters) override
Public Member Functions inherited from itk::AdvancedMatrixOffsetTransformBase< double, 3, 3 >
const InputPointType & GetCenter () const
const FixedParametersType & GetFixedParameters () const override
void GetJacobianOfSpatialHessian (const InputPointType &, JacobianOfSpatialHessianType &, NonZeroJacobianIndicesType &) const override
void GetJacobianOfSpatialJacobian (const InputPointType &, JacobianOfSpatialJacobianType &, NonZeroJacobianIndicesType &) const override
const MatrixTypeGetMatrix () const
const ParametersType & GetParameters () const override
void GetSpatialHessian (const InputPointType &, SpatialHessianType &) const override
void GetSpatialJacobian (const InputPointType &, SpatialJacobianType &) const override
TransformCategoryEnum GetTransformCategory () const override
const OutputVectorType & GetTranslation () const
bool IsLinear () const override
 itkOverrideGetNameOfClassMacro (AdvancedMatrixOffsetTransformBase)
 itkStaticConstMacro (InputSpaceDimension, unsigned int, NInputDimensions)
void SetCenter (const InputPointType &center)
void SetFixedParameters (const FixedParametersType &) override
void SetParameters (const ParametersType &parameters) override
void SetTranslation (const OutputVectorType &translation)
OutputCovariantVectorType TransformCovariantVector (const InputCovariantVectorType &vector) const override
OutputPointType TransformPoint (const InputPointType &point) const override
OutputVectorType TransformVector (const InputVectorType &vector) const override
Public Member Functions inherited from itk::AdvancedTransform< double, NInputDimensions, NOutputDimensions >
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)
 itkOverrideGetNameOfClassMacro (AdvancedTransform)
 itkStaticConstMacro (InputSpaceDimension, unsigned int, NInputDimensions)

Static Public Member Functions

static Pointer New ()
Static Public Member Functions inherited from itk::AdvancedVersorTransform< double >
static Pointer New ()
Static Public Member Functions inherited from itk::AdvancedRigid3DTransform< double >
static Pointer New ()
Static Public Member Functions inherited from itk::AdvancedMatrixOffsetTransformBase< double, 3, 3 >
static Pointer New ()

Protected Member Functions

 AdvancedVersorRigid3DTransform ()
 AdvancedVersorRigid3DTransform (const MatrixType &matrix, const OutputVectorType &offset)
 AdvancedVersorRigid3DTransform (unsigned int paramDim)
void PrintSelf (std::ostream &os, Indent indent) const override
 ~AdvancedVersorRigid3DTransform () override=default
Protected Member Functions inherited from itk::AdvancedVersorTransform< double >
 AdvancedVersorTransform (const MatrixType &matrix, const OutputVectorType &offset)
void ComputeMatrix () override
void ComputeMatrixParameters () override
void PrintSelf (std::ostream &os, Indent indent) const override
void SetVarVersor (const VersorType &newVersor)
 ~AdvancedVersorTransform () override=default
Protected Member Functions inherited from itk::AdvancedRigid3DTransform< double >
 AdvancedRigid3DTransform (unsigned int paramDim)
void PrintSelf (std::ostream &s, Indent indent) const override
 ~AdvancedRigid3DTransform () override=default
Protected Member Functions inherited from itk::AdvancedMatrixOffsetTransformBase< double, 3, 3 >
 AdvancedMatrixOffsetTransformBase (const unsigned int paramDims=ParametersDimension)
virtual void ComputeOffset ()
void ComputeTranslation ()
const OutputVectorType & GetOffset () const
void PrintSelf (std::ostream &s, Indent indent) const override
void SetVarMatrix (const MatrixType &matrix)
void SetVarTranslation (const OutputVectorType &translation)
 ~AdvancedMatrixOffsetTransformBase () override=default
Protected Member Functions inherited from itk::AdvancedTransform< double, NInputDimensions, NOutputDimensions >
 AdvancedTransform ()=default
 ~AdvancedTransform () override=default

Additional Inherited Members

Protected Attributes inherited from itk::AdvancedMatrixOffsetTransformBase< double, 3, 3 >
JacobianOfSpatialHessianType m_JacobianOfSpatialHessian
JacobianOfSpatialJacobianType m_JacobianOfSpatialJacobian
NonZeroJacobianIndicesType m_NonZeroJacobianIndices
SpatialHessianType m_SpatialHessian
Protected Attributes inherited from itk::AdvancedTransform< double, NInputDimensions, NOutputDimensions >
bool m_HasNonZeroJacobianOfSpatialHessian
bool m_HasNonZeroSpatialHessian

Member Typedef Documentation

◆ AngleType

template<typename TScalarType = double>
using itk::AdvancedVersorTransform< TScalarType >::AngleType

Definition at line 119 of file itkAdvancedVersorTransform.h.

◆ AxisType

template<typename TScalarType = double>
using itk::AdvancedVersorTransform< TScalarType >::AxisType

Definition at line 118 of file itkAdvancedVersorTransform.h.

◆ ConstPointer

template<typename TScalarType = double>
using itk::AdvancedVersorRigid3DTransform< TScalarType >::ConstPointer = SmartPointer<const Self>

Definition at line 73 of file itkAdvancedVersorRigid3DTransform.h.

◆ Pointer

template<typename TScalarType = double>
using itk::AdvancedVersorRigid3DTransform< TScalarType >::Pointer = SmartPointer<Self>

Definition at line 72 of file itkAdvancedVersorRigid3DTransform.h.

◆ Self

Standard class typedefs.

Definition at line 70 of file itkAdvancedVersorRigid3DTransform.h.

◆ Superclass

Definition at line 71 of file itkAdvancedVersorRigid3DTransform.h.

◆ VersorType

template<typename TScalarType = double>
using itk::AdvancedVersorTransform< TScalarType >::VersorType

Versor Type

Definition at line 117 of file itkAdvancedVersorTransform.h.

Constructor & Destructor Documentation

◆ AdvancedVersorRigid3DTransform() [1/3]

template<typename TScalarType = double>
itk::AdvancedVersorRigid3DTransform< TScalarType >::AdvancedVersorRigid3DTransform ( unsigned int paramDim)
explicitprotected

◆ AdvancedVersorRigid3DTransform() [2/3]

template<typename TScalarType = double>
itk::AdvancedVersorRigid3DTransform< TScalarType >::AdvancedVersorRigid3DTransform ( const MatrixType & matrix,
const OutputVectorType & offset )
protected

◆ AdvancedVersorRigid3DTransform() [3/3]

template<typename TScalarType = double>
itk::AdvancedVersorRigid3DTransform< TScalarType >::AdvancedVersorRigid3DTransform ( )
protected

◆ ~AdvancedVersorRigid3DTransform()

template<typename TScalarType = double>
itk::AdvancedVersorRigid3DTransform< TScalarType >::~AdvancedVersorRigid3DTransform ( )
overrideprotecteddefault

Member Function Documentation

◆ GetJacobian()

template<typename TScalarType = double>
void itk::AdvancedVersorRigid3DTransform< TScalarType >::GetJacobian ( const InputPointType & ,
JacobianType & ,
NonZeroJacobianIndicesType &  ) const
overridevirtual

This method computes the Jacobian matrix of the transformation.

Reimplemented from itk::AdvancedMatrixOffsetTransformBase< double, 3, 3 >.

◆ GetParameters()

template<typename TScalarType = double>
const ParametersType & itk::AdvancedVersorRigid3DTransform< TScalarType >::GetParameters ( ) const
override

◆ ITK_DISALLOW_COPY_AND_MOVE()

template<typename TScalarType = double>
itk::AdvancedVersorRigid3DTransform< TScalarType >::ITK_DISALLOW_COPY_AND_MOVE ( AdvancedVersorRigid3DTransform< TScalarType > )

◆ itkOverrideGetNameOfClassMacro()

template<typename TScalarType = double>
itk::AdvancedVersorRigid3DTransform< TScalarType >::itkOverrideGetNameOfClassMacro ( AdvancedVersorRigid3DTransform< TScalarType > )

Run-time type information (and related methods).

◆ itkStaticConstMacro() [1/4]

template<typename TScalarType = double>
itk::AdvancedVersorRigid3DTransform< TScalarType >::itkStaticConstMacro ( InputSpaceDimension ,
unsigned int ,
3  )

◆ itkStaticConstMacro() [2/4]

template<typename TScalarType = double>
itk::AdvancedVersorRigid3DTransform< TScalarType >::itkStaticConstMacro ( OutputSpaceDimension ,
unsigned int ,
3  )

◆ itkStaticConstMacro() [3/4]

template<typename TScalarType = double>
itk::AdvancedVersorRigid3DTransform< TScalarType >::itkStaticConstMacro ( ParametersDimension ,
unsigned int ,
6  )

◆ itkStaticConstMacro() [4/4]

template<typename TScalarType = double>
itk::AdvancedVersorRigid3DTransform< TScalarType >::itkStaticConstMacro ( SpaceDimension ,
unsigned int ,
3  )

Dimension of parameters.

◆ New()

template<typename TScalarType = double>
Pointer itk::AdvancedVersorRigid3DTransform< TScalarType >::New ( )
static

New macro for creation of through a Smart Pointer.

◆ PrintSelf()

template<typename TScalarType = double>
void itk::AdvancedVersorTransform< TScalarType >::PrintSelf ( std::ostream & os,
Indent indent ) const
overrideprotected

Print contents of a AdvancedVersorTransform

◆ SetParameters()

template<typename TScalarType = double>
void itk::AdvancedVersorRigid3DTransform< TScalarType >::SetParameters ( const ParametersType & parameters)
override

Set the transformation from a container of parameters This is typically used by optimizers. There are 6 parameters. The first three represent the versor, the last three represent the translation.



Generated on 1774142652 for elastix by doxygen 1.15.0 elastix logo