go home Home | Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | File List | Namespace Members | Data Fields | Globals | Related Pages
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes
elastix::BSplineStackTransform< TElastix > Class Template Reference

#include <elxBSplineStackTransform.h>

Inheritance diagram for elastix::BSplineStackTransform< TElastix >:
Inheritance graph
[legend]
Collaboration diagram for elastix::BSplineStackTransform< TElastix >:
Collaboration graph
[legend]

Public Types

typedef
BSplineStackTransformType::Pointer 
BSplineStackTransformPointer
typedef itk::StackTransform
< typename elx::TransformBase
< TElastix >::CoordRepType,
itkGetStaticConstMacro(SpaceDimension),
itkGetStaticConstMacro(SpaceDimension) > 
BSplineStackTransformType
typedef
BSplineTransformBaseType::Pointer 
BSplineTransformBasePointer
typedef
itk::AdvancedBSplineDeformableTransformBase
< typename elx::TransformBase
< TElastix >::CoordRepType,
itkGetStaticConstMacro(SpaceDimension) > 
BSplineTransformBaseType
typedef
itk::AdvancedBSplineDeformableTransform
< typename elx::TransformBase
< TElastix >::CoordRepType,
itkGetStaticConstMacro(ReducedSpaceDimension), 3 > 
BSplineTransformCubicType
typedef
itk::AdvancedBSplineDeformableTransform
< typename elx::TransformBase
< TElastix >::CoordRepType,
itkGetStaticConstMacro(ReducedSpaceDimension), 1 > 
BSplineTransformLinearType
typedef
itk::AdvancedBSplineDeformableTransform
< typename elx::TransformBase
< TElastix >::CoordRepType,
itkGetStaticConstMacro(ReducedSpaceDimension), 2 > 
BSplineTransformQuadraticType
typedef
Superclass2::CombinationTransformType 
CombinationTransformType
typedef
Superclass2::ConfigurationPointer 
ConfigurationPointer
typedef
Superclass2::ConfigurationType 
ConfigurationType
typedef SmartPointer< const SelfConstPointer
typedef Superclass2::CoordRepType CoordRepType
typedef
BSplineTransformBaseType::DirectionType 
DirectionType
typedef Superclass2::ElastixPointer ElastixPointer
typedef Superclass2::ElastixType ElastixType
typedef Superclass2::FixedImageType FixedImageType
typedef
GridScheduleComputerType::Pointer 
GridScheduleComputerPointer
typedef GridScheduleComputer
< CoordRepType,
ReducedSpaceDimension > 
GridScheduleComputerType
typedef
GridScheduleComputerType::VectorGridSpacingFactorType 
GridScheduleType
typedef GridUpsamplerType::Pointer GridUpsamplerPointer
typedef
UpsampleBSplineParametersFilter
< ParametersType,
ReducedDimensionImageType
GridUpsamplerType
typedef
BSplineTransformBaseType::ImagePointer 
ImagePointer
typedef
BSplineTransformBaseType::ImageType 
ImageType
typedef
BSplineTransformBaseType::IndexType 
IndexType
typedef Superclass2::ITKBaseType ITKBaseType
typedef
Superclass2::MovingImageType 
MovingImageType
typedef
BSplineTransformBaseType::OriginType 
OriginType
typedef Superclass1::ParametersType ParametersType
typedef
BSplineTransformBaseType::PixelType 
PixelType
typedef SmartPointer< SelfPointer
typedef
ReducedDimensionBSplineTransformBaseType::Pointer 
ReducedDimensionBSplineTransformBasePointer
typedef
itk::AdvancedBSplineDeformableTransformBase
< typename elx::TransformBase
< TElastix >::CoordRepType,
itkGetStaticConstMacro(ReducedSpaceDimension) > 
ReducedDimensionBSplineTransformBaseType
typedef
ReducedDimensionImageType::DirectionType 
ReducedDimensionDirectionType
typedef Image< PixelType,
itkGetStaticConstMacro(ReducedSpaceDimension)> 
ReducedDimensionImageType
typedef
ReducedDimensionRegionType::IndexType 
ReducedDimensionIndexType
typedef
ReducedDimensionImageType::PointType 
ReducedDimensionOriginType
typedef ImageRegion
< itkGetStaticConstMacro(ReducedSpaceDimension) > 
ReducedDimensionRegionType
typedef
ReducedDimensionRegionType::SizeType 
ReducedDimensionSizeType
typedef
ReducedDimensionImageType::SpacingType 
ReducedDimensionSpacingType
typedef
BSplineTransformBaseType::RegionType 
RegionType
typedef
Superclass2::RegistrationPointer 
RegistrationPointer
typedef
Superclass2::RegistrationType 
RegistrationType
typedef BSplineStackTransform Self
typedef
BSplineTransformBaseType::SizeType 
SizeType
typedef
BSplineTransformBaseType::SpacingType 
SpacingType
typedef
AdvancedCombinationTransform
< typename elx::TransformBase
< TElastix >::CoordRepType,
elx::TransformBase< TElastix >
::FixedImageDimension > 
Superclass1
typedef elx::TransformBase
< TElastix > 
Superclass2
- Public Types inherited from itk::AdvancedCombinationTransform< elx::TransformBase< TElastix >::CoordRepType, elx::TransformBase< TElastix >::FixedImageDimension >
typedef SmartPointer< const SelfConstPointer
typedef
CurrentTransformType::Pointer 
CurrentTransformPointer
typedef Superclass CurrentTransformType
typedef const JacobianType
&(Self::* 
GetJacobianFunctionPointer )(const InputPointType &) const
typedef void(Self::* GetJacobianOfSpatialHessianFunctionPointer )(const InputPointType &, JacobianOfSpatialHessianType &, NonZeroJacobianIndicesType &) const
typedef void(Self::* GetJacobianOfSpatialHessianFunctionPointer2 )(const InputPointType &, SpatialHessianType &, JacobianOfSpatialHessianType &, NonZeroJacobianIndicesType &) const
typedef void(Self::* GetJacobianOfSpatialJacobianFunctionPointer )(const InputPointType &, JacobianOfSpatialJacobianType &, NonZeroJacobianIndicesType &) const
typedef void(Self::* GetJacobianOfSpatialJacobianFunctionPointer2 )(const InputPointType &, SpatialJacobianType &, JacobianOfSpatialJacobianType &, NonZeroJacobianIndicesType &) const
typedef void(Self::* GetSparseJacobianFunctionPointer )(const InputPointType &, JacobianType &, NonZeroJacobianIndicesType &) const
typedef void(Self::* GetSpatialHessianFunctionPointer )(const InputPointType &, SpatialHessianType &) const
typedef void(Self::* GetSpatialJacobianFunctionPointer )(const InputPointType &, SpatialJacobianType &) const
typedef
InitialTransformType::ConstPointer 
InitialTransformConstPointer
typedef
InitialTransformType::Pointer 
InitialTransformPointer
typedef Superclass InitialTransformType
typedef
Superclass::InputCovariantVectorType 
InputCovariantVectorType
typedef Superclass::InputPointType InputPointType
typedef Superclass::InputVectorType InputVectorType
typedef
Superclass::InputVnlVectorType 
InputVnlVectorType
typedef
Superclass::InternalMatrixType 
InternalMatrixType
typedef
Superclass::JacobianOfSpatialHessianType 
JacobianOfSpatialHessianType
typedef
Superclass::JacobianOfSpatialJacobianType 
JacobianOfSpatialJacobianType
typedef Superclass::JacobianType JacobianType
typedef
Superclass::NonZeroJacobianIndicesType 
NonZeroJacobianIndicesType
typedef
Superclass::OutputCovariantVectorType 
OutputCovariantVectorType
typedef Superclass::OutputPointType OutputPointType
typedef
Superclass::OutputVectorType 
OutputVectorType
typedef
Superclass::OutputVnlVectorType 
OutputVnlVectorType
typedef Superclass::ParametersType ParametersType
typedef SmartPointer< SelfPointer
typedef Superclass::ScalarType ScalarType
typedef
AdvancedCombinationTransform 
Self
typedef
Superclass::SpatialHessianType 
SpatialHessianType
typedef
Superclass::SpatialJacobianType 
SpatialJacobianType
typedef AdvancedTransform
< elx::TransformBase< TElastix >
::CoordRepType, NDimensions,
NDimensions > 
Superclass
typedef OutputPointType(Self::* TransformPointFunctionPointer )(const InputPointType &) const
- Public Types inherited from itk::AdvancedTransform< elx::TransformBase< TElastix >::CoordRepType, NDimensions, NDimensions >
typedef SmartPointer< const SelfConstPointer
typedef
Superclass::InputCovariantVectorType 
InputCovariantVectorType
typedef Superclass::InputPointType InputPointType
typedef Superclass::InputVectorType InputVectorType
typedef
Superclass::InputVnlVectorType 
InputVnlVectorType
typedef
SpatialJacobianType::InternalMatrixType 
InternalMatrixType
typedef std::vector
< SpatialHessianType
JacobianOfSpatialHessianType
typedef std::vector
< SpatialJacobianType
JacobianOfSpatialJacobianType
typedef Superclass::JacobianType JacobianType
typedef std::vector< unsigned
long > 
NonZeroJacobianIndicesType
typedef
Superclass::OutputCovariantVectorType 
OutputCovariantVectorType
typedef Superclass::OutputPointType OutputPointType
typedef
Superclass::OutputVectorType 
OutputVectorType
typedef
Superclass::OutputVnlVectorType 
OutputVnlVectorType
typedef Superclass::ParametersType ParametersType
typedef SmartPointer< SelfPointer
typedef Superclass::ScalarType ScalarType
typedef AdvancedTransform Self
typedef FixedArray< Matrix
< ScalarType,
InputSpaceDimension,
InputSpaceDimension >
, OutputSpaceDimension > 
SpatialHessianType
typedef Matrix< ScalarType,
OutputSpaceDimension,
InputSpaceDimension > 
SpatialJacobianType
typedef Transform
< elx::TransformBase< TElastix >
::CoordRepType,
NInputDimensions,
NOutputDimensions > 
Superclass
- Public Types inherited from elastix::TransformBase< TElastix >
typedef
itk::AdvancedCombinationTransform
< CoordRepType,
itkGetStaticConstMacro(FixedImageDimension) > 
CombinationTransformType
typedef
ConfigurationType::CommandLineArgumentMapType 
CommandLineArgumentMapType
typedef
ConfigurationType::CommandLineEntryType 
CommandLineEntryType
typedef ComponentDatabase ComponentDatabaseType
typedef
ComponentDatabaseType::ComponentDescriptionType 
ComponentDescriptionType
typedef
Superclass::ConfigurationPointer 
ConfigurationPointer
typedef
Superclass::ConfigurationType 
ConfigurationType
typedef ElastixType::CoordRepType CoordRepType
typedef Superclass::ElastixPointer ElastixPointer
typedef Superclass::ElastixType ElastixType
typedef ElastixType::FixedImageType FixedImageType
typedef
CombinationTransformType::InitialTransformType 
InitialTransformType
typedef ITKBaseType::InputPointType InputPointType
typedef itk::AdvancedTransform
< CoordRepType,
itkGetStaticConstMacro(FixedImageDimension),
itkGetStaticConstMacro(MovingImageDimension) > 
ITKBaseType
typedef
RegistrationType::ITKBaseType 
ITKRegistrationType
typedef
ElastixType::MovingImageType 
MovingImageType
typedef itk::Object ObjectType
typedef
ITKRegistrationType::OptimizerType 
OptimizerType
typedef
ITKBaseType::OutputPointType 
OutputPointType
typedef ITKBaseType::ParametersType ParametersType
typedef elx::ProgressCommand ProgressCommandType
typedef
ComponentDatabase::PtrToCreator 
PtrToCreator
typedef
Superclass::RegistrationPointer 
RegistrationPointer
typedef
Superclass::RegistrationType 
RegistrationType
typedef OptimizerType::ScalesType ScalesType
typedef TransformBase Self
typedef BaseComponentSE< TElastix > Superclass
typedef ParametersType::ValueType ValueType
- Public Types inherited from elastix::BaseComponentSE< TElastix >
typedef
ElastixType::ConfigurationPointer 
ConfigurationPointer
typedef
ElastixType::ConfigurationType 
ConfigurationType
typedef ElastixType::Pointer ElastixPointer
typedef TElastix ElastixType
typedef RegistrationTypeRegistrationPointer
typedef
ElastixType::RegistrationBaseType 
RegistrationType
typedef BaseComponentSE Self
typedef BaseComponent Superclass

