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
itk::CyclicBSplineDeformableTransform< TScalarType, NDimensions, VSplineOrder > Class Template Reference

#include <itkCyclicBSplineDeformableTransform.h>

Detailed Description

template<class TScalarType = double, unsigned int NDimensions = 3, unsigned int VSplineOrder = 3>
class itk::CyclicBSplineDeformableTransform< TScalarType, NDimensions, VSplineOrder >

Deformable transform using a B-spline representation in which the B-spline grid is formulated in a cyclic way.

Definition at line 44 of file itkCyclicBSplineDeformableTransform.h.

Inheritance diagram for itk::CyclicBSplineDeformableTransform< TScalarType, NDimensions, VSplineOrder >:

Public Types

using ConstPointer = SmartPointer<const Self>
using DirectionType = typename ImageType::DirectionType
using GridOffsetType = typename RegionType::IndexType
using ImagePointer = typename ImageType::Pointer
using ImageType = Image<PixelType, Self::SpaceDimension>
using IndexType = typename RegionType::IndexType
typedef Image< JacobianPixelType, Self::SpaceDimension > JacobianImageType
typedef typename JacobianType::ValueType JacobianPixelType
using OriginType = typename ImageType::PointType
typedef Array< unsigned long > ParameterIndexArrayType
using Pointer = SmartPointer<Self>
using RedContinuousIndexType = typename RedWeightsFunctionType::ContinuousIndexType
using RedWeightsFunctionType
typedef ImageRegion< Self::SpaceDimension > RegionType
using Self = CyclicBSplineDeformableTransform
using SizeType = typename RegionType::SizeType
using SpacingType = typename ImageType::SpacingType
using Superclass = AdvancedBSplineDeformableTransform<TScalarType, NDimensions, VSplineOrder>
Public Types inherited from itk::AdvancedBSplineDeformableTransform< double, 3, 3 >
using ConstPointer
using ContinuousIndexType
using DerivativeWeightsFunctionPointer
using DerivativeWeightsFunctionType
typedef typename ImageType::DirectionType DirectionType
typedef IndexType GridOffsetType
typedef typename ImageType::Pointer ImagePointer
typedef Image< PixelType, Self::SpaceDimension > ImageType
typedef typename RegionType::IndexType IndexType
typedef typename ImageType::PointType OriginType
typedef Array< unsigned long > ParameterIndexArrayType
using Pointer
typedef ImageRegion< Self::SpaceDimension > RegionType
using Self
typedef typename RegionType::SizeType SizeType
using SODerivativeWeightsFunctionPointer
using SODerivativeWeightsFunctionType
typedef typename ImageType::SpacingType SpacingType
using Superclass
using WeightsFunctionPointer
using WeightsFunctionType
using WeightsType
Public Types inherited from itk::AdvancedBSplineDeformableTransformBase< double, NDimensions >
using ConstPointer
using ContinuousIndexType
using DirectionType
using GridOffsetType
using ImagePointer
using ImageType
using IndexType
typedef typename SpatialJacobianType::InternalMatrixType InternalMatrixType
typedef std::vector< SpatialHessianTypeJacobianOfSpatialHessianType
typedef std::vector< SpatialJacobianTypeJacobianOfSpatialJacobianType
typedef OutputCovariantVectorType MovingImageGradientType
typedef typename MovingImageGradientType::ValueType MovingImageGradientValueType
typedef std::vector< unsigned long > NonZeroJacobianIndicesType
using OriginType
using ParameterIndexArrayType
using Pointer
using RegionType
using Self
using SizeType
using SpacingType
typedef FixedArray< Matrix< ScalarType, InputSpaceDimension, InputSpaceDimension >, OutputSpaceDimension > SpatialHessianType
typedef Matrix< ScalarType, OutputSpaceDimension, InputSpaceDimension > SpatialJacobianType
using Superclass
Public Types inherited from itk::AdvancedTransform< double, 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
virtual void GetJacobian (const InputPointType &inputPoint, WeightsType &weights, ParameterIndexArrayType &indices) const
void GetSpatialJacobian (const InputPointType &inputPoint, SpatialJacobianType &sj) const override
 ITK_DISALLOW_COPY_AND_MOVE (CyclicBSplineDeformableTransform)
 itkStaticConstMacro (SpaceDimension, unsigned int, NDimensions)
 itkStaticConstMacro (SplineOrder, unsigned int, VSplineOrder)
