go home Home | Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | File List | Namespace Members | Data Fields | Globals | Related Pages
itk::GPUAdvancedBSplineDeformableTransform< TScalarType, NDimensions, VSplineOrder, TParentTransform > Class Template Reference

#include <itkGPUAdvancedBSplineDeformableTransform.h>

Detailed Description

template<typename TScalarType = float, unsigned int NDimensions = 3, unsigned int VSplineOrder = 3, typename TParentTransform = AdvancedBSplineDeformableTransform<TScalarType, NDimensions, VSplineOrder>>
class itk::GPUAdvancedBSplineDeformableTransform< TScalarType, NDimensions, VSplineOrder, TParentTransform >

GPU version of AdvancedBSplineDeformableTransform.

Author
Denis P. Shamonin and Marius Staring. Division of Image Processing, Department of Radiology, Leiden, The Netherlands
Note
This work was funded by the Netherlands Organisation for Scientific Research (NWO NRG-2010.02 and NWO 639.021.124).

Definition at line 41 of file itkGPUAdvancedBSplineDeformableTransform.h.

Inheritance diagram for itk::GPUAdvancedBSplineDeformableTransform< TScalarType, NDimensions, VSplineOrder, TParentTransform >:

Public Types

using ConstPointer = SmartPointer<const Self>
 
using CPUSuperclass = TParentTransform
 
using GPUSuperclass = GPUBSplineBaseTransform<TScalarType, NDimensions>
 
using ImagePointer = typename CPUSuperclass::ImagePointer
 
using ParametersType = typename CPUSuperclass::ParametersType
 
using Pointer = SmartPointer<Self>
 
using Self = GPUAdvancedBSplineDeformableTransform
 
- Public Types inherited from itk::AdvancedBSplineDeformableTransform< TScalarType, NDimensions, VSplineOrder >
using ConstPointer = SmartPointer<const Self>
 
using ContinuousIndexType = typename WeightsFunctionType::ContinuousIndexType
 
using DerivativeWeightsFunctionPointer = typename DerivativeWeightsFunctionType::Pointer
 
using DerivativeWeightsFunctionType
 
using DirectionType
 
using GridOffsetType
 
using ImagePointer
 
using ImageType
 
using IndexType
 
using OriginType
 
using ParameterIndexArrayType
 
using Pointer = SmartPointer<Self>
 
using RegionType
 
using Self = AdvancedBSplineDeformableTransform
 
using SizeType
 
using SODerivativeWeightsFunctionPointer = typename SODerivativeWeightsFunctionType::Pointer
 
using SODerivativeWeightsFunctionType
 
using SpacingType
 
using Superclass = AdvancedBSplineDeformableTransformBase<TScalarType, NDimensions>
 
using WeightsFunctionPointer = typename WeightsFunctionType::Pointer
 
using WeightsFunctionType = BSplineInterpolationWeightFunction2<ScalarType, Self::SpaceDimension, VSplineOrder>
 
using WeightsType = typename WeightsFunctionType::WeightsType
 
- Public Types inherited from itk::AdvancedBSplineDeformableTransformBase< double, 3 >
using ConstPointer
 
using ContinuousIndexType
 
using DirectionType
 
using GridOffsetType
 
using ImagePointer
 
using ImageType
 
using IndexType
 
using OriginType
 
using ParameterIndexArrayType
 
using Pointer
 
using RegionType
 
using Self
 
using SizeType
 
using SpacingType
 
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 Types inherited from itk::GPUBSplineBaseTransform< float, 3 >
using GPUCoefficientImageArray
 
using GPUCoefficientImageBaseArray
 
using GPUCoefficientImagePointer
 
using GPUCoefficientImageType
 
using GPUDataManagerPointer
 
using Self
 
- Public Types inherited from itk::GPUTransformBase
using Self = GPUTransformBase
 

Public Member Functions

virtual const char * GetClassName () const
 
 itkStaticConstMacro (SpaceDimension, unsigned int, NDimensions)
 
