template<class TFixedImage, class
TScalarType>
class itk::TransformRigidityPenaltyTerm< TFixedImage, TScalarType >
A cost function that calculates a rigidity penalty term.
A cost function that calculates a rigidity penalty term based on the B-spline coefficients of a B-spline transformation. This penalty term is a function of the 1st and 2nd order spatial derivatives of a transformation.
The intended use for this metric is to filter a B-spline coefficient image in order to calculate a rigidity penalty term on a B-spline transform.
The RigidityPenaltyTermValueImageFilter at each pixel location is computed by convolution with some separable 1D kernels.
The rigid penalty term penalizes deviations from a rigid transformation at regions specified by the so-called rigidity images.
This metric only works with B-splines as a transformation model.
References:
[1] M. Staring, S. Klein and J.P.W. Pluim, "A Rigidity Penalty Term for Nonrigid Registration," Medical Physics, vol. 34, no. 11, pp. 4098 - 4108, November 2007.
- See also
- BSplineTransform
Definition at line 71 of file itkTransformRigidityPenaltyTerm.h.
|
typedef Superclass::BSplineOrder1TransformPointer | BSplineOrder1TransformPointer |
|
typedef Superclass::BSplineOrder1TransformType | BSplineOrder1TransformType |
|
typedef Superclass::BSplineOrder2TransformPointer | BSplineOrder2TransformPointer |
|
typedef Superclass::BSplineOrder2TransformType | BSplineOrder2TransformType |
|
typedef Superclass::BSplineOrder3TransformPointer | BSplineOrder3TransformPointer |
|
typedef Superclass::BSplineOrder3TransformType | BSplineOrder3TransformType |
|
typedef BSplineTransformType::Pointer | BSplineTransformPointer |
|
typedef BSplineOrder3TransformType | BSplineTransformType |
|
typedef ImageRegionIterator< CoefficientImageType > | CoefficientImageIteratorType |
|
typedef CoefficientImageType::Pointer | CoefficientImagePointer |
|
typedef CoefficientImageType::SpacingType | CoefficientImageSpacingType |
|
typedef BSplineTransformType::ImageType | CoefficientImageType |
|
typedef Superclass::CombinationTransformType | CombinationTransformType |
|
typedef SmartPointer< const Self > | ConstPointer |
|
typedef Superclass::CoordinateRepresentationType | CoordinateRepresentationType |
|
typedef Superclass::DerivativeType | DerivativeType |
|
typedef Superclass::DerivativeValueType | DerivativeValueType |
|
typedef DilateFilterType::Pointer | DilateFilterPointer |
|
typedef GrayscaleDilateImageFilter< RigidityImageType, RigidityImageType, StructuringElementType > | DilateFilterType |
|
typedef Superclass::FixedImageConstPointer | FixedImageConstPointer |
|
typedef Superclass::FixedImageMaskPointer | FixedImageMaskPointer |
|
typedef Superclass::FixedImageMaskType | FixedImageMaskType |
|
typedef Superclass::FixedImagePixelType | FixedImagePixelType |
|
typedef Superclass::FixedImagePointer | FixedImagePointer |
|
typedef Superclass::FixedImageRegionType | FixedImageRegionType |
|
typedef Superclass::FixedImageType | FixedImageType |
|
typedef Superclass::GradientImageFilterPointer | GradientImageFilterPointer |
|
typedef Superclass::GradientImageFilterType | GradientImageFilterType |
|
typedef Superclass::GradientImagePointer | GradientImagePointer |
|
typedef Superclass::GradientImageType | GradientImageType |
|
typedef Superclass::GradientPixelType | GradientPixelType |
|
typedef BSplineTransformType::SpacingType | GridSpacingType |
|
typedef Superclass::ImageSampleContainerPointer | ImageSampleContainerPointer |
|
typedef Superclass::ImageSampleContainerType | ImageSampleContainerType |
|
typedef Superclass::InputPointType | InputPointType |
|
typedef Superclass::InternalMatrixType | InternalMatrixType |
|
typedef Superclass::InterpolatorPointer | InterpolatorPointer |
|
typedef Superclass::InterpolatorType | InterpolatorType |
|
typedef Superclass::JacobianOfSpatialHessianType | JacobianOfSpatialHessianType |
|
typedef Superclass::JacobianOfSpatialJacobianType | JacobianOfSpatialJacobianType |
|
typedef Superclass::MeasureType | MeasureType |
|
typedef Superclass::MovingImageConstPointer | MovingImageConstPointer |
|
typedef Superclass::MovingImageMaskPointer | MovingImageMaskPointer |
|
typedef Superclass::MovingImageMaskType | MovingImageMaskType |
|
typedef Superclass::MovingImagePixelType | MovingImagePixelType |
|
typedef Superclass::MovingImagePointer | MovingImagePointer |
|
typedef Superclass::MovingImageType | MovingImageType |
|
typedef NeighborhoodIterator< CoefficientImageType > | NeighborhoodIteratorType |
|
typedef NeighborhoodType::SizeType | NeighborhoodSizeType |
|
typedef Neighborhood< ScalarType, itkGetStaticConstMacro(FixedImageDimension) > | NeighborhoodType |
|
typedef NeighborhoodOperatorImageFilter< CoefficientImageType, CoefficientImageType > | NOIFType |
|
typedef Superclass::OutputPointType | OutputPointType |
|
typedef Superclass::ParametersType | ParametersType |
|
typedef SmartPointer< Self > | Pointer |
|
typedef NeighborhoodIteratorType::RadiusType | RadiusType |
|
typedef Superclass::RealType | RealType |
|
typedef RigidityImageType::IndexType | RigidityImageIndexType |
|
typedef ImageRegionIterator< RigidityImageType > | RigidityImageIteratorType |
|
typedef RigidityImageType::Pointer | RigidityImagePointer |
|
typedef RigidityImageType::PointType | RigidityImagePointType |
|
typedef RigidityImageType::RegionType | RigidityImageRegionType |
|
typedef CoefficientImageType | RigidityImageType |
|
typedef RigidityImageType::PixelType | RigidityPixelType |
|
typedef Superclass::ScalarType | ScalarType |
|
typedef TransformRigidityPenaltyTerm | Self |
|
typedef StructuringElementType::RadiusType | SERadiusType |
|
typedef Superclass::SpatialHessianType | SpatialHessianType |
|
typedef Superclass::SpatialJacobianType | SpatialJacobianType |
|
typedef BinaryBallStructuringElement< RigidityPixelType, itkGetStaticConstMacro(FixedImageDimension) > | StructuringElementType |
|
typedef TransformPenaltyTerm< TFixedImage, TScalarType > | Superclass |
|
typedef Superclass::TransformJacobianType | TransformJacobianType |
|
typedef Superclass::TransformParametersType | TransformParametersType |
|
typedef Superclass::TransformPointer | TransformPointer |
|
typedef Superclass::TransformType | TransformType |
|
typedef Superclass::BSplineOrder1TransformPointer | BSplineOrder1TransformPointer |
|
typedef Superclass::BSplineOrder1TransformType | BSplineOrder1TransformType |
|
typedef Superclass::BSplineOrder2TransformPointer | BSplineOrder2TransformPointer |
|
typedef Superclass::BSplineOrder2TransformType | BSplineOrder2TransformType |
|
typedef Superclass::BSplineOrder3TransformPointer | BSplineOrder3TransformPointer |
|
typedef Superclass::BSplineOrder3TransformType | BSplineOrder3TransformType |
|
typedef Superclass::CombinationTransformType | CombinationTransformType |
|
typedef SmartPointer< const Self > | ConstPointer |
|
typedef Superclass::CoordinateRepresentationType | CoordinateRepresentationType |
|
typedef Superclass::DerivativeType | DerivativeType |
|
typedef Superclass::DerivativeValueType | DerivativeValueType |
|
typedef Superclass::FixedImageConstPointer | FixedImageConstPointer |
|
typedef Superclass::FixedImageMaskPointer | FixedImageMaskPointer |
|
typedef Superclass::FixedImageMaskType | FixedImageMaskType |
|
typedef Superclass::FixedImagePixelType | FixedImagePixelType |
|
typedef Superclass::FixedImagePointer | FixedImagePointer |
|
typedef Superclass::FixedImageRegionType | FixedImageRegionType |
|
typedef Superclass::FixedImageType | FixedImageType |
|
typedef Superclass::GradientImageFilterPointer | GradientImageFilterPointer |
|
typedef Superclass::GradientImageFilterType | GradientImageFilterType |
|
typedef Superclass::GradientImagePointer | GradientImagePointer |
|
typedef Superclass::GradientImageType | GradientImageType |
|
typedef Superclass::GradientPixelType | GradientPixelType |
|
typedef Superclass::ImageSampleContainerPointer | ImageSampleContainerPointer |
|
typedef Superclass::ImageSampleContainerType | ImageSampleContainerType |
|
typedef Superclass::InputPointType | InputPointType |
|
typedef TransformType::InternalMatrixType | InternalMatrixType |
|
typedef Superclass::InterpolatorPointer | InterpolatorPointer |
|
typedef Superclass::InterpolatorType | InterpolatorType |
|
typedef TransformType::JacobianOfSpatialHessianType | JacobianOfSpatialHessianType |
|
typedef TransformType::JacobianOfSpatialJacobianType | JacobianOfSpatialJacobianType |
|
typedef Superclass::MeasureType | MeasureType |
|
typedef Superclass::MovingImageConstPointer | MovingImageConstPointer |
|
typedef Superclass::MovingImageMaskPointer | MovingImageMaskPointer |
|
typedef Superclass::MovingImageMaskType | MovingImageMaskType |
|
typedef Superclass::MovingImagePixelType | MovingImagePixelType |
|
typedef Superclass::MovingImagePointer | MovingImagePointer |
|
typedef Superclass::MovingImageType | MovingImageType |
|
typedef Superclass::OutputPointType | OutputPointType |
|
typedef Superclass::ParametersType | ParametersType |
|
typedef SmartPointer< Self > | Pointer |
|
typedef Superclass::RealType | RealType |
|
typedef TScalarType | ScalarType |
|
typedef TransformPenaltyTerm | Self |
|
typedef TransformType::SpatialHessianType | SpatialHessianType |
|
typedef TransformType::SpatialJacobianType | SpatialJacobianType |
|
typedef AdvancedImageToImageMetric< TFixedImage, TFixedImage > | Superclass |
|
typedef Superclass::ThreaderType | ThreaderType |
|
typedef Superclass::ThreadInfoType | ThreadInfoType |
|
typedef Superclass::TransformJacobianType | TransformJacobianType |
|
typedef Superclass::TransformParametersType | TransformParametersType |
|
typedef Superclass::AdvancedTransformType | TransformType |
|
typedef AdvancedTransform< ScalarType, FixedImageDimension, MovingImageDimension > | AdvancedTransformType |
|
typedef BSplineOrder1TransformType::Pointer | BSplineOrder1TransformPointer |
|
typedef AdvancedBSplineDeformableTransform< ScalarType, FixedImageDimension, 1 > | BSplineOrder1TransformType |
|
typedef BSplineOrder2TransformType::Pointer | BSplineOrder2TransformPointer |
|
typedef AdvancedBSplineDeformableTransform< ScalarType, FixedImageDimension, 2 > | BSplineOrder2TransformType |
|
typedef BSplineOrder3TransformType::Pointer | BSplineOrder3TransformPointer |
|
typedef AdvancedBSplineDeformableTransform< ScalarType, FixedImageDimension, 3 > | BSplineOrder3TransformType |
|
typedef AdvancedCombinationTransform< ScalarType, FixedImageDimension > | CombinationTransformType |
|
typedef SmartPointer< const Self > | ConstPointer |
|
typedef Superclass::CoordinateRepresentationType | CoordinateRepresentationType |
|
typedef Superclass::DerivativeType | DerivativeType |
|
typedef DerivativeType::ValueType | DerivativeValueType |
|
typedef Superclass::FixedImageConstPointer | FixedImageConstPointer |
|
typedef FixedImageLimiterType::OutputType | FixedImageLimiterOutputType |
|
typedef FixedImageLimiterType::Pointer | FixedImageLimiterPointer |
|
typedef LimiterFunctionBase< RealType, FixedImageDimension > | FixedImageLimiterType |
|
typedef Superclass::FixedImageMaskPointer | FixedImageMaskPointer |
|
typedef ImageMaskSpatialObject< itkGetStaticConstMacro(FixedImageDimension) > | FixedImageMaskSpatialObject2Type |
|
typedef Superclass::FixedImageMaskType | FixedImageMaskType |
|
typedef FixedImageType::PixelType | FixedImagePixelType |
|
typedef FixedImageType::Pointer | FixedImagePointer |
|
typedef Superclass::FixedImageRegionType | FixedImageRegionType |
|
typedef Superclass::FixedImageType | FixedImageType |
|
typedef Superclass::GradientImageFilterPointer | GradientImageFilterPointer |
|
typedef Superclass::GradientImageFilterType | GradientImageFilterType |
|
typedef Superclass::GradientImagePointer | GradientImagePointer |
|
typedef Superclass::GradientImageType | GradientImageType |
|
typedef Superclass::GradientPixelType | GradientPixelType |
|
typedef vnl_sparse_matrix< HessianValueType > | HessianType |
|
typedef DerivativeType::ValueType | HessianValueType |
|
typedef ImageSamplerType::OutputVectorContainerPointer | ImageSampleContainerPointer |
|
typedef ImageSamplerType::OutputVectorContainerType | ImageSampleContainerType |
|
typedef ImageSamplerType::Pointer | ImageSamplerPointer |
|
typedef ImageSamplerBase< FixedImageType > | ImageSamplerType |
|
typedef Superclass::InputPointType | InputPointType |
|
typedef Superclass::InterpolatorPointer | InterpolatorPointer |
|
typedef Superclass::InterpolatorType | InterpolatorType |
|
typedef Superclass::MeasureType | MeasureType |
|
typedef Superclass::MovingImageConstPointer | MovingImageConstPointer |
|
typedef FixedArray< double, Self::MovingImageDimension > | MovingImageDerivativeScalesType |
|
typedef MovingImageLimiterType::OutputType | MovingImageLimiterOutputType |
|
typedef MovingImageLimiterType::Pointer | MovingImageLimiterPointer |
|
typedef LimiterFunctionBase< RealType, MovingImageDimension > | MovingImageLimiterType |
|
typedef Superclass::MovingImageMaskPointer | MovingImageMaskPointer |
|
typedef ImageMaskSpatialObject< itkGetStaticConstMacro(MovingImageDimension) > | MovingImageMaskSpatialObject2Type |
|
typedef Superclass::MovingImageMaskType | MovingImageMaskType |
|
typedef Superclass::MovingImagePixelType | MovingImagePixelType |
|
typedef MovingImageType::Pointer | MovingImagePointer |
|
typedef MovingImageType::RegionType | MovingImageRegionType |
|
typedef Superclass::MovingImageType | MovingImageType |
|
typedef AdvancedTransformType::NumberOfParametersType | NumberOfParametersType |
|
typedef Superclass::OutputPointType | OutputPointType |
|
typedef Superclass::ParametersType | ParametersType |
|
typedef SmartPointer< Self > | Pointer |
|
typedef Superclass::RealType | RealType |
|
typedef TransformType::ScalarType | ScalarType |
|
typedef AdvancedImageToImageMetric | Self |
|
typedef ImageToImageMetric< TFixedImage, TFixedImage > | Superclass |
|
typedef itk::PlatformMultiThreader | ThreaderType |
|
typedef ThreaderType::WorkUnitInfo | ThreadInfoType |
|
typedef Superclass::TransformJacobianType | TransformJacobianType |
|
typedef Superclass::TransformParametersType | TransformParametersType |
|
typedef Superclass::TransformPointer | TransformPointer |
|
typedef Superclass::TransformType | TransformType |
|
|
void | BeforeThreadedGetValueAndDerivative (const TransformParametersType ¶meters) const override |
|
void | CheckUseAndCalculationBooleans (void) |
|
void | FillRigidityCoefficientImage (const ParametersType ¶meters) const |
|
virtual const char * | GetClassName () const |
|
void | GetDerivative (const ParametersType ¶meters, DerivativeType &derivative) const override |
|
virtual const MeasureType & | GetLinearityConditionGradientMagnitude () |
|
virtual const MeasureType & | GetLinearityConditionValue () |
|
virtual ScalarType | GetLinearityConditionWeight () |
|
virtual const MeasureType & | GetOrthonormalityConditionGradientMagnitude () |
|
virtual const MeasureType & | GetOrthonormalityConditionValue () |
|
virtual ScalarType | GetOrthonormalityConditionWeight () |
|
virtual const MeasureType & | GetPropernessConditionGradientMagnitude () |
|
virtual const MeasureType & | GetPropernessConditionValue () |
|
virtual ScalarType | GetPropernessConditionWeight () |
|
MeasureType | GetValue (const ParametersType ¶meters) const override |
|
void | GetValueAndDerivative (const ParametersType ¶meters, MeasureType &value, DerivativeType &derivative) const override |
|
void | Initialize (void) override |
|
| itkStaticConstMacro (FixedImageDimension, unsigned int, FixedImageType::ImageDimension) |
|
| itkStaticConstMacro (ImageDimension, unsigned int, FixedImageType::ImageDimension) |
|
| itkStaticConstMacro (MovingImageDimension, unsigned int, FixedImageType::ImageDimension) |
|
virtual void | SetBSplineTransform (BSplineTransformType *_arg) |
|
virtual void | SetCalculateLinearityCondition (bool _arg) |
|
virtual void | SetCalculateOrthonormalityCondition (bool _arg) |
|
virtual void | SetCalculatePropernessCondition (bool _arg) |
|
virtual void | SetDilateRigidityImages (bool _arg) |
|
virtual void | SetDilationRadiusMultiplier (CoordinateRepresentationType _arg) |
|
virtual void | SetFixedRigidityImage (RigidityImageType *_arg) |
|
virtual void | SetLinearityConditionWeight (ScalarType _arg) |
|
virtual void | SetMovingRigidityImage (RigidityImageType *_arg) |
|
virtual void | SetOrthonormalityConditionWeight (ScalarType _arg) |
|
virtual void | SetPropernessConditionWeight (ScalarType _arg) |
|
virtual void | SetUseFixedRigidityImage (bool _arg) |
|
virtual void | SetUseLinearityCondition (bool _arg) |
|
virtual void | SetUseMovingRigidityImage (bool _arg) |
|
virtual void | SetUseOrthonormalityCondition (bool _arg) |
|
virtual void | SetUsePropernessCondition (bool _arg) |
|
virtual const char * | GetClassName () const |
|
| itkStaticConstMacro (FixedImageDimension, unsigned int, FixedImageType::ImageDimension) |
|
virtual void | BeforeThreadedGetValueAndDerivative (const TransformParametersType ¶meters) const |
|
virtual const char * | GetClassName () const |
|
virtual const FixedImageLimiterType * | GetFixedImageLimiter () |
|
virtual double | GetFixedLimitRangeRatio () const |
|
virtual ImageSamplerType * | GetImageSampler (void) const |
|
virtual const MovingImageDerivativeScalesType & | GetMovingImageDerivativeScales () |
|
virtual const MovingImageLimiterType * | GetMovingImageLimiter () |
|
virtual double | GetMovingLimitRangeRatio () const |
|
virtual double | GetRequiredRatioOfValidSamples () const |
|
virtual bool | GetScaleGradientWithRespectToMovingImageOrientation () const |
|
virtual void | GetSelfHessian (const TransformParametersType ¶meters, HessianType &H) const |
|
const AdvancedTransformType * | GetTransform (void) const override |
|
virtual bool | GetUseFixedImageLimiter () const |
|
virtual bool | GetUseImageSampler () const |
|
virtual const bool & | GetUseMetricSingleThreaded () |
|
virtual bool | GetUseMovingImageDerivativeScales () const |
|
virtual bool | GetUseMovingImageLimiter () const |
|
virtual const bool & | GetUseMultiThread () |
|
void | Initialize (void) override |
|
| itkStaticConstMacro (FixedImageDimension, unsigned int, TFixedImage::ImageDimension) |
|
| itkStaticConstMacro (MovingImageDimension, unsigned int, TMovingImage::ImageDimension) |
|
virtual void | SetFixedImageLimiter (FixedImageLimiterType *_arg) |
|
virtual void | SetFixedLimitRangeRatio (double _arg) |
|
virtual void | SetImageSampler (ImageSamplerType *_arg) |
|
virtual void | SetMovingImageDerivativeScales (MovingImageDerivativeScalesType _arg) |
|
virtual void | SetMovingImageLimiter (MovingImageLimiterType *_arg) |
|
virtual void | SetMovingLimitRangeRatio (double _arg) |
|
virtual void | SetNumberOfWorkUnits (ThreadIdType numberOfThreads) |
|
virtual void | SetRequiredRatioOfValidSamples (double _arg) |
|
virtual void | SetScaleGradientWithRespectToMovingImageOrientation (bool _arg) |
|
virtual void | SetTransform (AdvancedTransformType *arg) |
|
virtual void | SetUseMetricSingleThreaded (bool _arg) |
|
virtual void | SetUseMovingImageDerivativeScales (bool _arg) |
|
virtual void | SetUseMultiThread (bool _arg) |
|
virtual void | UseMetricSingleThreadedOff () |
|
virtual void | UseMetricSingleThreadedOn () |
|
virtual void | UseMultiThreadOff () |
|
virtual void | UseMultiThreadOn () |
|
|
void | PrintSelf (std::ostream &os, Indent indent) const override |
|
| TransformRigidityPenaltyTerm () |
|
| ~TransformRigidityPenaltyTerm () override |
|
virtual bool | CheckForBSplineTransform2 (BSplineOrder3TransformPointer &bspline) const |
|
| TransformPenaltyTerm () |
|
| ~TransformPenaltyTerm () override |
|
| AdvancedImageToImageMetric () |
|
virtual void | AfterThreadedGetValue (MeasureType &value) const |
|
virtual void | AfterThreadedGetValueAndDerivative (MeasureType &value, DerivativeType &derivative) const |
|
virtual void | CheckForAdvancedTransform (void) |
|
virtual void | CheckForBSplineInterpolator (void) |
|
virtual void | CheckForBSplineTransform (void) const |
|
virtual void | CheckNumberOfSamples (unsigned long wanted, unsigned long found) const |
|
virtual bool | EvaluateMovingImageValueAndDerivative (const MovingImagePointType &mappedPoint, RealType &movingImageValue, MovingImageDerivativeType *gradient) const |
|
virtual bool | EvaluateTransformJacobian (const FixedImagePointType &fixedImagePoint, TransformJacobianType &jacobian, NonZeroJacobianIndicesType &nzji) const |
|
virtual void | EvaluateTransformJacobianInnerProduct (const TransformJacobianType &jacobian, const MovingImageDerivativeType &movingImageDerivative, DerivativeType &imageJacobian) const |
|
virtual void | InitializeImageSampler (void) |
|
virtual void | InitializeLimiters (void) |
|
virtual void | InitializeThreadingParameters (void) const |
|
virtual bool | IsInsideMovingMask (const MovingImagePointType &point) const |
|
| itkAlignedTypedef (ITK_CACHE_LINE_ALIGNMENT, PaddedGetValueAndDerivativePerThreadStruct, AlignedGetValueAndDerivativePerThreadStruct) |
|
| itkAlignedTypedef (ITK_CACHE_LINE_ALIGNMENT, PaddedGetValuePerThreadStruct, AlignedGetValuePerThreadStruct) |
|
| itkPadStruct (ITK_CACHE_LINE_ALIGNMENT, GetValueAndDerivativePerThreadStruct, PaddedGetValueAndDerivativePerThreadStruct) |
|
| itkPadStruct (ITK_CACHE_LINE_ALIGNMENT, GetValuePerThreadStruct, PaddedGetValuePerThreadStruct) |
|
void | LaunchGetValueAndDerivativeThreaderCallback (void) const |
|
void | LaunchGetValueThreaderCallback (void) const |
|
void | PrintSelf (std::ostream &os, Indent indent) const override |
|
virtual void | SetUseFixedImageLimiter (bool _arg) |
|
virtual void | SetUseImageSampler (bool _arg) |
|
virtual void | SetUseMovingImageLimiter (bool _arg) |
|
virtual void | ThreadedGetValue (ThreadIdType threadID) |
|
virtual void | ThreadedGetValueAndDerivative (ThreadIdType threadID) |
|
virtual bool | TransformPoint (const FixedImagePointType &fixedImagePoint, MovingImagePointType &mappedPoint) const |
|
| ~AdvancedImageToImageMetric () override |
|