void SetGridRegion (const RegionType &region) override
OutputPointType TransformPoint (const InputPointType &point) const override
Public Member Functions inherited from itk::AdvancedBSplineDeformableTransform< double, 3, 3 >
void EvaluateJacobianWithImageGradientProduct (const InputPointType &inputPoint, const MovingImageGradientType &movingImageGradient, DerivativeType &imageJacobian, NonZeroJacobianIndicesType &nonZeroJacobianIndices) const override
void GetJacobianOfSpatialHessian (const InputPointType &inputPoint, JacobianOfSpatialHessianType &jsh, NonZeroJacobianIndicesType &nonZeroJacobianIndices) const override
void GetJacobianOfSpatialJacobian (const InputPointType &inputPoint, JacobianOfSpatialJacobianType &jsj, NonZeroJacobianIndicesType &nonZeroJacobianIndices) const override
unsigned int GetNumberOfAffectedWeights () const override
NumberOfParametersType GetNumberOfNonZeroJacobianIndices () const override
void GetSpatialHessian (const InputPointType &inputPoint, SpatialHessianType &sh) const override
 ITK_DISALLOW_COPY_AND_MOVE (AdvancedBSplineDeformableTransform)
 itkStaticConstMacro (SpaceDimension, unsigned int, NDimensions)
OutputPointType TransformPoint (const InputPointType &point) const override
Public Member Functions inherited from itk::AdvancedBSplineDeformableTransformBase< double, NDimensions >
virtual const ImagePointerGetCoefficientImages () const
const FixedParametersType & GetFixedParameters () const override
virtual DirectionType GetGridDirection () const
virtual OriginType GetGridOrigin () const
virtual RegionType GetGridRegion () const
virtual SpacingType GetGridSpacing () const
NumberOfParametersType GetNumberOfParameters () const override
virtual NumberOfParametersType GetNumberOfParametersPerDimension () const
const ParametersType & GetParameters () const override
unsigned GetSplineOrder () const
TransformCategoryEnum GetTransformCategory () const override
virtual const RegionTypeGetValidRegion ()
bool IsLinear () const override
 ITK_DISALLOW_COPY_AND_MOVE (AdvancedBSplineDeformableTransformBase)
 itkStaticConstMacro (SpaceDimension, unsigned int, NDimensions)
virtual void SetCoefficientImages (ImagePointer images[])
void SetFixedParameters (const FixedParametersType &parameters) override
virtual void SetGridDirection (const DirectionType &direction)
virtual void SetGridOrigin (const OriginType &origin)
virtual void SetGridSpacing (const SpacingType &spacing)
void SetIdentity ()
void SetParameters (const ParametersType &parameters) override
void SetParametersByValue (const ParametersType &parameters) override
OutputCovariantVectorType TransformCovariantVector (const InputCovariantVectorType &) const override
OutputVectorType TransformVector (const InputVectorType &) const override
Public Member Functions inherited from itk::AdvancedTransform< double, NDimensions, NDimensions >
void ComputeJacobianWithRespectToParameters (const InputPointType &, JacobianType &) const override
virtual bool GetHasNonZeroJacobianOfSpatialHessian () const
virtual bool GetHasNonZeroSpatialHessian () const
 ITK_DISALLOW_COPY_AND_MOVE (AdvancedTransform)
 itkStaticConstMacro (InputSpaceDimension, unsigned int, NInputDimensions)

Static Public Member Functions

static Pointer New ()
Static Public Member Functions inherited from itk::AdvancedBSplineDeformableTransform< double, 3, 3 >
static Pointer New ()
Static Public Member Functions inherited from itk::AdvancedBSplineDeformableTransformBase< double, NDimensions >
static Pointer Create (const unsigned splineOrder)

Protected Member Functions