void SetCoefficientImages (ImagePointer images[]) override
 
void SetParameters (const ParametersType &parameters) override
 
- Public Member Functions inherited from itk::AdvancedBSplineDeformableTransform< TScalarType, NDimensions, VSplineOrder >
void EvaluateJacobianWithImageGradientProduct (const InputPointType &inputPoint, const MovingImageGradientType &movingImageGradient, DerivativeType &imageJacobian, NonZeroJacobianIndicesType &nonZeroJacobianIndices) const override
 
void GetJacobian (const InputPointType &inputPoint, JacobianType &j, NonZeroJacobianIndicesType &nzji) const override
 
void GetJacobianOfSpatialHessian (const InputPointType &inputPoint, JacobianOfSpatialHessianType &jsh, NonZeroJacobianIndicesType &nonZeroJacobianIndices) const override
 
void GetJacobianOfSpatialHessian (const InputPointType &inputPoint, SpatialHessianType &sh, JacobianOfSpatialHessianType &jsh, NonZeroJacobianIndicesType &nonZeroJacobianIndices) const override
 
void GetJacobianOfSpatialJacobian (const InputPointType &inputPoint, JacobianOfSpatialJacobianType &jsj, NonZeroJacobianIndicesType &nonZeroJacobianIndices) const override
 
void GetJacobianOfSpatialJacobian (const InputPointType &inputPoint, SpatialJacobianType &sj, JacobianOfSpatialJacobianType &jsj, NonZeroJacobianIndicesType &nonZeroJacobianIndices) const override
 
unsigned int GetNumberOfAffectedWeights () const override
 
NumberOfParametersType GetNumberOfNonZeroJacobianIndices () const override
 
void GetSpatialHessian (const InputPointType &inputPoint, SpatialHessianType &sh) const override
 
void GetSpatialJacobian (const InputPointType &inputPoint, SpatialJacobianType &sj) const override
 
 ITK_DISALLOW_COPY_AND_MOVE (AdvancedBSplineDeformableTransform)
 
 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::AdvancedBSplineDeformableTransformBase< double, 3 >
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
 
OutputVnlVectorType TransformVector (const InputVnlVectorType &) 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)
 
 itkStaticConstMacro (OutputSpaceDimension, unsigned int, NOutputDimensions)
 
- Public Member Functions inherited from itk::GPUBSplineBaseTransform< float, 3 >
const GPUCoefficientImageArray GetGPUCoefficientImages () const
 
const GPUCoefficientImageBaseArray GetGPUCoefficientImagesBases () const
 
virtual unsigned int GetSplineOrder () const
 
bool IsBSplineTransform () const override
 
 itkStaticConstMacro (SpaceDimension, unsigned int, NDimensions)
 
- Public Member Functions inherited from itk::GPUTransformBase
virtual const char * GetNameOfClass () const
 
virtual GPUDataManager::Pointer GetParametersDataManager () const
 
virtual GPUDataManager::Pointer GetParametersDataManager (const std::vcl_size_t index) const
 
virtual bool IsIdentityTransform () const
 
virtual bool IsMatrixOffsetTransform () const
 
virtual bool IsTranslationTransform () const
 

Static Public Member Functions

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

Protected Member Functions

void CopyCoefficientImagesToGPU ()
 
 GPUAdvancedBSplineDeformableTransform ()
 
void PrintSelf (std::ostream &os, Indent indent) const override
 
 ~GPUAdvancedBSplineDeformableTransform () override=default
 
- Protected Member Functions inherited from itk::AdvancedBSplineDeformableTransform< TScalarType, NDimensions, VSplineOrder >
 AdvancedBSplineDeformableTransform ()
 
void ComputeNonZeroJacobianIndices (NonZeroJacobianIndicesType &nonZeroJacobianIndices, const RegionType &supportRegion) const override
 
 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, 3 >
 AdvancedBSplineDeformableTransformBase ()=delete
 
 AdvancedBSplineDeformableTransformBase (const unsigned splineOrder)
 
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
 