Public Member Functions

virtual int BeforeAll (void)
virtual void BeforeEachResolution (void)
virtual void BeforeRegistration (void)
 elxClassNameMacro ("BSplineStackTransform")
virtual const char * GetClassName () const
virtual void IncreaseScale (void)
virtual void InitializeTransform (void)
 itkStaticConstMacro (SpaceDimension, unsigned int, Superclass2::FixedImageDimension)
 itkStaticConstMacro (ReducedSpaceDimension, unsigned int, Superclass2::FixedImageDimension-1)
virtual void ReadFromFile (void)
virtual void SetOptimizerScales (const unsigned int edgeWidth)
virtual void WriteToFile (const ParametersType &param) const
- Public Member Functions inherited from itk::AdvancedCombinationTransform< elx::TransformBase< TElastix >::CoordRepType, elx::TransformBase< TElastix >::FixedImageDimension >
virtual CurrentTransformTypeGetCurrentTransform ()
virtual const ParametersTypeGetFixedParameters (void) const
virtual bool GetHasNonZeroSpatialHessian (void) const
virtual const
InitialTransformType
GetInitialTransform ()
virtual bool GetInverse (Self *inverse) const
virtual const JacobianTypeGetJacobian (const InputPointType &point) const
virtual void GetJacobian (const InputPointType &ipp, JacobianType &j, NonZeroJacobianIndicesType &nonZeroJacobianIndices) const
virtual void GetJacobianOfSpatialHessian (const InputPointType &ipp, JacobianOfSpatialHessianType &jsh, NonZeroJacobianIndicesType &nonZeroJacobianIndices) const
virtual void GetJacobianOfSpatialHessian (const InputPointType &ipp, SpatialHessianType &sh, JacobianOfSpatialHessianType &jsh, NonZeroJacobianIndicesType &nonZeroJacobianIndices) const
virtual void GetJacobianOfSpatialJacobian (const InputPointType &ipp, JacobianOfSpatialJacobianType &jsj, NonZeroJacobianIndicesType &nonZeroJacobianIndices) const
virtual void GetJacobianOfSpatialJacobian (const InputPointType &ipp, SpatialJacobianType &sj, JacobianOfSpatialJacobianType &jsj, NonZeroJacobianIndicesType &nonZeroJacobianIndices) const
virtual unsigned long GetNumberOfNonZeroJacobianIndices (void) const
virtual unsigned int GetNumberOfParameters (void) const
virtual const ParametersTypeGetParameters (void) const
virtual void GetSpatialHessian (const InputPointType &ipp, SpatialHessianType &sh) const
virtual void GetSpatialJacobian (const InputPointType &ipp, SpatialJacobianType &sj) const
virtual bool GetUseAddition () const
virtual bool GetUseComposition () const
virtual bool HasNonZeroJacobianOfSpatialHessian (void) const
virtual bool IsLinear (void) const
 itkStaticConstMacro (SpaceDimension, unsigned int, NDimensions)