void ComputeNonZeroJacobianIndices (NonZeroJacobianIndicesType &nonZeroJacobianIndices, const RegionType &supportRegion) const override
 CyclicBSplineDeformableTransform ()
bool InsideValidRegion (const ContinuousIndexType &index) const override
virtual void SplitRegion (const RegionType &imageRegion, const RegionType &inRegion, RegionType &outRegion1, RegionType &outRegion2) const
 ~CyclicBSplineDeformableTransform () override=default
Protected Member Functions inherited from itk::AdvancedBSplineDeformableTransform< double, 3, 3 >
 AdvancedBSplineDeformableTransform ()
 itkGetModifiableObjectMacro (WeightsFunction, WeightsFunctionType)
void PrintSelf (std::ostream &os, Indent indent) const override
virtual void SetWeightsFunction (WeightsFunctionType *_arg)
void WrapAsImages ()
 ~AdvancedBSplineDeformableTransform () override=default
Protected Member Functions inherited from itk::AdvancedBSplineDeformableTransformBase< double, NDimensions >
 AdvancedBSplineDeformableTransformBase ()=delete
virtual bool InsideValidRegion (const ContinuousIndexType &index) const
void PrintSelf (std::ostream &os, Indent indent) const override
ContinuousIndexType TransformPointToContinuousGridIndex (const InputPointType &point) const
void UpdateGridOffsetTable ()
void UpdatePointIndexConversions ()
void WrapAsImages ()
 ~AdvancedBSplineDeformableTransformBase () override=default
Protected Member Functions inherited from itk::AdvancedTransform< double, NDimensions, NDimensions >
 AdvancedTransform ()=default
 ~AdvancedTransform () override=default

Private Member Functions

void GetJacobian (const InputPointType &inputPoint, JacobianType &j, NonZeroJacobianIndicesType &nzji) const override

Additional Inherited Members

Static Public Attributes inherited from itk::AdvancedBSplineDeformableTransform< double, 3, 3 >
static constexpr unsigned NumberOfWeights
Static Public Attributes inherited from itk::AdvancedBSplineDeformableTransformBase< double, NDimensions >
static constexpr unsigned int NumberOfFixedParameters
Protected Types inherited from itk::AdvancedBSplineDeformableTransform< double, 3, 3 >
typedef Image< JacobianPixelType, Self::SpaceDimension > JacobianImageType
typedef typename JacobianType::ValueType JacobianPixelType
Protected Types inherited from itk::AdvancedBSplineDeformableTransformBase< double, NDimensions >
using JacobianImageType
using JacobianPixelType
Protected Attributes inherited from itk::AdvancedBSplineDeformableTransform< double, 3, 3 >
std::vector< DerivativeWeightsFunctionPointerm_DerivativeWeightsFunctions
std::vector< std::vector< SODerivativeWeightsFunctionPointer > > m_SODerivativeWeightsFunctions
WeightsFunctionPointer m_WeightsFunction
Protected Attributes inherited from itk::AdvancedBSplineDeformableTransformBase< double, NDimensions >
ImagePointer m_CoefficientImages [NDimensions]
DirectionType m_GridDirection
GridOffsetType m_GridOffsetTable
OriginType m_GridOrigin
RegionType m_GridRegion
SpacingType m_GridSpacing
DirectionType m_IndexToPoint
const ParametersType * m_InputParametersPointer
ParametersType m_InternalParametersBuffer
JacobianImageType::Pointer m_JacobianImage [NDimensions]
IndexType m_LastJacobianIndex
unsigned long m_Offset
DirectionType m_PointToIndexMatrix
SpatialJacobianType m_PointToIndexMatrix2
FixedArray< ScalarType, NDimensions > m_PointToIndexMatrixDiagonal
FixedArray< ScalarType, NDimensions *NDimensions > m_PointToIndexMatrixDiagonalProducts
bool m_PointToIndexMatrixIsDiagonal
DirectionType m_PointToIndexMatrixTransposed
SpatialJacobianType m_PointToIndexMatrixTransposed2
RegionType m_ValidRegion
ContinuousIndexType m_ValidRegionBegin
ContinuousIndexType m_ValidRegionEnd
ImagePointer m_WrappedImage [NDimensions]
Protected Attributes inherited from itk::AdvancedTransform< double, NDimensions, NDimensions >
bool m_HasNonZeroJacobianOfSpatialHessian
bool m_HasNonZeroSpatialHessian