- Protected Member Functions inherited from itk::GPUBSplineBaseTransform< float, 3 >
bool GetSourceCode (std::string &source) const override
 
 GPUBSplineBaseTransform ()
 
virtual void SetSplineOrder (const unsigned int splineOrder)
 
 ~GPUBSplineBaseTransform () override=default
 
- Protected Member Functions inherited from itk::GPUTransformBase
 GPUTransformBase ()
 
virtual ~GPUTransformBase ()=default
 

Private Member Functions

 GPUAdvancedBSplineDeformableTransform (const Self &other)=delete
 
const Selfoperator= (const Self &)=delete
 

Additional Inherited Members

- Static Public Attributes inherited from itk::AdvancedBSplineDeformableTransform< TScalarType, NDimensions, VSplineOrder >
static constexpr unsigned NumberOfWeights = WeightsFunctionType::NumberOfWeights
 
- Static Public Attributes inherited from itk::AdvancedBSplineDeformableTransformBase< double, 3 >
static constexpr unsigned int NumberOfFixedParameters
 
- Protected Types inherited from itk::AdvancedBSplineDeformableTransform< TScalarType, NDimensions, VSplineOrder >
using JacobianImageType
 
using JacobianPixelType
 
- Protected Types inherited from itk::AdvancedBSplineDeformableTransformBase< double, 3 >
using JacobianImageType
 
using JacobianPixelType
 
- Protected Attributes inherited from itk::AdvancedBSplineDeformableTransform< TScalarType, NDimensions, VSplineOrder >
std::vector< DerivativeWeightsFunctionPointerm_DerivativeWeightsFunctions {}
 
std::vector< std::vector< SODerivativeWeightsFunctionPointer > > m_SODerivativeWeightsFunctions {}
 
WeightsFunctionPointer m_WeightsFunction {}
 
- Protected Attributes inherited from itk::AdvancedBSplineDeformableTransformBase< double, 3 >
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
 
- Protected Attributes inherited from itk::GPUBSplineBaseTransform< float, 3 >
GPUCoefficientImageArray m_GPUBSplineTransformCoefficientImages
 
GPUCoefficientImageBaseArray m_GPUBSplineTransformCoefficientImagesBase
 
- Protected Attributes inherited from itk::GPUTransformBase
GPUDataManager::Pointer m_ParametersDataManager {}
 

Member Typedef Documentation

◆ ConstPointer

template<typename TScalarType = float, unsigned int NDimensions = 3, unsigned int VSplineOrder = 3, typename TParentTransform = AdvancedBSplineDeformableTransform<TScalarType, NDimensions, VSplineOrder>>
using itk::GPUAdvancedBSplineDeformableTransform< TScalarType, NDimensions, VSplineOrder, TParentTransform >::ConstPointer = SmartPointer<const Self>

Definition at line 51 of file itkGPUAdvancedBSplineDeformableTransform.h.

◆ CPUSuperclass

template<typename TScalarType = float, unsigned int NDimensions = 3, unsigned int VSplineOrder = 3, typename TParentTransform = AdvancedBSplineDeformableTransform<TScalarType, NDimensions, VSplineOrder>>
using itk::GPUAdvancedBSplineDeformableTransform< TScalarType, NDimensions, VSplineOrder, TParentTransform >::CPUSuperclass = TParentTransform

Definition at line 48 of file itkGPUAdvancedBSplineDeformableTransform.h.

◆ GPUSuperclass

template<typename TScalarType = float, unsigned int NDimensions = 3, unsigned int VSplineOrder = 3, typename TParentTransform = AdvancedBSplineDeformableTransform<TScalarType, NDimensions, VSplineOrder>>
using itk::GPUAdvancedBSplineDeformableTransform< TScalarType, NDimensions, VSplineOrder, TParentTransform >::GPUSuperclass = GPUBSplineBaseTransform<TScalarType, NDimensions>