virtual void SetCurrentTransform (CurrentTransformType *_arg)
virtual void SetFixedParameters (const ParametersType &fixedParam)
virtual void SetInitialTransform (const InitialTransformType *_arg)
virtual void SetParameters (const ParametersType &param)
virtual void SetParametersByValue (const ParametersType &param)
virtual void SetUseAddition (bool _arg)
virtual void SetUseComposition (bool _arg)
virtual OutputPointType TransformPoint (const InputPointType &point) const
- Public Member Functions inherited from itk::AdvancedTransform< elx::TransformBase< TElastix >::CoordRepType, NDimensions, NDimensions >
virtual bool GetHasNonZeroJacobianOfSpatialHessian () const
virtual void GetJacobian (const InputPointType &ipp, JacobianType &j, NonZeroJacobianIndicesType &nonZeroJacobianIndices) const
virtual void GetJacobianOfSpatialHessian (const InputPointType &ipp, JacobianOfSpatialHessianType &jsh, NonZeroJacobianIndicesType &nonZeroJacobianIndices) const
virtual void GetJacobianOfSpatialHessian (const InputPointType &ipp, SpatialHessianType &sh, JacobianOfSpatialHessianType &jsh, NonZeroJacobianIndicesType &nonZeroJacobianIndices) const
virtual void GetJacobianOfSpatialJacobian (const InputPointType &ipp, JacobianOfSpatialJacobianType &jsj, NonZeroJacobianIndicesType &nonZeroJacobianIndices) const
virtual void GetJacobianOfSpatialJacobian (const InputPointType &ipp, SpatialJacobianType &sj, JacobianOfSpatialJacobianType &jsj, NonZeroJacobianIndicesType &nonZeroJacobianIndices) const
virtual void GetSpatialHessian (const InputPointType &ipp, SpatialHessianType &sh) const
virtual void GetSpatialJacobian (const InputPointType &ipp, SpatialJacobianType &sj) const
 itkStaticConstMacro (InputSpaceDimension, unsigned int, NInputDimensions)
 itkStaticConstMacro (OutputSpaceDimension, unsigned int, NOutputDimensions)
- Public Member Functions inherited from elastix::TransformBase< TElastix >
virtual void AfterRegistrationBase (void)
virtual int BeforeAllBase (void)
virtual int BeforeAllTransformix (void)
virtual void BeforeRegistrationBase (void)
virtual void ComputeDeterminantOfSpatialJacobian (void) const
virtual void ComputeSpatialJacobian (void) const
virtual const
CombinationTransformType
GetAsCombinationTransform (void) const
virtual CombinationTransformTypeGetAsCombinationTransform (void)
virtual ITKBaseTypeGetAsITKBaseType (void)
virtual const ITKBaseTypeGetAsITKBaseType (void) const
virtual const
InitialTransformType
GetInitialTransform (void) const
virtual const char * GetTransformParametersFileName () const
 itkStaticConstMacro (FixedImageDimension, unsigned int, FixedImageType::ImageDimension)
 itkStaticConstMacro (MovingImageDimension, unsigned int, MovingImageType::ImageDimension)