Member Typedef Documentation

◆ ConstPointer

template<class TScalarType = double, unsigned int NDimensions = 3, unsigned int VSplineOrder = 3>
using itk::CyclicBSplineDeformableTransform< TScalarType, NDimensions, VSplineOrder >::ConstPointer = SmartPointer<const Self>

Definition at line 54 of file itkCyclicBSplineDeformableTransform.h.

◆ DirectionType

template<class TScalarType = double, unsigned int NDimensions = 3, unsigned int VSplineOrder = 3>
using itk::CyclicBSplineDeformableTransform< TScalarType, NDimensions, VSplineOrder >::DirectionType = typename ImageType::DirectionType

Definition at line 87 of file itkCyclicBSplineDeformableTransform.h.

◆ GridOffsetType

template<class TScalarType = double, unsigned int NDimensions = 3, unsigned int VSplineOrder = 3>
using itk::CyclicBSplineDeformableTransform< TScalarType, NDimensions, VSplineOrder >::GridOffsetType = typename RegionType::IndexType

Definition at line 89 of file itkCyclicBSplineDeformableTransform.h.

◆ ImagePointer

template<class TScalarType = double, unsigned int NDimensions = 3, unsigned int VSplineOrder = 3>
using itk::CyclicBSplineDeformableTransform< TScalarType, NDimensions, VSplineOrder >::ImagePointer = typename ImageType::Pointer

Definition at line 81 of file itkCyclicBSplineDeformableTransform.h.

◆ ImageType

template<class TScalarType = double, unsigned int NDimensions = 3, unsigned int VSplineOrder = 3>
using itk::CyclicBSplineDeformableTransform< TScalarType, NDimensions, VSplineOrder >::ImageType = Image<PixelType, Self::SpaceDimension>

Definition at line 80 of file itkCyclicBSplineDeformableTransform.h.

◆ IndexType

template<class TScalarType = double, unsigned int NDimensions = 3, unsigned int VSplineOrder = 3>
using itk::CyclicBSplineDeformableTransform< TScalarType, NDimensions, VSplineOrder >::IndexType = typename RegionType::IndexType

Definition at line 84 of file itkCyclicBSplineDeformableTransform.h.

◆ JacobianImageType

template<class TScalarType = double, unsigned int NDimensions = 3, unsigned int VSplineOrder = 3>

◆ JacobianPixelType

template<class TScalarType = double, unsigned int NDimensions = 3, unsigned int VSplineOrder = 3>

Jacobian as SpaceDimension number of images.

◆ OriginType

template<class TScalarType = double, unsigned int NDimensions = 3, unsigned int VSplineOrder = 3>
using itk::CyclicBSplineDeformableTransform< TScalarType, NDimensions, VSplineOrder >::OriginType = typename ImageType::PointType

Definition at line 88 of file itkCyclicBSplineDeformableTransform.h.

◆ ParameterIndexArrayType

template<class TScalarType = double, unsigned int NDimensions = 3, unsigned int VSplineOrder = 3>

Parameter index array type.

◆ Pointer

template<class TScalarType = double, unsigned int NDimensions = 3, unsigned int VSplineOrder = 3>
using itk::CyclicBSplineDeformableTransform< TScalarType, NDimensions, VSplineOrder >::Pointer = SmartPointer<Self>

Definition at line 53 of file itkCyclicBSplineDeformableTransform.h.

◆ RedContinuousIndexType

template<class TScalarType = double, unsigned int NDimensions = 3, unsigned int VSplineOrder = 3>
using itk::CyclicBSplineDeformableTransform< TScalarType, NDimensions, VSplineOrder >::RedContinuousIndexType = typename RedWeightsFunctionType::ContinuousIndexType

