![]() |
Home | Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | File List | Namespace Members | Data Fields | Globals | Related Pages |
#include <itkElasticBodySplineKernelTransform2.h>
This class defines the elastic body spline (EBS) transformation. It is implemented in as straightforward a manner as possible from the IEEE TMI paper by Davis, Khotanzad, Flamig, and Harms, Vol. 16 No. 3 June 1997 Taken from the paper: The EBS "is based on a physical model of a homogeneous, isotropic, three-dimensional elastic body. The model can approximate the way that some physical objects deform".
Definition at line 57 of file itkElasticBodySplineKernelTransform2.h.
Public Types | |
typedef SmartPointer< const Self > | ConstPointer |
typedef Superclass::InputCovariantVectorType | InputCovariantVectorType |
typedef Superclass::InputPointType | InputPointType |
typedef Superclass::InputVectorType | InputVectorType |
typedef Superclass::JacobianType | JacobianType |
typedef Superclass::OutputCovariantVectorType | OutputCovariantVectorType |
typedef Superclass::OutputPointType | OutputPointType |
typedef Superclass::OutputVectorType | OutputVectorType |
typedef Superclass::ParametersType | ParametersType |
typedef SmartPointer< Self > | Pointer |
typedef Superclass::ScalarType | ScalarType |
typedef ElasticBodySplineKernelTransform2 | Self |
typedef KernelTransform2< TScalarType, NDimensions > | Superclass |
![]() | |
typedef vnl_matrix_fixed< double, NDimensions, NDimensions > | AMatrixType |
typedef vnl_vector_fixed< double, NDimensions > | BMatrixType |
typedef vnl_matrix_fixed< double, NDimensions, 1 > | ColumnMatrixType |
typedef SmartPointer< const Self > | ConstPointer |
typedef vnl_matrix< double > | DMatrixType |
typedef vnl_matrix_fixed< double, NDimensions, NDimensions > | GMatrixType |
typedef vnl_matrix_fixed< double, NDimensions, NDimensions > | IMatrixType |
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 vnl_matrix< double > | KMatrixType |
typedef vnl_matrix< double > | LMatrixType |
typedef Superclass::NonZeroJacobianIndicesType | NonZeroJacobianIndicesType |
typedef Superclass::NumberOfParametersType | NumberOfParametersType |
typedef Superclass::OutputCovariantVectorType | OutputCovariantVectorType |
typedef Superclass::OutputPointType | OutputPointType |
typedef Superclass::OutputVectorType | OutputVectorType |
typedef Superclass::OutputVnlVectorType | OutputVnlVectorType |
typedef Superclass::ParametersType | ParametersType |
typedef vnl_matrix< double > | PMatrixType |
typedef SmartPointer< Self > | Pointer |
typedef PointSetType::PointsContainerConstIterator | PointsConstIterator |
typedef PointSetType::PointsContainer | PointsContainer |
typedef PointSetType::Pointer | PointSetPointer |
typedef DefaultStaticMeshTraits< double, NDimensions, NDimensions, double, double > | PointSetTraitsType |
typedef PointSet< InputPointType, NDimensions, PointSetTraitsType > | PointSetType |
typedef PointSetType::PointsContainerIterator | PointsIterator |
typedef vnl_matrix_fixed< double, 1, NDimensions > | RowMatrixType |
typedef Superclass::ScalarType | ScalarType |
typedef KernelTransform2 | Self |
typedef Superclass::SpatialHessianType | SpatialHessianType |
typedef Superclass::SpatialJacobianType | SpatialJacobianType |
typedef AdvancedTransform< double, NDimensions, NDimensions > | Superclass |
typedef VectorSetType::Pointer | VectorSetPointer |
typedef VectorContainer< unsigned long, InputVectorType > | VectorSetType |
typedef vnl_matrix< double > | WMatrixType |
typedef vnl_matrix< double > | YMatrixType |
![]() | |
typedef SmartPointer< const Self > | ConstPointer |
typedef Superclass::DerivativeType | DerivativeType |
typedef Superclass::FixedParametersType | FixedParametersType |
typedef Superclass::InputCovariantVectorType | InputCovariantVectorType |
typedef Superclass::InputPointType | InputPointType |
typedef Superclass::InputVectorType | InputVectorType |
typedef Superclass::InputVnlVectorType | InputVnlVectorType |
typedef SpatialJacobianType::InternalMatrixType | InternalMatrixType |
typedef Superclass::InverseTransformBasePointer | InverseTransformBasePointer |
typedef Superclass::InverseTransformBaseType | InverseTransformBaseType |
typedef std::vector< SpatialHessianType > | JacobianOfSpatialHessianType |
typedef std::vector< SpatialJacobianType > | JacobianOfSpatialJacobianType |
typedef Superclass::JacobianType | JacobianType |
typedef OutputCovariantVectorType | MovingImageGradientType |
typedef MovingImageGradientType::ValueType | MovingImageGradientValueType |
typedef std::vector< unsigned long > | NonZeroJacobianIndicesType |
typedef Superclass::NumberOfParametersType | NumberOfParametersType |
typedef Superclass::OutputCovariantVectorType | OutputCovariantVectorType |
typedef Superclass::OutputPointType | OutputPointType |
typedef Superclass::OutputVectorType | OutputVectorType |
typedef Superclass::OutputVnlVectorType | OutputVnlVectorType |
typedef Superclass::ParametersType | ParametersType |
typedef Superclass::ParametersValueType | ParametersValueType |
typedef SmartPointer< Self > | Pointer |
typedef Superclass::ScalarType | ScalarType |
typedef AdvancedTransform | Self |
typedef FixedArray< Matrix< ScalarType, InputSpaceDimension, InputSpaceDimension >, OutputSpaceDimension > | SpatialHessianType |
typedef Matrix< ScalarType, OutputSpaceDimension, InputSpaceDimension > | SpatialJacobianType |
typedef Transform< double, NInputDimensions, NOutputDimensions > | Superclass |
typedef Transform< double, NInputDimensions, NOutputDimensions > | TransformType |
typedef TransformType::ConstPointer | TransformTypeConstPointer |
typedef TransformType::Pointer | TransformTypePointer |
Static Public Member Functions | |
static Pointer | New () |
![]() | |
static Pointer | New () |
Protected Types | |
typedef Superclass::GMatrixType | GMatrixType |
![]() | |
typedef vnl_qr< ScalarType > | QRDecompositionType |
typedef vnl_svd< ScalarType > | SVDDecompositionType |
Protected Member Functions | |
void | ComputeG (const InputVectorType &x, GMatrixType &GMatrix) const override |
ElasticBodySplineKernelTransform2 () | |
void | PrintSelf (std::ostream &os, Indent indent) const override |
~ElasticBodySplineKernelTransform2 () override | |
![]() | |
void | ComputeD (void) |
virtual void | ComputeDeformationContribution (const InputPointType &inputPoint, OutputPointType &result) const |
virtual void | ComputeG (const InputVectorType &landmarkVector, GMatrixType &GMatrix) const |
void | ComputeK (void) |
void | ComputeL (void) |
void | ComputeP (void) |
virtual void | ComputeReflexiveG (PointsIterator, GMatrixType &GMatrix) const |
void | ComputeY (void) |
KernelTransform2 () | |
void | PrintSelf (std::ostream &os, Indent indent) const override |
void | ReorganizeW (void) |
~KernelTransform2 () override | |
![]() | |
AdvancedTransform () | |
AdvancedTransform (NumberOfParametersType numberOfParameters) | |
~AdvancedTransform () override | |
Private Member Functions | |
ElasticBodySplineKernelTransform2 (const Self &) | |
void | operator= (const Self &) |
Additional Inherited Members | |
![]() | |
PointSetPointer | m_SourceLandmarks |
PointSetPointer | m_TargetLandmarks |
typedef SmartPointer< const Self > itk::ElasticBodySplineKernelTransform2< TScalarType, NDimensions >::ConstPointer |
Definition at line 68 of file itkElasticBodySplineKernelTransform2.h.
|
protected |
These (rather redundant) typedefs are needed because on SGI, typedefs are not inherited
Definition at line 137 of file itkElasticBodySplineKernelTransform2.h.
typedef Superclass::InputCovariantVectorType itk::ElasticBodySplineKernelTransform2< TScalarType, NDimensions >::InputCovariantVectorType |
Definition at line 126 of file itkElasticBodySplineKernelTransform2.h.
typedef Superclass::InputPointType itk::ElasticBodySplineKernelTransform2< TScalarType, NDimensions >::InputPointType |
These (rather redundant) typedefs are needed because on SGI, typedefs are not inherited
Definition at line 122 of file itkElasticBodySplineKernelTransform2.h.
typedef Superclass::InputVectorType itk::ElasticBodySplineKernelTransform2< TScalarType, NDimensions >::InputVectorType |
Definition at line 124 of file itkElasticBodySplineKernelTransform2.h.
typedef Superclass::JacobianType itk::ElasticBodySplineKernelTransform2< TScalarType, NDimensions >::JacobianType |
Jacobian type.
Definition at line 83 of file itkElasticBodySplineKernelTransform2.h.
typedef Superclass::OutputCovariantVectorType itk::ElasticBodySplineKernelTransform2< TScalarType, NDimensions >::OutputCovariantVectorType |
Definition at line 127 of file itkElasticBodySplineKernelTransform2.h.
typedef Superclass::OutputPointType itk::ElasticBodySplineKernelTransform2< TScalarType, NDimensions >::OutputPointType |
Definition at line 123 of file itkElasticBodySplineKernelTransform2.h.
typedef Superclass::OutputVectorType itk::ElasticBodySplineKernelTransform2< TScalarType, NDimensions >::OutputVectorType |
Definition at line 125 of file itkElasticBodySplineKernelTransform2.h.
typedef Superclass::ParametersType itk::ElasticBodySplineKernelTransform2< TScalarType, NDimensions >::ParametersType |
Parameters type.
Definition at line 80 of file itkElasticBodySplineKernelTransform2.h.
typedef SmartPointer< Self > itk::ElasticBodySplineKernelTransform2< TScalarType, NDimensions >::Pointer |
Definition at line 67 of file itkElasticBodySplineKernelTransform2.h.
typedef Superclass::ScalarType itk::ElasticBodySplineKernelTransform2< TScalarType, NDimensions >::ScalarType |
Scalar type.
Definition at line 77 of file itkElasticBodySplineKernelTransform2.h.
typedef ElasticBodySplineKernelTransform2 itk::ElasticBodySplineKernelTransform2< TScalarType, NDimensions >::Self |
Standard class typedefs.
Definition at line 63 of file itkElasticBodySplineKernelTransform2.h.
typedef KernelTransform2< TScalarType, NDimensions > itk::ElasticBodySplineKernelTransform2< TScalarType, NDimensions >::Superclass |
Definition at line 65 of file itkElasticBodySplineKernelTransform2.h.
|
protected |
|
inlineoverrideprotected |
Definition at line 132 of file itkElasticBodySplineKernelTransform2.h.
|
private |
|
overrideprotected |
Compute G(x) For the elastic body spline, this is:
where ,
is Poisson's Ratio,
and
is the identity matrix.
itk::ElasticBodySplineKernelTransform2< TScalarType, NDimensions >::elxOverrideGetConstMacro | ( | Alpha | , |
TScalarType | |||
) |
Get alpha
|
virtual |
Run-time type information (and related methods).
Reimplemented from itk::KernelTransform2< double, 3 >.
|
inlineoverridevirtual |
Reimplemented from itk::KernelTransform2< double, 3 >.
Definition at line 114 of file itkElasticBodySplineKernelTransform2.h.
itk::ElasticBodySplineKernelTransform2< TScalarType, NDimensions >::itkStaticConstMacro | ( | SpaceDimension | , |
unsigned int | , | ||
Superclass::SpaceDimension | |||
) |
Dimension of the domain space.
|
static |
New macro for creation of through a Smart Pointer
|
private |
|
overrideprotected |
|
inlineoverride |
Set alpha. Alpha is related to Poisson's Ratio ( ) as
Definition at line 92 of file itkElasticBodySplineKernelTransform2.h.
|
inlineoverride |
Convenience method
Definition at line 105 of file itkElasticBodySplineKernelTransform2.h.
|
protected |
alpha, Alpha is related to Poisson's Ratio as
Definition at line 152 of file itkElasticBodySplineKernelTransform2.h.
Generated on 1667476801 for elastix by ![]() |
![]() |