virtual void ReadInitialTransformFromFile (const char *transformParameterFileName)
virtual void SetFinalParameters (void)
virtual void SetInitialTransform (InitialTransformType *_arg)
virtual void SetReadWriteTransformParameters (const bool _arg)
virtual void SetTransformParametersFileName (const char *filename)
virtual void TransformPoints (void) const
virtual void TransformPointsAllPoints (void) const
virtual void TransformPointsSomePoints (const std::string filename) const
virtual void TransformPointsSomePointsVTK (const std::string filename) const
virtual void WriteToFile (void) const
- Public Member Functions inherited from elastix::BaseComponentSE< TElastix >
virtual ConfigurationTypeGetConfiguration (void) const
virtual ElastixTypeGetElastix (void) const
virtual RegistrationPointer GetRegistration (void) const
virtual void SetConfiguration (ConfigurationType *_arg)
virtual void SetElastix (ElastixType *_arg)
- Public Member Functions inherited from elastix::BaseComponent
virtual void AfterEachIteration (void)
virtual void AfterEachIterationBase (void)
virtual void AfterEachResolution (void)
virtual void AfterEachResolutionBase (void)
virtual void AfterRegistration (void)
virtual void BeforeEachResolutionBase (void)
virtual const char * elxGetClassName (void) const
virtual const char * GetComponentLabel (void) const
virtual void SetComponentLabel (const char *label, unsigned int idx)

Static Public Member Functions

static Pointer New ()

Protected Member Functions

 BSplineStackTransform ()
virtual void PreComputeGridInformation (void)
virtual ~BSplineStackTransform ()
- Protected Member Functions inherited from itk::AdvancedCombinationTransform< elx::TransformBase< TElastix >::CoordRepType, elx::TransformBase< TElastix >::FixedImageDimension >
 AdvancedCombinationTransform ()
const JacobianTypeGetJacobianNoCurrentTransform (const InputPointType &point) const
void GetJacobianNoCurrentTransform (const InputPointType &, JacobianType &, NonZeroJacobianIndicesType &) const
const JacobianTypeGetJacobianNoInitialTransform (const InputPointType &point) const
void GetJacobianNoInitialTransform (const InputPointType &, JacobianType &, NonZeroJacobianIndicesType &) const
void GetJacobianOfSpatialHessianNoCurrentTransform (const InputPointType &ipp, JacobianOfSpatialHessianType &jsh, NonZeroJacobianIndicesType &nonZeroJacobianIndices) const
void GetJacobianOfSpatialHessianNoCurrentTransform (const InputPointType &ipp, SpatialHessianType &sh, JacobianOfSpatialHessianType &jsh, NonZeroJacobianIndicesType &nonZeroJacobianIndices) const
void GetJacobianOfSpatialHessianNoInitialTransform (const InputPointType &ipp, JacobianOfSpatialHessianType &jsh, NonZeroJacobianIndicesType &nonZeroJacobianIndices) const
void GetJacobianOfSpatialHessianNoInitialTransform (const InputPointType &ipp, SpatialHessianType &sh, JacobianOfSpatialHessianType &jsh, NonZeroJacobianIndicesType &nonZeroJacobianIndices) const
void GetJacobianOfSpatialHessianUseAddition (const InputPointType &ipp, JacobianOfSpatialHessianType &jsh, NonZeroJacobianIndicesType &nonZeroJacobianIndices) const
void GetJacobianOfSpatialHessianUseAddition (const InputPointType &ipp, SpatialHessianType &sh, JacobianOfSpatialHessianType &jsh, NonZeroJacobianIndicesType &nonZeroJacobianIndices) const
void GetJacobianOfSpatialHessianUseComposition (const InputPointType &ipp, JacobianOfSpatialHessianType &jsh, NonZeroJacobianIndicesType &nonZeroJacobianIndices) const
virtual void GetJacobianOfSpatialHessianUseComposition (const InputPointType &ipp, SpatialHessianType &sh, JacobianOfSpatialHessianType &jsh, NonZeroJacobianIndicesType &nonZeroJacobianIndices) const
void GetJacobianOfSpatialJacobianNoCurrentTransform (const InputPointType &ipp, JacobianOfSpatialJacobianType &jsj, NonZeroJacobianIndicesType &nonZeroJacobianIndices) const
void GetJacobianOfSpatialJacobianNoCurrentTransform (const InputPointType &ipp, SpatialJacobianType &sj, JacobianOfSpatialJacobianType &jsj, NonZeroJacobianIndicesType &nonZeroJacobianIndices) const
void GetJacobianOfSpatialJacobianNoInitialTransform (const InputPointType &ipp, JacobianOfSpatialJacobianType &jsj, NonZeroJacobianIndicesType &nonZeroJacobianIndices) const
void GetJacobianOfSpatialJacobianNoInitialTransform (const InputPointType &ipp, SpatialJacobianType &sj, JacobianOfSpatialJacobianType &jsj, NonZeroJacobianIndicesType &nonZeroJacobianIndices) const
void GetJacobianOfSpatialJacobianUseAddition (const InputPointType &ipp, JacobianOfSpatialJacobianType &jsj, NonZeroJacobianIndicesType &nonZeroJacobianIndices) const
void GetJacobianOfSpatialJacobianUseAddition (const InputPointType &ipp, SpatialJacobianType &sj, JacobianOfSpatialJacobianType &jsj, NonZeroJacobianIndicesType &nonZeroJacobianIndices) const
void GetJacobianOfSpatialJacobianUseComposition (const InputPointType &ipp, JacobianOfSpatialJacobianType &jsj, NonZeroJacobianIndicesType &nonZeroJacobianIndices) const
void GetJacobianOfSpatialJacobianUseComposition (const InputPointType &ipp, SpatialJacobianType &sj, JacobianOfSpatialJacobianType &jsj, NonZeroJacobianIndicesType &nonZeroJacobianIndices) const
const JacobianTypeGetJacobianUseAddition (const InputPointType &point) const
void GetJacobianUseAddition (const InputPointType &, JacobianType &, NonZeroJacobianIndicesType &) const
const JacobianTypeGetJacobianUseComposition (const InputPointType &point) const
void GetJacobianUseComposition (const InputPointType &, JacobianType &, NonZeroJacobianIndicesType &) const
void GetSpatialHessianNoCurrentTransform (const InputPointType &ipp, SpatialHessianType &sh) const
void GetSpatialHessianNoInitialTransform (const InputPointType &ipp, SpatialHessianType &sh) const
void GetSpatialHessianUseAddition (const InputPointType &ipp, SpatialHessianType &sh) const
void GetSpatialHessianUseComposition (const InputPointType &ipp, SpatialHessianType &sh) const
void GetSpatialJacobianNoCurrentTransform (const InputPointType &ipp, SpatialJacobianType &sj) const
void GetSpatialJacobianNoInitialTransform (const InputPointType &ipp, SpatialJacobianType &sj) const
void GetSpatialJacobianUseAddition (const InputPointType &ipp, SpatialJacobianType &sj) const
void GetSpatialJacobianUseComposition (const InputPointType &ipp, SpatialJacobianType &sj) const
virtual void NoCurrentTransformSet (void) const throw (ExceptionObject)
OutputPointType TransformPointNoCurrentTransform (const InputPointType &point) const
OutputPointType TransformPointNoInitialTransform (const InputPointType &point) const
OutputPointType TransformPointUseAddition (const InputPointType &point) const
OutputPointType TransformPointUseComposition (const InputPointType &point) const
virtual void UpdateCombinationMethod (void)
virtual ~AdvancedCombinationTransform ()
- Protected Member Functions inherited from itk::AdvancedTransform< elx::TransformBase< TElastix >::CoordRepType, NDimensions, NDimensions >
 AdvancedTransform ()
 AdvancedTransform (unsigned int Dimension, unsigned int NumberOfParameters)