Definition at line 101 of file itkCyclicBSplineDeformableTransform.h.

◆ RedWeightsFunctionType

template<class TScalarType = double, unsigned int NDimensions = 3, unsigned int VSplineOrder = 3>
using itk::CyclicBSplineDeformableTransform< TScalarType, NDimensions, VSplineOrder >::RedWeightsFunctionType
Initial value:
BSplineInterpolationWeightFunction2<ScalarType, Self::SpaceDimension - 1, VSplineOrder>
Returns the weights over the support region used for B-spline interpolation/reconstruction.

Definition at line 99 of file itkCyclicBSplineDeformableTransform.h.

◆ RegionType

template<class TScalarType = double, unsigned int NDimensions = 3, unsigned int VSplineOrder = 3>

Typedefs for specifying the extend to the grid.

◆ Self

template<class TScalarType = double, unsigned int NDimensions = 3, unsigned int VSplineOrder = 3>
using itk::CyclicBSplineDeformableTransform< TScalarType, NDimensions, VSplineOrder >::Self = CyclicBSplineDeformableTransform

Standard class typedefs.

Definition at line 51 of file itkCyclicBSplineDeformableTransform.h.

◆ SizeType

template<class TScalarType = double, unsigned int NDimensions = 3, unsigned int VSplineOrder = 3>
using itk::CyclicBSplineDeformableTransform< TScalarType, NDimensions, VSplineOrder >::SizeType = typename RegionType::SizeType

Definition at line 85 of file itkCyclicBSplineDeformableTransform.h.

◆ SpacingType

template<class TScalarType = double, unsigned int NDimensions = 3, unsigned int VSplineOrder = 3>
using itk::CyclicBSplineDeformableTransform< TScalarType, NDimensions, VSplineOrder >::SpacingType = typename ImageType::SpacingType

Definition at line 86 of file itkCyclicBSplineDeformableTransform.h.

◆ Superclass

template<class TScalarType = double, unsigned int NDimensions = 3, unsigned int VSplineOrder = 3>
using itk::CyclicBSplineDeformableTransform< TScalarType, NDimensions, VSplineOrder >::Superclass = AdvancedBSplineDeformableTransform<TScalarType, NDimensions, VSplineOrder>

Definition at line 52 of file itkCyclicBSplineDeformableTransform.h.

Constructor & Destructor Documentation

◆ CyclicBSplineDeformableTransform()

template<class TScalarType = double, unsigned int NDimensions = 3, unsigned int VSplineOrder = 3>
itk::CyclicBSplineDeformableTransform< TScalarType, NDimensions, VSplineOrder >::CyclicBSplineDeformableTransform ( )
protected

◆ ~CyclicBSplineDeformableTransform()

template<class TScalarType = double, unsigned int NDimensions = 3, unsigned int VSplineOrder = 3>
itk::CyclicBSplineDeformableTransform< TScalarType, NDimensions, VSplineOrder >::~CyclicBSplineDeformableTransform ( )
overrideprotecteddefault

Member Function Documentation

◆ ComputeNonZeroJacobianIndices()

template<class TScalarType = double, unsigned int NDimensions = 3, unsigned int VSplineOrder = 3>
void itk::CyclicBSplineDeformableTransform< TScalarType, NDimensions, VSplineOrder >::ComputeNonZeroJacobianIndices ( NonZeroJacobianIndicesType & nonZeroJacobianIndices,
const RegionType & supportRegion ) const
overrideprotectedvirtual

◆ GetClassName()

template<class TScalarType = double, unsigned int NDimensions = 3, unsigned int VSplineOrder = 3>
virtual const char * itk::CyclicBSplineDeformableTransform< TScalarType, NDimensions, VSplineOrder >::GetClassName ( ) const
virtual

Run-time type information (and related methods).

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

◆ GetJacobian() [1/2]

template<class TScalarType = double, unsigned int NDimensions = 3, unsigned int VSplineOrder = 3>
void itk::AdvancedBSplineDeformableTransform< TScalarType, NDimensions, VSplineOrder >::GetJacobian ( const InputPointType & inputPoint,
JacobianType & j,
NonZeroJacobianIndicesType & nzji ) const
overrideprivatevirtual