Definition at line 49 of file itkGPUAdvancedBSplineDeformableTransform.h.

◆ ImagePointer

template<typename TScalarType = float, unsigned int NDimensions = 3, unsigned int VSplineOrder = 3, typename TParentTransform = AdvancedBSplineDeformableTransform<TScalarType, NDimensions, VSplineOrder>>
using itk::GPUAdvancedBSplineDeformableTransform< TScalarType, NDimensions, VSplineOrder, TParentTransform >::ImagePointer = typename CPUSuperclass::ImagePointer

Definition at line 53 of file itkGPUAdvancedBSplineDeformableTransform.h.

◆ ParametersType

template<typename TScalarType = float, unsigned int NDimensions = 3, unsigned int VSplineOrder = 3, typename TParentTransform = AdvancedBSplineDeformableTransform<TScalarType, NDimensions, VSplineOrder>>
using itk::GPUAdvancedBSplineDeformableTransform< TScalarType, NDimensions, VSplineOrder, TParentTransform >::ParametersType = typename CPUSuperclass::ParametersType

Definition at line 52 of file itkGPUAdvancedBSplineDeformableTransform.h.

◆ Pointer

template<typename TScalarType = float, unsigned int NDimensions = 3, unsigned int VSplineOrder = 3, typename TParentTransform = AdvancedBSplineDeformableTransform<TScalarType, NDimensions, VSplineOrder>>
using itk::GPUAdvancedBSplineDeformableTransform< TScalarType, NDimensions, VSplineOrder, TParentTransform >::Pointer = SmartPointer<Self>

Definition at line 50 of file itkGPUAdvancedBSplineDeformableTransform.h.

◆ Self

template<typename TScalarType = float, unsigned int NDimensions = 3, unsigned int VSplineOrder = 3, typename TParentTransform = AdvancedBSplineDeformableTransform<TScalarType, NDimensions, VSplineOrder>>
using itk::GPUAdvancedBSplineDeformableTransform< TScalarType, NDimensions, VSplineOrder, TParentTransform >::Self = GPUAdvancedBSplineDeformableTransform

Standard class typedefs.

Definition at line 47 of file itkGPUAdvancedBSplineDeformableTransform.h.

Constructor & Destructor Documentation

◆ GPUAdvancedBSplineDeformableTransform() [1/2]

template<typename TScalarType = float, unsigned int NDimensions = 3, unsigned int VSplineOrder = 3, typename TParentTransform = AdvancedBSplineDeformableTransform<TScalarType, NDimensions, VSplineOrder>>
itk::GPUAdvancedBSplineDeformableTransform< TScalarType, NDimensions, VSplineOrder, TParentTransform >::GPUAdvancedBSplineDeformableTransform ( )
protected

◆ ~GPUAdvancedBSplineDeformableTransform()

template<typename TScalarType = float, unsigned int NDimensions = 3, unsigned int VSplineOrder = 3, typename TParentTransform = AdvancedBSplineDeformableTransform<TScalarType, NDimensions, VSplineOrder>>
itk::GPUAdvancedBSplineDeformableTransform< TScalarType, NDimensions, VSplineOrder, TParentTransform >::~GPUAdvancedBSplineDeformableTransform ( )
overrideprotecteddefault

◆ GPUAdvancedBSplineDeformableTransform() [2/2]

template<typename TScalarType = float, unsigned int NDimensions = 3, unsigned int VSplineOrder = 3, typename TParentTransform = AdvancedBSplineDeformableTransform<TScalarType, NDimensions, VSplineOrder>>
itk::GPUAdvancedBSplineDeformableTransform< TScalarType, NDimensions, VSplineOrder, TParentTransform >::GPUAdvancedBSplineDeformableTransform ( const Self & other)
privatedelete

Member Function Documentation

◆ CopyCoefficientImagesToGPU()