virtual ~AdvancedTransform ()
- Protected Member Functions inherited from elastix::TransformBase< TElastix >
void AutomaticScalesEstimation (ScalesType &scales) const
 TransformBase ()
virtual ~TransformBase ()
- Protected Member Functions inherited from elastix::BaseComponentSE< TElastix >
 BaseComponentSE ()
virtual ~BaseComponentSE ()
- Protected Member Functions inherited from elastix::BaseComponent
 BaseComponent ()
virtual ~BaseComponent ()

Private Member Functions

 BSplineStackTransform (const Self &)
unsigned int InitializeBSplineTransform ()
void operator= (const Self &)

Private Attributes

ReducedDimensionBSplineTransformBasePointer m_BSplineDummySubTransform
BSplineStackTransformPointer m_BSplineStackTransform
GridScheduleComputerPointer m_GridScheduleComputer
GridUpsamplerPointer m_GridUpsampler
unsigned int m_NumberOfSubTransforms
unsigned int m_SplineOrder
double m_StackOrigin
double m_StackSpacing

Additional Inherited Members

- Protected Attributes inherited from itk::AdvancedCombinationTransform< elx::TransformBase< TElastix >::CoordRepType, elx::TransformBase< TElastix >::FixedImageDimension >
CurrentTransformPointer m_CurrentTransform
InitialTransformConstPointer m_InitialTransform
GetJacobianFunctionPointer m_SelectedGetJacobianFunction
GetJacobianOfSpatialHessianFunctionPointer m_SelectedGetJacobianOfSpatialHessianFunction
GetJacobianOfSpatialHessianFunctionPointer2 m_SelectedGetJacobianOfSpatialHessianFunction2
GetJacobianOfSpatialJacobianFunctionPointer m_SelectedGetJacobianOfSpatialJacobianFunction
GetJacobianOfSpatialJacobianFunctionPointer2 m_SelectedGetJacobianOfSpatialJacobianFunction2
GetSparseJacobianFunctionPointer m_SelectedGetSparseJacobianFunction
GetSpatialHessianFunctionPointer m_SelectedGetSpatialHessianFunction
GetSpatialJacobianFunctionPointer m_SelectedGetSpatialJacobianFunction
TransformPointFunctionPointer m_SelectedTransformPointFunction
bool m_UseAddition
bool m_UseComposition
- Protected Attributes inherited from elastix::TransformBase< TElastix >
ParametersType m_FinalParameters
std::string m_TransformParametersFileName
ParametersTypem_TransformParametersPointer

Detailed Description

template<class TElastix>
class elastix::BSplineStackTransform< TElastix >

A B-spline transform based on the itkStackTransform.

This transform is a B-spline transformation, with for every time point a separate D-1 dimensional B-spline transform. Calls to TransformPoint and GetJacobian are redirected to the appropriate sub transform based on the last dimension (time) index.

This transform uses the size, spacing and origin of the last dimension of the fixed image to set the number of sub transforms the origin of the first transform and the spacing between the transforms.

When supplying the B-spline parameters (grid) make sure to provide dimension - 1 elements.

The parameters used in this class are:

Parameters:
Transform: Select this transform as follows:
(Transform "BSplineStackTransform")
Parameters:
BSplineTransformSplineOrder: choose a B-spline order 1,2, or 3.
example: (BSplineTransformSplineOrder 3)
Default value: 3 (cubic B-splines).
Parameters:
FinalGridSpacingInVoxels: the grid spacing of the B-spline transform for each dimension.
example: (FinalGridSpacingInVoxels 8.0 8.0 8.0)
If only one argument is given, that factor is used for each dimension. The spacing is not in millimeters, but in "voxel size units". The default is 16.0 in every dimension.
Parameters:
FinalGridSpacingInPhysicalUnits: the grid spacing of the B-spline transform for each dimension.
example: (FinalGridSpacingInPhysicalUnits 8.0 8.0 8.0)
If only one argument is given, that factor is used for each dimension. The spacing is specified in millimeters. If not specified, the FinalGridSpacingInVoxels is used, or the FinalGridSpacing, to compute a FinalGridSpacingInPhysicalUnits. If those are not specified, the default value for FinalGridSpacingInVoxels is used to compute a FinalGridSpacingInPhysicalUnits.
Parameters:
GridSpacingSchedule: the grid spacing downsampling factors for the B-spline transform for each dimension and each resolution.
example: (GridSpacingSchedule 4.0 4.0 2.0 2.0 1.0 1.0)
Which is an example for a 2D image, using 3 resolutions.
For convenience, you may also specify only one value for each resolution:
example: (GridSpacingSchedule 4.0 2.0 1.0 )
which is equivalent to the example above.
Parameters:
PassiveEdgeWidth: the width of a band of control points at the border of the B-spline coefficient image that should remain passive during optimisation.
Can be specified for each resolution.
example: (PassiveEdgeWidth 0 1 2)
The default is zero for all resolutions. A value of 4 will avoid all deformations at the edge of the image. Make sure that 2*PassiveEdgeWidth < ControlPointGridSize in each dimension.

The transform parameters necessary for transformix, additionally defined by this class, are:

Transform Parameters:
GridSize: stores the size of the B-spline grid.
example: (GridSize 16 16 16)
Transform Parameters:
GridIndex: stores the index of the B-spline grid.
example: (GridIndex 0 0 0)
Transform Parameters:
GridSpacing: stores the spacing of the B-spline grid.
example: (GridSpacing 16.0 16.0 16.0)
Transform Parameters:
GridOrigin: stores the origin of the B-spline grid.
example: (GridOrigin 0.0 0.0 0.0)
Transform Parameters:
GridDirection: stores the direction cosines of the B-spline grid.
example: (GridDirection 1.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0 0.1)
Transform Parameters:
BSplineTransformSplineOrder: stores the B-spline order 1,2, or 3.
example: (BSplineTransformSplineOrder 3) Default value: 3 (cubic B-splines).
Transform Parameters:
StackSpacing: stores the spacing between the sub transforms.
exanoke: (StackSpacing 1.0)
Transform Parameters:
StackOrigin: stores the origin of the first sub transform.
exanoke: (StackOrigin 0.0)
Transform Parameters:
NumberOfSubTransforms: stores the number of sub transforms.
exanoke: (NumberOfSubTransforms 10)
Todo:
It is unsure what happens when one of the image dimensions has length 1.

Definition at line 108 of file elxBSplineStackTransform.h.

Member Typedef Documentation

Definition at line 162 of file elxBSplineStackTransform.h.

template<class TElastix >
typedef itk::StackTransform< typename elx::TransformBase<TElastix>::CoordRepType, itkGetStaticConstMacro( SpaceDimension ), itkGetStaticConstMacro( SpaceDimension ) > elastix::BSplineStackTransform< TElastix >::BSplineStackTransformType

Typedef for stack transform.

Definition at line 161 of file elxBSplineStackTransform.h.

Definition at line 149 of file elxBSplineStackTransform.h.

template<class TElastix >
typedef itk::AdvancedBSplineDeformableTransformBase< typename elx::TransformBase<TElastix>::CoordRepType, itkGetStaticConstMacro( SpaceDimension ) > elastix::BSplineStackTransform< TElastix >::BSplineTransformBaseType

The ITK-class that provides most of the functionality, and that is set as the "CurrentTransform" in the CombinationTransform.

Definition at line 148 of file elxBSplineStackTransform.h.

template<class TElastix >
typedef itk::AdvancedBSplineDeformableTransform< typename elx::TransformBase<TElastix>::CoordRepType, itkGetStaticConstMacro( ReducedSpaceDimension ), 3 > elastix::BSplineStackTransform< TElastix >::BSplineTransformCubicType

Definition at line 176 of file elxBSplineStackTransform.h.

template<class TElastix >
typedef itk::AdvancedBSplineDeformableTransform< typename elx::TransformBase<TElastix>::CoordRepType, itkGetStaticConstMacro( ReducedSpaceDimension ), 1 > elastix::BSplineStackTransform< TElastix >::BSplineTransformLinearType

Typedef for supported BSplineTransform types.

Definition at line 168 of file elxBSplineStackTransform.h.

template<class TElastix >
typedef itk::AdvancedBSplineDeformableTransform< typename elx::TransformBase<TElastix>::CoordRepType, itkGetStaticConstMacro( ReducedSpaceDimension ), 2 > elastix::BSplineStackTransform< TElastix >::BSplineTransformQuadraticType

Definition at line 172 of file elxBSplineStackTransform.h.

Definition at line 203 of file elxBSplineStackTransform.h.

Definition at line 196 of file elxBSplineStackTransform.h.

Definition at line 195 of file elxBSplineStackTransform.h.

template<class TElastix >
typedef SmartPointer<const Self> elastix::BSplineStackTransform< TElastix >::ConstPointer

Definition at line 125 of file elxBSplineStackTransform.h.

template<class TElastix >
typedef Superclass2::CoordRepType elastix::BSplineStackTransform< TElastix >::CoordRepType

Definition at line 199 of file elxBSplineStackTransform.h.

Definition at line 190 of file elxBSplineStackTransform.h.

template<class TElastix >
typedef Superclass2::ElastixPointer elastix::BSplineStackTransform< TElastix >::ElastixPointer

Definition at line 194 of file elxBSplineStackTransform.h.

template<class TElastix >
typedef Superclass2::ElastixType elastix::BSplineStackTransform< TElastix >::ElastixType

Typedef's from TransformBase.

Definition at line 193 of file elxBSplineStackTransform.h.

template<class TElastix >
typedef Superclass2::FixedImageType elastix::BSplineStackTransform< TElastix >::FixedImageType

Definition at line 200 of file elxBSplineStackTransform.h.

Definition at line 219 of file elxBSplineStackTransform.h.

template<class TElastix >
typedef GridScheduleComputer< CoordRepType, ReducedSpaceDimension > elastix::BSplineStackTransform< TElastix >::GridScheduleComputerType

Typedef's for the GridScheduleComputer and the UpsampleBSplineParametersFilter.

Definition at line 218 of file elxBSplineStackTransform.h.