Compute the Jacobian of the transformation.

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

◆ GetJacobian() [2/2]

template<class TScalarType = double, unsigned int NDimensions = 3, unsigned int VSplineOrder = 3>
virtual void itk::CyclicBSplineDeformableTransform< TScalarType, NDimensions, VSplineOrder >::GetJacobian ( const InputPointType & inputPoint,
WeightsType & weights,
ParameterIndexArrayType & indices ) const
virtual

Compute the Jacobian of the transformation.

◆ GetSpatialJacobian()

template<class TScalarType = double, unsigned int NDimensions = 3, unsigned int VSplineOrder = 3>
void itk::CyclicBSplineDeformableTransform< TScalarType, NDimensions, VSplineOrder >::GetSpatialJacobian ( const InputPointType & inputPoint,
SpatialJacobianType & sj ) const
overridevirtual

Compute the spatial Jacobian of the transformation.

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

◆ InsideValidRegion()

template<class TScalarType = double, unsigned int NDimensions = 3, unsigned int VSplineOrder = 3>
bool itk::CyclicBSplineDeformableTransform< TScalarType, NDimensions, VSplineOrder >::InsideValidRegion ( const ContinuousIndexType & index) const
overrideprotected

Check if a continuous index is inside the valid region.

◆ ITK_DISALLOW_COPY_AND_MOVE()

template<class TScalarType = double, unsigned int NDimensions = 3, unsigned int VSplineOrder = 3>
itk::CyclicBSplineDeformableTransform< TScalarType, NDimensions, VSplineOrder >::ITK_DISALLOW_COPY_AND_MOVE ( CyclicBSplineDeformableTransform< TScalarType, NDimensions, VSplineOrder > )

◆ itkStaticConstMacro() [1/2]

template<class TScalarType = double, unsigned int NDimensions = 3, unsigned int VSplineOrder = 3>
itk::CyclicBSplineDeformableTransform< TScalarType, NDimensions, VSplineOrder >::itkStaticConstMacro ( SpaceDimension ,
unsigned int ,
NDimensions  )

Dimension of the domain space.

◆ itkStaticConstMacro() [2/2]

template<class TScalarType = double, unsigned int NDimensions = 3, unsigned int VSplineOrder = 3>
itk::CyclicBSplineDeformableTransform< TScalarType, NDimensions, VSplineOrder >::itkStaticConstMacro ( SplineOrder ,
unsigned int ,
VSplineOrder  )

The B-spline order.

◆ New()

template<class TScalarType = double, unsigned int NDimensions = 3, unsigned int VSplineOrder = 3>
Pointer itk::CyclicBSplineDeformableTransform< TScalarType, NDimensions, VSplineOrder >::New ( )
static

New macro for creation of through the object factory.

◆ SetGridRegion()

template<class TScalarType = double, unsigned int NDimensions = 3, unsigned int VSplineOrder = 3>
void itk::CyclicBSplineDeformableTransform< TScalarType, NDimensions, VSplineOrder >::SetGridRegion ( const RegionType & region)
overridevirtual

This method specifies the region over which the grid resides.

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

◆ SplitRegion()

template<class TScalarType = double, unsigned int NDimensions = 3, unsigned int VSplineOrder = 3>
virtual void itk::CyclicBSplineDeformableTransform< TScalarType, NDimensions, VSplineOrder >::SplitRegion ( const RegionType & imageRegion,
const RegionType & inRegion,
RegionType & outRegion1,
RegionType & outRegion2 ) const
protectedvirtual

Split an image region into two regions based on the last dimension.

◆ TransformPoint()

template<class TScalarType = double, unsigned int NDimensions = 3, unsigned int VSplineOrder = 3>
OutputPointType itk::CyclicBSplineDeformableTransform< TScalarType, NDimensions, VSplineOrder >::TransformPoint ( const InputPointType & point) const
override

Transform points by a B-spline deformable transformation.



Generated on 1768596610 for elastix by doxygen 1.15.0 elastix logo