template<typename TScalarType = float, unsigned int NDimensions = 3, unsigned int VSplineOrder = 3, typename TParentTransform = AdvancedBSplineDeformableTransform<TScalarType, NDimensions, VSplineOrder>>
void itk::GPUAdvancedBSplineDeformableTransform< TScalarType, NDimensions, VSplineOrder, TParentTransform >::CopyCoefficientImagesToGPU ( )
protected

◆ GetClassName()

template<typename TScalarType = float, unsigned int NDimensions = 3, unsigned int VSplineOrder = 3, typename TParentTransform = AdvancedBSplineDeformableTransform<TScalarType, NDimensions, VSplineOrder>>
virtual const char * itk::GPUAdvancedBSplineDeformableTransform< TScalarType, NDimensions, VSplineOrder, TParentTransform >::GetClassName ( ) const
virtual

Run-time type information (and related methods).

Reimplemented from itk::AdvancedBSplineDeformableTransform< TScalarType, NDimensions, VSplineOrder >.

◆ itkStaticConstMacro()

template<typename TScalarType = float, unsigned int NDimensions = 3, unsigned int VSplineOrder = 3, typename TParentTransform = AdvancedBSplineDeformableTransform<TScalarType, NDimensions, VSplineOrder>>
itk::GPUAdvancedBSplineDeformableTransform< TScalarType, NDimensions, VSplineOrder, TParentTransform >::itkStaticConstMacro ( SpaceDimension ,
unsigned int ,
NDimensions  )

Dimension of the domain space.

◆ New()

template<typename TScalarType = float, unsigned int NDimensions = 3, unsigned int VSplineOrder = 3, typename TParentTransform = AdvancedBSplineDeformableTransform<TScalarType, NDimensions, VSplineOrder>>
static Pointer itk::GPUAdvancedBSplineDeformableTransform< TScalarType, NDimensions, VSplineOrder, TParentTransform >::New ( )
static

Method for creation through the object factory.

◆ operator=()

template<typename TScalarType = float, unsigned int NDimensions = 3, unsigned int VSplineOrder = 3, typename TParentTransform = AdvancedBSplineDeformableTransform<TScalarType, NDimensions, VSplineOrder>>
const Self & itk::GPUAdvancedBSplineDeformableTransform< TScalarType, NDimensions, VSplineOrder, TParentTransform >::operator= ( const Self & )
privatedelete

◆ PrintSelf()

template<typename TScalarType = float, unsigned int NDimensions = 3, unsigned int VSplineOrder = 3, typename TParentTransform = AdvancedBSplineDeformableTransform<TScalarType, NDimensions, VSplineOrder>>
void itk::GPUAdvancedBSplineDeformableTransform< TScalarType, NDimensions, VSplineOrder, TParentTransform >::PrintSelf ( std::ostream & os,
Indent indent ) const
overrideprotected

◆ SetCoefficientImages()

template<typename TScalarType = float, unsigned int NDimensions = 3, unsigned int VSplineOrder = 3, typename TParentTransform = AdvancedBSplineDeformableTransform<TScalarType, NDimensions, VSplineOrder>>
void itk::GPUAdvancedBSplineDeformableTransform< TScalarType, NDimensions, VSplineOrder, TParentTransform >::SetCoefficientImages ( ImagePointer images[])
override

Set the array of coefficient images.

◆ SetParameters()

template<typename TScalarType = float, unsigned int NDimensions = 3, unsigned int VSplineOrder = 3, typename TParentTransform = AdvancedBSplineDeformableTransform<TScalarType, NDimensions, VSplineOrder>>
void itk::GPUAdvancedBSplineDeformableTransform< TScalarType, NDimensions, VSplineOrder, TParentTransform >::SetParameters ( const ParametersType & parameters)
override

This method sets the parameters of the transform.



Generated on 2024-07-17 for elastix by doxygen 1.11.0 (9b424b03c9833626cd435af22a444888fbbb192d) elastix logo