template<class TElastix >
typedef GridScheduleComputerType ::VectorGridSpacingFactorType elastix::BSplineStackTransform< TElastix >::GridScheduleType

Definition at line 221 of file elxBSplineStackTransform.h.

template<class TElastix >
typedef GridUpsamplerType::Pointer elastix::BSplineStackTransform< TElastix >::GridUpsamplerPointer

Definition at line 224 of file elxBSplineStackTransform.h.

Definition at line 223 of file elxBSplineStackTransform.h.

Definition at line 184 of file elxBSplineStackTransform.h.

template<class TElastix >
typedef BSplineTransformBaseType::ImageType elastix::BSplineStackTransform< TElastix >::ImageType

Definition at line 183 of file elxBSplineStackTransform.h.

template<class TElastix >
typedef BSplineTransformBaseType::IndexType elastix::BSplineStackTransform< TElastix >::IndexType

Definition at line 186 of file elxBSplineStackTransform.h.

template<class TElastix >
typedef Superclass2::ITKBaseType elastix::BSplineStackTransform< TElastix >::ITKBaseType

Definition at line 202 of file elxBSplineStackTransform.h.

template<class TElastix >
typedef Superclass2::MovingImageType elastix::BSplineStackTransform< TElastix >::MovingImageType

Definition at line 201 of file elxBSplineStackTransform.h.

template<class TElastix >
typedef BSplineTransformBaseType::OriginType elastix::BSplineStackTransform< TElastix >::OriginType

Definition at line 189 of file elxBSplineStackTransform.h.

template<class TElastix >
typedef Superclass1::ParametersType elastix::BSplineStackTransform< TElastix >::ParametersType

Typedefs inherited from the superclass.

Definition at line 179 of file elxBSplineStackTransform.h.

template<class TElastix >
typedef BSplineTransformBaseType::PixelType elastix::BSplineStackTransform< TElastix >::PixelType

Typedef's specific for the BSplineTransform.

Definition at line 182 of file elxBSplineStackTransform.h.

template<class TElastix >
typedef SmartPointer<Self> elastix::BSplineStackTransform< TElastix >::Pointer

Definition at line 124 of file elxBSplineStackTransform.h.

Definition at line 155 of file elxBSplineStackTransform.h.

template<class TElastix >
typedef itk::AdvancedBSplineDeformableTransformBase< typename elx::TransformBase<TElastix>::CoordRepType, itkGetStaticConstMacro( ReducedSpaceDimension ) > elastix::BSplineStackTransform< TElastix >::ReducedDimensionBSplineTransformBaseType

The ITK-class for the sub transforms, which have a reduced dimension.

Definition at line 154 of file elxBSplineStackTransform.h.

template<class TElastix >
typedef ReducedDimensionImageType::DirectionType elastix::BSplineStackTransform< TElastix >::ReducedDimensionDirectionType

Definition at line 213 of file elxBSplineStackTransform.h.

template<class TElastix >
typedef Image< PixelType, itkGetStaticConstMacro( ReducedSpaceDimension )> elastix::BSplineStackTransform< TElastix >::ReducedDimensionImageType

Reduced dimension image typedefs.

Definition at line 207 of file elxBSplineStackTransform.h.

template<class TElastix >
typedef ReducedDimensionRegionType::IndexType elastix::BSplineStackTransform< TElastix >::ReducedDimensionIndexType

Definition at line 211 of file elxBSplineStackTransform.h.

template<class TElastix >
typedef ReducedDimensionImageType::PointType elastix::BSplineStackTransform< TElastix >::ReducedDimensionOriginType

Definition at line 214 of file elxBSplineStackTransform.h.

template<class TElastix >
typedef ImageRegion< itkGetStaticConstMacro( ReducedSpaceDimension ) > elastix::BSplineStackTransform< TElastix >::ReducedDimensionRegionType

Definition at line 209 of file elxBSplineStackTransform.h.

template<class TElastix >
typedef ReducedDimensionRegionType::SizeType elastix::BSplineStackTransform< TElastix >::ReducedDimensionSizeType

Definition at line 210 of file elxBSplineStackTransform.h.

template<class TElastix >
typedef ReducedDimensionImageType::SpacingType elastix::BSplineStackTransform< TElastix >::ReducedDimensionSpacingType

Definition at line 212 of file elxBSplineStackTransform.h.

template<class TElastix >
typedef BSplineTransformBaseType::RegionType elastix::BSplineStackTransform< TElastix >::RegionType

Definition at line 185 of file elxBSplineStackTransform.h.

Definition at line 198 of file elxBSplineStackTransform.h.

template<class TElastix >
typedef Superclass2::RegistrationType elastix::BSplineStackTransform< TElastix >::RegistrationType

Definition at line 197 of file elxBSplineStackTransform.h.

template<class TElastix >
typedef BSplineStackTransform elastix::BSplineStackTransform< TElastix >::Self

Standard ITK-stuff.

Definition at line 119 of file elxBSplineStackTransform.h.

template<class TElastix >
typedef BSplineTransformBaseType::SizeType elastix::BSplineStackTransform< TElastix >::SizeType

Definition at line 187 of file elxBSplineStackTransform.h.

Definition at line 188 of file elxBSplineStackTransform.h.

template<class TElastix >
typedef AdvancedCombinationTransform< typename elx::TransformBase<TElastix>::CoordRepType, elx::TransformBase<TElastix>::FixedImageDimension > elastix::BSplineStackTransform< TElastix >::Superclass1

Definition at line 122 of file elxBSplineStackTransform.h.

template<class TElastix >
typedef elx::TransformBase<TElastix> elastix::BSplineStackTransform< TElastix >::Superclass2

Definition at line 123 of file elxBSplineStackTransform.h.

Constructor & Destructor Documentation

template<class TElastix >
elastix::BSplineStackTransform< TElastix >::BSplineStackTransform ( )
protected

The constructor.

template<class TElastix >
virtual elastix::BSplineStackTransform< TElastix >::~BSplineStackTransform ( )
inlineprotectedvirtual

The destructor.

Definition at line 284 of file elxBSplineStackTransform.h.

