template<class TFixedImage, class TMovingImage>
class itk::ParzenWindowMutualInformationImageToImageMetric< TFixedImage, TMovingImage >
Computes the mutual information between two images to be registered using the method of Mattes et al.
ParzenWindowMutualInformationImageToImageMetric computes the mutual information between a fixed and moving image to be registered.
The calculations are based on the method of Mattes et al. [1,2], where the probability density distribution are estimated using Parzen histograms. Once the PDFs have been constructed, the mutual information is obtained by double summing over the discrete PDF values.
Construction of the PDFs is implemented in the superclass ParzenWindowHistogramImageToImageMetric.
This implementation of the MattesMutualInformation is based on the AdvancedImageToImageMetric, which means that:
- It uses the ImageSampler-framework
- It makes use of the compact support of B-splines, in case of B-spline transforms.
- Image derivatives are computed using either the B-spline interpolator implementation or by nearest neighbor interpolation of a precomputed central difference image.
- A minimum number of samples that should map within the moving image (mask) can be specified.
Notes:
- This class returns the negative mutual information value.
- This class in not thread safe due the private data structures used to the store the marginal and joint pdfs.
References:
[1] "Nonrigid multimodality image registration"
D. Mattes, D. R. Haynor, H. Vesselle, T. Lewellen and W. Eubank
Medical Imaging 2001: Image Processing, 2001, pp. 1609-1620.
[2] "PET-CT Image Registration in the Chest Using Free-form Deformations"
D. Mattes, D. R. Haynor, H. Vesselle, T. Lewellen and W. Eubank
IEEE Transactions in Medical Imaging. To Appear.
[3] "Optimization of Mutual Information for MultiResolution Image
Registration"
P. Thevenaz and M. Unser
IEEE Transactions in Image Processing, 9(12) December 2000.
- See also
- ParzenWindowHistogramImageToImageMetric
Definition at line 75 of file itkParzenWindowMutualInformationImageToImageMetric.h.
|
using | ConstPointer = SmartPointer< const Self > |
|
using | DerivativeValueType = typename DerivativeType::ValueType |
|
using | FixedImageLimiterOutputType = typename FixedImageLimiterType::OutputType |
|
using | FixedImageLimiterType = LimiterFunctionBase< RealType, FixedImageDimension > |
|
using | FixedImagePixelType = typename FixedImageType::PixelType |
|
using | ImageSampleContainerPointer = typename ImageSamplerType::OutputVectorContainerPointer |
|
using | ImageSampleContainerType = typename ImageSamplerType::OutputVectorContainerType |
|
using | ImageSamplerPointer = typename ImageSamplerType::Pointer |
|
using | ImageSamplerType = ImageSamplerBase< FixedImageType > |
|
using | MovingImageDerivativeScalesType = FixedArray< double, Self::MovingImageDimension > |
|
using | MovingImageLimiterOutputType = typename MovingImageLimiterType::OutputType |
|
using | MovingImageLimiterType = LimiterFunctionBase< RealType, MovingImageDimension > |
|
using | MovingImageRegionType = typename MovingImageType::RegionType |
|
using | Pointer = SmartPointer< Self > |
|
using | Self = ParzenWindowMutualInformationImageToImageMetric |
|
using | Superclass = ParzenWindowHistogramImageToImageMetric< TFixedImage, TMovingImage > |
|
using | ThreaderType = itk::PlatformMultiThreader |
|
using | ThreadInfoType = typename ThreaderType::WorkUnitInfo |
|
using | ConstPointer = SmartPointer< const Self > |
|
using | DerivativeValueType = typename DerivativeType::ValueType |
|
using | FixedImageLimiterOutputType = typename FixedImageLimiterType::OutputType |
|
using | FixedImageLimiterType = LimiterFunctionBase< RealType, FixedImageDimension > |
|
using | FixedImagePixelType = typename FixedImageType::PixelType |
|
using | ImageSampleContainerPointer = typename ImageSamplerType::OutputVectorContainerPointer |
|
using | ImageSampleContainerType = typename ImageSamplerType::OutputVectorContainerType |
|
using | ImageSamplerPointer = typename ImageSamplerType::Pointer |
|
using | ImageSamplerType = ImageSamplerBase< FixedImageType > |
|
using | MovingImageDerivativeScalesType = FixedArray< double, Self::MovingImageDimension > |
|
using | MovingImageLimiterOutputType = typename MovingImageLimiterType::OutputType |
|
using | MovingImageLimiterType = LimiterFunctionBase< RealType, MovingImageDimension > |
|
using | MovingImageRegionType = typename MovingImageType::RegionType |
|
using | Pointer = SmartPointer< Self > |
|
using | Self = ParzenWindowHistogramImageToImageMetric |
|
using | Superclass = AdvancedImageToImageMetric< TFixedImage, TMovingImage > |
|
using | ThreaderType = itk::PlatformMultiThreader |
|
using | ThreadInfoType = typename ThreaderType::WorkUnitInfo |
|
using | AdvancedTransformType = AdvancedTransform< ScalarType, FixedImageDimension, MovingImageDimension > |
|
using | BSplineOrder1TransformPointer = typename BSplineOrder1TransformType::Pointer |
|
using | BSplineOrder1TransformType = AdvancedBSplineDeformableTransform< ScalarType, FixedImageDimension, 1 > |
|
using | BSplineOrder2TransformPointer = typename BSplineOrder2TransformType::Pointer |
|
using | BSplineOrder2TransformType = AdvancedBSplineDeformableTransform< ScalarType, FixedImageDimension, 2 > |
|
using | BSplineOrder3TransformPointer = typename BSplineOrder3TransformType::Pointer |
|
using | BSplineOrder3TransformType = AdvancedBSplineDeformableTransform< ScalarType, FixedImageDimension, 3 > |
|
using | CombinationTransformType = AdvancedCombinationTransform< ScalarType, FixedImageDimension > |
|
using | ConstPointer = SmartPointer< const Self > |
|
using | DerivativeValueType = typename DerivativeType::ValueType |
|
using | FixedImageLimiterOutputType = typename FixedImageLimiterType::OutputType |
|
using | FixedImageLimiterPointer = typename FixedImageLimiterType::Pointer |
|
using | FixedImageLimiterType = LimiterFunctionBase< RealType, FixedImageDimension > |
|
using | FixedImageMaskSpatialObject2Type = ImageMaskSpatialObject< Self::FixedImageDimension > |
|
using | FixedImagePixelType = typename FixedImageType::PixelType |
|
using | FixedImagePointer = typename FixedImageType::Pointer |
|
using | HessianType = vnl_sparse_matrix< HessianValueType > |
|
using | HessianValueType = typename DerivativeType::ValueType |
|
using | ImageSampleContainerPointer = typename ImageSamplerType::OutputVectorContainerPointer |
|
using | ImageSampleContainerType = typename ImageSamplerType::OutputVectorContainerType |
|
using | ImageSamplerPointer = typename ImageSamplerType::Pointer |
|
using | ImageSamplerType = ImageSamplerBase< FixedImageType > |
|
using | MovingImageDerivativeScalesType = FixedArray< double, Self::MovingImageDimension > |
|
using | MovingImageLimiterOutputType = typename MovingImageLimiterType::OutputType |
|
using | MovingImageLimiterPointer = typename MovingImageLimiterType::Pointer |
|
using | MovingImageLimiterType = LimiterFunctionBase< RealType, MovingImageDimension > |
|
using | MovingImageMaskSpatialObject2Type = ImageMaskSpatialObject< Self::MovingImageDimension > |
|
using | MovingImagePointer = typename MovingImageType::Pointer |
|
using | MovingImageRegionType = typename MovingImageType::RegionType |
|
using | NumberOfParametersType = typename AdvancedTransformType::NumberOfParametersType |
|
using | Pointer = SmartPointer< Self > |
|
using | ScalarType = typename TransformType::ScalarType |
|
using | Self = AdvancedImageToImageMetric |
|
using | Superclass = ImageToImageMetric< TFixedImage, TMovingImage > |
|
using | ThreaderType = itk::PlatformMultiThreader |
|
using | ThreadInfoType = typename ThreaderType::WorkUnitInfo |
|
|
virtual const char * | GetClassName () const |
|
virtual bool | GetUseJacobianPreconditioning () const |
|
MeasureType | GetValue (const ParametersType ¶meters) const override |
|
| ITK_DISALLOW_COPY_AND_MOVE (ParzenWindowMutualInformationImageToImageMetric) |
|
| itkStaticConstMacro (FixedImageDimension, unsigned int, FixedImageType::ImageDimension) |
|
| itkStaticConstMacro (MovingImageDimension, unsigned int, MovingImageType::ImageDimension) |
|
virtual void | SetUseJacobianPreconditioning (bool _arg) |
|
virtual const char * | GetClassName () const |
|
void | GetDerivative (const ParametersType ¶meters, DerivativeType &Derivative) const override |
|
virtual double | GetFiniteDifferencePerturbation () const |
|
virtual unsigned int | GetFixedKernelBSplineOrder () const |
|
virtual unsigned int | GetMovingKernelBSplineOrder () const |
|
virtual unsigned long | GetNumberOfFixedHistogramBins () const |
|
virtual unsigned long | GetNumberOfMovingHistogramBins () const |
|
virtual bool | GetUseDerivative () const |
|
virtual const bool & | GetUseExplicitPDFDerivatives () |
|
virtual bool | GetUseFiniteDifferenceDerivative () const |
|
void | GetValueAndDerivative (const ParametersType ¶meters, MeasureType &value, DerivativeType &derivative) const override |
|
void | Initialize () override |
|
| ITK_DISALLOW_COPY_AND_MOVE (ParzenWindowHistogramImageToImageMetric) |
|
| itkStaticConstMacro (FixedImageDimension, unsigned int, FixedImageType::ImageDimension) |
|
| itkStaticConstMacro (MovingImageDimension, unsigned int, MovingImageType::ImageDimension) |
|
virtual void | SetFiniteDifferencePerturbation (double _arg) |
|
virtual void | SetFixedKernelBSplineOrder (unsigned int _arg) |
|
virtual void | SetMovingKernelBSplineOrder (unsigned int _arg) |
|
virtual void | SetNumberOfFixedHistogramBins (unsigned long _arg) |
|
virtual void | SetNumberOfMovingHistogramBins (unsigned long _arg) |
|
virtual void | SetUseDerivative (bool _arg) |
|
virtual void | SetUseExplicitPDFDerivatives (bool _arg) |
|
virtual void | SetUseFiniteDifferenceDerivative (bool _arg) |
|
virtual void | UseExplicitPDFDerivativesOff () |
|
virtual void | UseExplicitPDFDerivativesOn () |
|
virtual void | BeforeThreadedGetValueAndDerivative (const TransformParametersType ¶meters) const |
|
virtual const char * | GetClassName () const |
|
virtual const FixedImageLimiterType * | GetFixedImageLimiter () |
|
virtual double | GetFixedLimitRangeRatio () const |
|
virtual ImageSamplerType * | GetImageSampler () 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 () 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 () override |
|
| ITK_DISALLOW_COPY_AND_MOVE (AdvancedImageToImageMetric) |
|
| 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 () |
|
|
using | BSplineInterpolatorType = BSplineInterpolateImageFunction< MovingImageType, CoordinateRepresentationType, double > |
|
using | CentralDifferenceGradientFilterType = GradientImageFilter< MovingImageType, RealType, RealType > |
|
using | FixedImageIndexType = typename FixedImageType::IndexType |
|
using | FixedImageIndexValueType = typename FixedImageIndexType::IndexValueType |
|
using | FixedImagePointType = typename TransformType::InputPointType |
|
using | IncrementalMarginalPDFType = Image< PDFValueType, 2 > |
|
using | JointPDFDerivativesIndexType = JointPDFDerivativesType::IndexType |
|
using | JointPDFDerivativesRegionType = JointPDFDerivativesType::RegionType |
|
using | JointPDFDerivativesSizeType = JointPDFDerivativesType::SizeType |
|
using | JointPDFDerivativesType = Image< PDFDerivativeValueType, 3 > |
|
using | JointPDFIndexType = JointPDFType::IndexType |
|
using | JointPDFRegionType = JointPDFType::RegionType |
|
using | JointPDFSizeType = JointPDFType::SizeType |
|
using | JointPDFType = Image< PDFValueType, 2 > |
|
using | KernelFunctionType = KernelFunctionBase2< PDFValueType > |
|
using | MarginalPDFType = Array< PDFValueType > |
|
using | MovingImageContinuousIndexType = typename InterpolatorType::ContinuousIndexType |
|
using | MovingImageDerivativeType = typename BSplineInterpolatorType::CovariantVectorType |
|
using | MovingImageIndexType = typename MovingImageType::IndexType |
|
using | MovingImagePointType = typename TransformType::OutputPointType |
|
using | NonZeroJacobianIndicesType = typename AdvancedTransformType::NonZeroJacobianIndicesType |
|
using | ParzenValueContainerType = Array< PDFValueType > |
|
using | PDFDerivativeValueType = float |
|
using | PDFValueType = double |
|
using | BSplineInterpolatorType = BSplineInterpolateImageFunction< MovingImageType, CoordinateRepresentationType, double > |
|
using | CentralDifferenceGradientFilterType = GradientImageFilter< MovingImageType, RealType, RealType > |
|
using | FixedImageIndexType = typename FixedImageType::IndexType |
|
using | FixedImageIndexValueType = typename FixedImageIndexType::IndexValueType |
|
using | FixedImagePointType = typename TransformType::InputPointType |
|
using | IncrementalMarginalPDFIndexType = IncrementalMarginalPDFType::IndexType |
|
using | IncrementalMarginalPDFPointer = typename IncrementalMarginalPDFType::Pointer |
|
using | IncrementalMarginalPDFRegionType = IncrementalMarginalPDFType::RegionType |
|
using | IncrementalMarginalPDFSizeType = IncrementalMarginalPDFType::SizeType |
|
using | IncrementalMarginalPDFType = Image< PDFValueType, 2 > |
|
using | JointPDFDerivativesIndexType = JointPDFDerivativesType::IndexType |
|
using | JointPDFDerivativesPointer = typename JointPDFDerivativesType::Pointer |
|
using | JointPDFDerivativesRegionType = JointPDFDerivativesType::RegionType |
|
using | JointPDFDerivativesSizeType = JointPDFDerivativesType::SizeType |
|
using | JointPDFDerivativesType = Image< PDFDerivativeValueType, 3 > |
|
using | JointPDFIndexType = JointPDFType::IndexType |
|
using | JointPDFPointer = typename JointPDFType::Pointer |
|
using | JointPDFRegionType = JointPDFType::RegionType |
|
using | JointPDFSizeType = JointPDFType::SizeType |
|
using | JointPDFType = Image< PDFValueType, 2 > |
|
using | KernelFunctionPointer = typename KernelFunctionType::Pointer |
|
using | KernelFunctionType = KernelFunctionBase2< PDFValueType > |
|
using | MarginalPDFType = Array< PDFValueType > |
|
using | MovingImageContinuousIndexType = typename InterpolatorType::ContinuousIndexType |
|
using | MovingImageDerivativeType = typename BSplineInterpolatorType::CovariantVectorType |
|
using | MovingImageIndexType = typename MovingImageType::IndexType |
|
using | MovingImagePointType = typename TransformType::OutputPointType |
|
using | NonZeroJacobianIndicesType = typename AdvancedTransformType::NonZeroJacobianIndicesType |
|
using | OffsetValueType = typename FixedImageType::OffsetValueType |
|
using | ParzenValueContainerType = Array< PDFValueType > |
|
using | PDFDerivativeValueType = float |
|
using | PDFValueType = double |
|
using | BSplineInterpolatorFloatPointer = typename BSplineInterpolatorFloatType::Pointer |
|
using | BSplineInterpolatorFloatType = BSplineInterpolateImageFunction< MovingImageType, CoordinateRepresentationType, float > |
|
using | BSplineInterpolatorPointer = typename BSplineInterpolatorType::Pointer |
|
using | BSplineInterpolatorType = BSplineInterpolateImageFunction< MovingImageType, CoordinateRepresentationType, double > |
|
using | CentralDifferenceGradientFilterPointer = typename CentralDifferenceGradientFilterType::Pointer |
|
using | CentralDifferenceGradientFilterType = GradientImageFilter< MovingImageType, RealType, RealType > |
|
using | FixedImageIndexType = typename FixedImageType::IndexType |
|
using | FixedImageIndexValueType = typename FixedImageIndexType::IndexValueType |
|
using | FixedImagePointType = typename TransformType::InputPointType |
|
using | LinearInterpolatorPointer = typename LinearInterpolatorType::Pointer |
|
using | LinearInterpolatorType = AdvancedLinearInterpolateImageFunction< MovingImageType, CoordinateRepresentationType > |
|
using | MovingImageContinuousIndexType = typename InterpolatorType::ContinuousIndexType |
|
using | MovingImageDerivativeType = typename BSplineInterpolatorType::CovariantVectorType |
|
using | MovingImageIndexType = typename MovingImageType::IndexType |
|
using | MovingImagePointType = typename TransformType::OutputPointType |
|
using | NonZeroJacobianIndicesType = typename AdvancedTransformType::NonZeroJacobianIndicesType |
|
using | ReducedBSplineInterpolatorPointer = typename ReducedBSplineInterpolatorType::Pointer |
|
using | ReducedBSplineInterpolatorType = ReducedDimensionBSplineInterpolateImageFunction< MovingImageType, CoordinateRepresentationType, double > |
|
|
void | AfterThreadedComputeDerivativeLowMemory (DerivativeType &derivative) const |
|
virtual void | ComputeJacobianPreconditioner (const TransformJacobianType &jac, const NonZeroJacobianIndicesType &nzji, DerivativeType &preconditioner, DerivativeType &divisor) const |
|
void | GetValueAndAnalyticDerivative (const ParametersType ¶meters, MeasureType &value, DerivativeType &derivative) const override |
|
virtual void | GetValueAndAnalyticDerivativeLowMemory (const ParametersType ¶meters, MeasureType &value, DerivativeType &derivative) const |
|
void | GetValueAndFiniteDifferenceDerivative (const ParametersType ¶meters, MeasureType &value, DerivativeType &derivative) const override |
|
void | InitializeHistograms () override |
|
void | LaunchComputeDerivativeLowMemoryThreaderCallback () const |
|
| ParzenWindowMutualInformationImageToImageMetric () |
|
void | ThreadedComputeDerivativeLowMemory (ThreadIdType threadId) |
|
| ~ParzenWindowMutualInformationImageToImageMetric () override=default |
|
void | AfterThreadedComputePDFs () const |
|
virtual void | ComputeIncrementalMarginalPDFs (const JointPDFDerivativesType *incrementalPDF, IncrementalMarginalPDFType *fixedIncrementalMarginalPDF, IncrementalMarginalPDFType *movingIncrementalMarginalPDF) const |
|
void | ComputeMarginalPDF (const JointPDFType *jointPDF, MarginalPDFType &marginalPDF, const unsigned int direction) const |
|
virtual void | ComputePDFs (const ParametersType ¶meters) const |
|
virtual void | ComputePDFsAndIncrementalPDFs (const ParametersType ¶meters) const |
|
virtual void | ComputePDFsAndPDFDerivatives (const ParametersType ¶meters) const |
|
virtual void | ComputePDFsSingleThreaded (const ParametersType ¶meters) const |
|
void | EvaluateParzenValues (double parzenWindowTerm, OffsetValueType parzenWindowIndex, const KernelFunctionType *kernel, ParzenValueContainerType &parzenValues) const |
|
virtual void | GetValueAndAnalyticDerivative (const ParametersType &, MeasureType &, DerivativeType &) const |
|
virtual void | GetValueAndFiniteDifferenceDerivative (const ParametersType &, MeasureType &, DerivativeType &) const |
|
virtual void | InitializeHistograms () |
|
virtual void | InitializeKernels () |
|
void | InitializeThreadingParameters () const override |
|
void | LaunchComputePDFsThreaderCallback () const |
|
void | NormalizeJointPDF (JointPDFType *pdf, const double factor) const |
|
void | NormalizeJointPDFDerivatives (JointPDFDerivativesType *pdf, const double factor) const |
|
| ParzenWindowHistogramImageToImageMetric () |
|
void | PrintSelf (std::ostream &os, Indent indent) const override |
|
void | ThreadedComputePDFs (ThreadIdType threadId) |
|
virtual void | UpdateJointPDFAndDerivatives (const RealType &fixedImageValue, const RealType &movingImageValue, const DerivativeType *imageJacobian, const NonZeroJacobianIndicesType *nzji, JointPDFType *jointPDF) const |
|
virtual void | UpdateJointPDFAndIncrementalPDFs (RealType fixedImageValue, RealType movingImageValue, RealType movingMaskValue, const DerivativeType &movingImageValuesRight, const DerivativeType &movingImageValuesLeft, const DerivativeType &movingMaskValuesRight, const DerivativeType &movingMaskValuesLeft, const NonZeroJacobianIndicesType &nzji) const |
|
void | UpdateJointPDFDerivatives (const JointPDFIndexType &pdfIndex, double factor, const DerivativeType &imageJacobian, const NonZeroJacobianIndicesType &nzji) const |
|
| ~ParzenWindowHistogramImageToImageMetric () override=default |
|
| AdvancedImageToImageMetric () |
|
virtual void | AfterThreadedGetValue (MeasureType &value) const |
|
virtual void | AfterThreadedGetValueAndDerivative (MeasureType &value, DerivativeType &derivative) const |
|
virtual void | CheckForAdvancedTransform () |
|
virtual void | CheckForBSplineInterpolator () |
|
virtual void | CheckForBSplineTransform () 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 |
|
bool | FastEvaluateMovingImageValueAndDerivative (const MovingImagePointType &mappedPoint, RealType &movingImageValue, MovingImageDerivativeType *gradient, const ThreadIdType threadId) const |
|
virtual void | InitializeImageSampler () |
|
virtual void | InitializeLimiters () |
|
virtual void | InitializeThreadingParameters () 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 () const |
|
void | LaunchGetValueThreaderCallback () 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) |
|
MovingImagePointType | TransformPoint (const FixedImagePointType &fixedImagePoint) const |
|
| ~AdvancedImageToImageMetric () override=default |
|