template<class
TScalarType = double, unsigned
int NDimensions = 3>
class itk::ElasticBodySplineKernelTransform2< TScalarType, NDimensions >
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 56 of file itkElasticBodySplineKernelTransform2.h.
|
| using | ConstPointer = SmartPointer< const Self > |
| |
| using | Pointer = SmartPointer< Self > |
| |
| using | Self = ElasticBodySplineKernelTransform2 |
| |
| using | Superclass = KernelTransform2< TScalarType, NDimensions > |
| |
| using | AMatrixType = vnl_matrix_fixed< TScalarType, NDimensions, NDimensions > |
| |
| using | BMatrixType = vnl_vector_fixed< TScalarType, NDimensions > |
| |
| using | ColumnMatrixType = vnl_matrix_fixed< TScalarType, NDimensions, 1 > |
| |
| using | ConstPointer = SmartPointer< const Self > |
| |
| using | DMatrixType = vnl_matrix< TScalarType > |
| |
| using | GMatrixType = vnl_matrix_fixed< TScalarType, NDimensions, NDimensions > |
| |
| using | IMatrixType = vnl_matrix_fixed< TScalarType, NDimensions, NDimensions > |
| |
| using | KMatrixType = vnl_matrix< TScalarType > |
| |
| using | LMatrixType = vnl_matrix< TScalarType > |
| |
| using | PMatrixType = vnl_matrix< TScalarType > |
| |
| using | Pointer = SmartPointer< Self > |
| |
| using | PointsConstIterator = typename PointSetType::PointsContainerConstIterator |
| |
| using | PointsContainer = typename PointSetType::PointsContainer |
| |
| using | PointSetPointer = typename PointSetType::Pointer |
| |
| using | PointSetTraitsType = DefaultStaticMeshTraits< TScalarType, NDimensions, NDimensions, TScalarType, TScalarType > |
| |
| using | PointSetType = PointSet< InputPointType, NDimensions, PointSetTraitsType > |
| |
| using | PointsIterator = typename PointSetType::PointsContainerIterator |
| |
| using | RowMatrixType = vnl_matrix_fixed< TScalarType, 1, NDimensions > |
| |
| using | Self = KernelTransform2 |
| |
| using | Superclass = AdvancedTransform< TScalarType, NDimensions, NDimensions > |
| |
| using | VectorSetPointer = typename VectorSetType::Pointer |
| |
| using | VectorSetType = VectorContainer< unsigned long, InputVectorType > |
| |
| using | WMatrixType = vnl_matrix< TScalarType > |
| |
| using | YMatrixType = vnl_matrix< TScalarType > |
| |
| using | ConstPointer = SmartPointer< const Self > |
| |
| using | InternalMatrixType = typename SpatialJacobianType::InternalMatrixType |
| |
| using | InverseTransformBaseType = typename Superclass::InverseTransformBaseType |
| |
| using | JacobianOfSpatialHessianType = std::vector< SpatialHessianType > |
| |
| using | JacobianOfSpatialJacobianType = std::vector< SpatialJacobianType > |
| |
| using | MovingImageGradientType = OutputCovariantVectorType |
| |
| using | MovingImageGradientValueType = typename MovingImageGradientType::ValueType |
| |
| using | NonZeroJacobianIndicesType = std::vector< unsigned long > |
| |
| using | Pointer = SmartPointer< Self > |
| |
| using | Self = AdvancedTransform |
| |
| using | SpatialHessianType = FixedArray< Matrix< ScalarType, InputSpaceDimension, InputSpaceDimension >, OutputSpaceDimension > |
| |
| using | SpatialJacobianType = Matrix< ScalarType, OutputSpaceDimension, InputSpaceDimension > |
| |
| using | Superclass = Transform< TScalarType, NInputDimensions, NOutputDimensions > |
| |
| using | TransformType = Transform< TScalarType, NInputDimensions, NOutputDimensions > |
| |
| using | TransformTypeConstPointer = typename TransformType::ConstPointer |
| |
| using | TransformTypePointer = typename TransformType::Pointer |
| |
|
| virtual TScalarType | GetAlpha () const |
| |
| virtual const char * | GetClassName () const |
| |
| const TScalarType | GetPoissonRatio () const override |
| |
| | ITK_DISALLOW_COPY_AND_MOVE (ElasticBodySplineKernelTransform2) |
| |
| | itkStaticConstMacro (SpaceDimension, unsigned int, Superclass::SpaceDimension) |
| |
| void | SetAlpha (TScalarType Alpha) override |
| |
| void | SetPoissonRatio (const TScalarType Nu) override |
| |
| void | ComputeLInverse () |
| |
| void | ComputeWMatrix () |
| |
| const ParametersType & | GetFixedParameters () const override |
| |
| void | GetJacobian (const InputPointType &, JacobianType &, NonZeroJacobianIndicesType &) const override |
| |
| void | GetJacobianOfSpatialHessian (const InputPointType &, JacobianOfSpatialHessianType &, NonZeroJacobianIndicesType &) const override |
| |
| void | GetJacobianOfSpatialHessian (const InputPointType &, SpatialHessianType &, JacobianOfSpatialHessianType &, NonZeroJacobianIndicesType &) const override |
| |
| void | GetJacobianOfSpatialJacobian (const InputPointType &, JacobianOfSpatialJacobianType &, NonZeroJacobianIndicesType &) const override |
| |
| void | GetJacobianOfSpatialJacobian (const InputPointType &, SpatialJacobianType &, JacobianOfSpatialJacobianType &, NonZeroJacobianIndicesType &) const override |
| |
| virtual const std::string & | GetMatrixInversionMethod () |
| |
| NumberOfParametersType | GetNumberOfParameters () const override |
| |
| const ParametersType & | GetParameters () const override |
| |
| void | GetSpatialHessian (const InputPointType &, SpatialHessianType &) const override |
| |
| void | GetSpatialJacobian (const InputPointType &, SpatialJacobianType &) const override |
| |
| virtual double | GetStiffness () const |
| |
| | ITK_DISALLOW_COPY_AND_MOVE (KernelTransform2) |
| |
| | itkGetModifiableObjectMacro (Displacements, VectorSetType) |
| |
| | itkGetModifiableObjectMacro (SourceLandmarks, PointSetType) |
| |
| | itkGetModifiableObjectMacro (TargetLandmarks, PointSetType) |
| |
| | itkStaticConstMacro (SpaceDimension, unsigned int, NDimensions) |
| |
| void | SetFixedParameters (const ParametersType &) override |
| |
| virtual void | SetIdentity () |
| |
| virtual void | SetMatrixInversionMethod (std::string _arg) |
| |
| void | SetParameters (const ParametersType &) override |
| |
| virtual void | SetSourceLandmarks (PointSetType *) |
| |
| virtual void | SetStiffness (double stiffness) |
| |
| virtual void | SetTargetLandmarks (PointSetType *) |
| |
| OutputCovariantVectorType | TransformCovariantVector (const InputCovariantVectorType &) const override |
| |
| OutputPointType | TransformPoint (const InputPointType &thisPoint) const override |
| |
| OutputVectorType | TransformVector (const InputVectorType &) const override |
| |
| OutputVnlVectorType | TransformVector (const InputVnlVectorType &) const override |
| |
| virtual void | UpdateParameters () |
| |
| void | ComputeJacobianWithRespectToParameters (const InputPointType &, JacobianType &) const override |
| |
| virtual void | EvaluateJacobianWithImageGradientProduct (const InputPointType &inputPoint, const MovingImageGradientType &movingImageGradient, DerivativeType &imageJacobian, NonZeroJacobianIndicesType &nonZeroJacobianIndices) const |
| |
| virtual bool | GetHasNonZeroJacobianOfSpatialHessian () const |
| |
| virtual bool | GetHasNonZeroSpatialHessian () const |
| |
| virtual NumberOfParametersType | GetNumberOfNonZeroJacobianIndices () const |
| |
| | ITK_DISALLOW_COPY_AND_MOVE (AdvancedTransform) |
| |
| | itkStaticConstMacro (InputSpaceDimension, unsigned int, NInputDimensions) |
| |
| | itkStaticConstMacro (OutputSpaceDimension, unsigned int, NOutputDimensions) |
| |