template<class TElastix >
elastix::BSplineStackTransform< TElastix >::BSplineStackTransform ( const Self )
private

The private constructor and copy constructor.

Member Function Documentation

template<class TElastix >
virtual int elastix::BSplineStackTransform< TElastix >::BeforeAll ( void  )
virtual

Execute stuff before anything else is done:

  • Initialize the right BSplineTransform.
  • Initialize the right grid schedule computer.
  • Initialize upsample filter.

Reimplemented from elastix::BaseComponent.

template<class TElastix >
virtual void elastix::BSplineStackTransform< TElastix >::BeforeEachResolution ( void  )
virtual

Execute stuff before each new pyramid resolution:

Reimplemented from elastix::BaseComponent.

template<class TElastix >
virtual void elastix::BSplineStackTransform< TElastix >::BeforeRegistration ( void  )
virtual

Execute stuff before the actual registration:

  • Create an initial B-spline grid.
  • Set the stack transform parameters.
  • Set initial sub transforms.
  • Create initial registration parameters.
  • PrecomputeGridInformation. Initially, the transform is set to use a 1x1x1 grid, with deformation (0,0,0). In the method BeforeEachResolution() this will be replaced by the right grid size. This seems not logical, but it is required, since the registration class checks if the number of parameters in the transform is equal to the number of parameters in the registration class. This check is done before calling the BeforeEachResolution() methods.

Reimplemented from elastix::BaseComponent.

template<class TElastix >
elastix::BSplineStackTransform< TElastix >::elxClassNameMacro ( "BSplineStackTransform< TElastix >"  )

Name of this class. Use this name in the parameter file to select this specific transform.
example: (Transform "BSplineStackTransform")

template<class TElastix >
virtual const char* elastix::BSplineStackTransform< TElastix >::GetClassName ( ) const
virtual

Run-time type information (and related methods).

Reimplemented from elastix::TransformBase< TElastix >.

template<class TElastix >
virtual void elastix::BSplineStackTransform< TElastix >::IncreaseScale ( void  )
virtual

Method to increase the density of the B-spline grid.

  • Determine the new B-spline coefficients that describe the current deformation field for all sub transforms.
  • Set these coefficients as InitialParametersOfNextLevel in the registration object. Called by BeforeEachResolution().
template<class TElastix >
unsigned int elastix::BSplineStackTransform< TElastix >::InitializeBSplineTransform ( )
private

Initialize the right B-spline transform based on the spline order.

template<class TElastix >
virtual void elastix::BSplineStackTransform< TElastix >::InitializeTransform ( void  )
virtual

Method to set the initial B-spline grid and grid scheduler and initialize the parameters (to 0).

  • Define the initial grid region, origin and spacing, using the precomputed grid information.
  • Set the initial parameters to zero and set then as InitialParametersOfNextLevel in the registration object. Called by BeforeEachResolution().
template<class TElastix >
elastix::BSplineStackTransform< TElastix >::itkStaticConstMacro ( SpaceDimension  ,
unsigned  int,
Superclass2::FixedImageDimension   
)

(Reduced) dimension of the fixed image.

template<class TElastix >
elastix::BSplineStackTransform< TElastix >::itkStaticConstMacro ( ReducedSpaceDimension  ,
unsigned  int,
Superclass2::FixedImageDimension-  1 
)
template<class TElastix >
static Pointer elastix::BSplineStackTransform< TElastix >::New ( )
static
template<class TElastix >
void elastix::BSplineStackTransform< TElastix >::operator= ( const Self )
private
template<class TElastix >
virtual void elastix::BSplineStackTransform< TElastix >::PreComputeGridInformation ( void  )
protectedvirtual

Read user-specified gridspacing and call the itkGridScheduleComputer.

template<class TElastix >
virtual void elastix::BSplineStackTransform< TElastix >::ReadFromFile ( void  )
virtual

Function to read transform-parameters from a file.

Reimplemented from elastix::TransformBase< TElastix >.

template<class TElastix >
virtual void elastix::BSplineStackTransform< TElastix >::SetOptimizerScales ( const unsigned int  edgeWidth)
virtual

Set the scales of the edge B-spline coefficients to zero.

template<class TElastix >
virtual void elastix::BSplineStackTransform< TElastix >::WriteToFile ( const ParametersType param) const
virtual

Function to write transform-parameters to a file.

Reimplemented from elastix::TransformBase< TElastix >.

Field Documentation

template<class TElastix >
ReducedDimensionBSplineTransformBasePointer elastix::BSplineStackTransform< TElastix >::m_BSplineDummySubTransform
private

Dummy sub transform to be used to set sub transforms of stack transform.

Definition at line 298 of file elxBSplineStackTransform.h.

template<class TElastix >
BSplineStackTransformPointer elastix::BSplineStackTransform< TElastix >::m_BSplineStackTransform
private

The B-spline stack transform.

Definition at line 296 of file elxBSplineStackTransform.h.

template<class TElastix >
GridScheduleComputerPointer elastix::BSplineStackTransform< TElastix >::m_GridScheduleComputer
private

Grid schedule computer and grid upsampler.

Definition at line 301 of file elxBSplineStackTransform.h.

template<class TElastix >
GridUpsamplerPointer elastix::BSplineStackTransform< TElastix >::m_GridUpsampler
private

Definition at line 302 of file elxBSplineStackTransform.h.

template<class TElastix >
unsigned int elastix::BSplineStackTransform< TElastix >::m_NumberOfSubTransforms
private

Stack variables.

Definition at line 308 of file elxBSplineStackTransform.h.

template<class TElastix >
unsigned int elastix::BSplineStackTransform< TElastix >::m_SplineOrder
private

Variable to remember order of B-spline transform.

Definition at line 305 of file elxBSplineStackTransform.h.

template<class TElastix >
double elastix::BSplineStackTransform< TElastix >::m_StackOrigin
private

Definition at line 309 of file elxBSplineStackTransform.h.

template<class TElastix >
double elastix::BSplineStackTransform< TElastix >::m_StackSpacing
private

Definition at line 309 of file elxBSplineStackTransform.h.



Generated on 21-03-2014 for elastix by doxygen 1.8.1.2 elastix logo