NifTK
16.4.1 - 0798f20
CMIC's Translational Medical Imaging Platform
|
Abstract Base class for constraints, which are objects that return a single double value, such as might be used for a regulariser in a deformable registration algorithm. In practice you create any subclass of this. Then the base similarity measure itkImageToImageMetricWithConstraint will evaluate the cost function, for example, the mutual information of your two images is X, then, if the itkImageToImageMetricWithConstraint has a pointer to a constraint, it will call EvaluateConstraint, which will return a value Y, then itkImageToImageMetricWithConstraint will combine those two numbers together. So, in principal, the itkImageToImageMetricWithConstraint (and derived subclasses) need not even know what or how a constraint works, only that it provides a number. More...
Public Types | |
typedef Constraint | Self |
typedef Object | Superclass |
typedef SmartPointer< Self > | Pointer |
typedef SmartPointer< const Self > | ConstPointer |
typedef SingleValuedCostFunction::MeasureType | MeasureType |
typedef SingleValuedCostFunction::DerivativeType | DerivativeType |
typedef SingleValuedCostFunction::ParametersType | ParametersType |
Public Member Functions | |
virtual const char * | GetClassName () const |
virtual MeasureType | EvaluateConstraint (const ParametersType ¶meters)=0 |
virtual void | EvaluateDerivative (const ParametersType ¶meters, DerivativeType &derivative) const =0 |
Protected Member Functions | |
Constraint () | |
virtual | ~Constraint () |
Abstract Base class for constraints, which are objects that return a single double value, such as might be used for a regulariser in a deformable registration algorithm. In practice you create any subclass of this. Then the base similarity measure itkImageToImageMetricWithConstraint will evaluate the cost function, for example, the mutual information of your two images is X, then, if the itkImageToImageMetricWithConstraint has a pointer to a constraint, it will call EvaluateConstraint, which will return a value Y, then itkImageToImageMetricWithConstraint will combine those two numbers together. So, in principal, the itkImageToImageMetricWithConstraint (and derived subclasses) need not even know what or how a constraint works, only that it provides a number.
typedef SmartPointer<const Self> itk::Constraint::ConstPointer |
typedef SingleValuedCostFunction::DerivativeType itk::Constraint::DerivativeType |
typedef SingleValuedCostFunction::MeasureType itk::Constraint::MeasureType |
typedef SingleValuedCostFunction::ParametersType itk::Constraint::ParametersType |
typedef SmartPointer<Self> itk::Constraint::Pointer |
typedef Constraint itk::Constraint::Self |
Standard "Self" typedef.
typedef Object itk::Constraint::Superclass |
|
inlineprotected |
|
inlineprotectedvirtual |
|
pure virtual |
Derived classes must simply return a number.
Implemented in itk::BSplineBendingEnergyConstraint< TFixedImage, TScalarType, NDimensions, TDeformationScalar >, and itk::SumLogJacobianDeterminantConstraint< TFixedImage, TScalarType, NDimensions, TDeformationScalar >.
|
pure virtual |
Derived class must write the derivative of the constraint into the supplied derivative array.
Implemented in itk::BSplineBendingEnergyConstraint< TFixedImage, TScalarType, NDimensions, TDeformationScalar >, and itk::SumLogJacobianDeterminantConstraint< TFixedImage, TScalarType, NDimensions, TDeformationScalar >.
|
virtual |
Run-time type information (and related methods).
Reimplemented in itk::BSplineBendingEnergyConstraint< TFixedImage, TScalarType, NDimensions, TDeformationScalar >, and itk::SumLogJacobianDeterminantConstraint< TFixedImage, TScalarType, NDimensions, TDeformationScalar >.