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.
|
typedef SmartPointer< const Self > | ConstPointer |
|
typedef Superclass::CoordinateRepresentationType | CoordinateRepresentationType |
|
typedef Superclass::DerivativeType | DerivativeType |
|
typedef Superclass::DerivativeValueType | DerivativeValueType |
|
typedef Superclass::FixedImageConstPointer | FixedImageConstPointer |
|
typedef Superclass::FixedImageLimiterOutputType | FixedImageLimiterOutputType |
|
typedef Superclass::FixedImageLimiterType | FixedImageLimiterType |
|
typedef Superclass::FixedImageMaskPointer | FixedImageMaskPointer |
|
typedef Superclass::FixedImageMaskType | FixedImageMaskType |
|
typedef Superclass::FixedImagePixelType | FixedImagePixelType |
|
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::ImageSamplerPointer | ImageSamplerPointer |
|
typedef Superclass::ImageSamplerType | ImageSamplerType |
|
typedef Superclass::InputPointType | InputPointType |
|
typedef Superclass::InterpolatorPointer | InterpolatorPointer |
|
typedef Superclass::InterpolatorType | InterpolatorType |
|
typedef Superclass::MeasureType | MeasureType |
|
typedef Superclass::MovingImageConstPointer | MovingImageConstPointer |
|
typedef Superclass::MovingImageDerivativeScalesType | MovingImageDerivativeScalesType |
|
typedef Superclass::MovingImageLimiterOutputType | MovingImageLimiterOutputType |
|
typedef Superclass::MovingImageLimiterType | MovingImageLimiterType |
|
typedef Superclass::MovingImageMaskPointer | MovingImageMaskPointer |
|
typedef Superclass::MovingImageMaskType | MovingImageMaskType |
|
typedef Superclass::MovingImagePixelType | MovingImagePixelType |
|
typedef Superclass::MovingImageRegionType | MovingImageRegionType |
|
typedef Superclass::MovingImageType | MovingImageType |
|
typedef Superclass::NumberOfParametersType | NumberOfParametersType |
|
typedef Superclass::OutputPointType | OutputPointType |
|
typedef Superclass::ParametersType | ParametersType |
|
typedef SmartPointer< Self > | Pointer |
|
typedef Superclass::RealType | RealType |
|
typedef ParzenWindowMutualInformationImageToImageMetric | Self |
|
typedef ParzenWindowHistogramImageToImageMetric< TFixedImage, TMovingImage > | Superclass |
|
typedef Superclass::ThreaderType | ThreaderType |
|
typedef Superclass::ThreadInfoType | ThreadInfoType |
|
typedef Superclass::TransformJacobianType | TransformJacobianType |
|
typedef Superclass::TransformParametersType | TransformParametersType |
|
typedef Superclass::TransformPointer | TransformPointer |
|
typedef Superclass::TransformType | TransformType |
|
typedef SmartPointer< const Self > | ConstPointer |
|
typedef Superclass::CoordinateRepresentationType | CoordinateRepresentationType |
|
typedef Superclass::DerivativeType | DerivativeType |
|
typedef Superclass::DerivativeValueType | DerivativeValueType |
|
typedef Superclass::FixedImageConstPointer | FixedImageConstPointer |
|
typedef Superclass::FixedImageLimiterOutputType | FixedImageLimiterOutputType |
|
typedef Superclass::FixedImageLimiterType | FixedImageLimiterType |
|
typedef Superclass::FixedImageMaskPointer | FixedImageMaskPointer |
|
typedef Superclass::FixedImageMaskType | FixedImageMaskType |
|
typedef Superclass::FixedImagePixelType | FixedImagePixelType |
|
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::ImageSamplerPointer | ImageSamplerPointer |
|
typedef Superclass::ImageSamplerType | ImageSamplerType |
|
typedef Superclass::InputPointType | InputPointType |
|
typedef Superclass::InterpolatorPointer | InterpolatorPointer |
|
typedef Superclass::InterpolatorType | InterpolatorType |
|
typedef Superclass::MeasureType | MeasureType |
|
typedef Superclass::MovingImageConstPointer | MovingImageConstPointer |
|
typedef Superclass::MovingImageDerivativeScalesType | MovingImageDerivativeScalesType |
|
typedef Superclass::MovingImageLimiterOutputType | MovingImageLimiterOutputType |
|
typedef Superclass::MovingImageLimiterType | MovingImageLimiterType |
|
typedef Superclass::MovingImageMaskPointer | MovingImageMaskPointer |
|
typedef Superclass::MovingImageMaskType | MovingImageMaskType |
|
typedef Superclass::MovingImagePixelType | MovingImagePixelType |
|
typedef Superclass::MovingImageRegionType | MovingImageRegionType |
|
typedef Superclass::MovingImageType | MovingImageType |
|
typedef Superclass::OutputPointType | OutputPointType |
|
typedef Superclass::ParametersType | ParametersType |
|
typedef SmartPointer< Self > | Pointer |
|
typedef Superclass::RealType | RealType |
|
typedef ParzenWindowHistogramImageToImageMetric | Self |
|
typedef AdvancedImageToImageMetric< TFixedImage, TMovingImage > | Superclass |
|
typedef Superclass::ThreaderType | ThreaderType |
|
typedef Superclass::ThreadInfoType | ThreadInfoType |
|
typedef Superclass::TransformJacobianType | TransformJacobianType |
|
typedef Superclass::TransformParametersType | TransformParametersType |
|
typedef Superclass::TransformPointer | TransformPointer |
|
typedef Superclass::TransformType | 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, TMovingImage > | 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 |
|
|
virtual const char * | GetClassName () const |
|
virtual bool | GetUseJacobianPreconditioning () const |
|
MeasureType | GetValue (const ParametersType ¶meters) const override |
|
| 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 () |
|
virtual unsigned long | GetNumberOfMovingHistogramBins () |
|
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 (void) override |
|
| 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 (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 () |
|
|
typedef Superclass::BSplineInterpolatorType | BSplineInterpolatorType |
|
typedef Superclass::CentralDifferenceGradientFilterType | CentralDifferenceGradientFilterType |
|
typedef Superclass::FixedImageIndexType | FixedImageIndexType |
|
typedef Superclass::FixedImageIndexValueType | FixedImageIndexValueType |
|
typedef Superclass::FixedImagePointType | FixedImagePointType |
|
typedef Superclass::IncrementalMarginalPDFType | IncrementalMarginalPDFType |
|
typedef Superclass::JointPDFDerivativesIndexType | JointPDFDerivativesIndexType |
|
typedef Superclass::JointPDFDerivativesRegionType | JointPDFDerivativesRegionType |
|
typedef Superclass::JointPDFDerivativesSizeType | JointPDFDerivativesSizeType |
|
typedef Superclass::JointPDFDerivativesType | JointPDFDerivativesType |
|
typedef Superclass::JointPDFIndexType | JointPDFIndexType |
|
typedef Superclass::JointPDFRegionType | JointPDFRegionType |
|
typedef Superclass::JointPDFSizeType | JointPDFSizeType |
|
typedef Superclass::JointPDFType | JointPDFType |
|
typedef Superclass::KernelFunctionType | KernelFunctionType |
|
typedef Superclass::MarginalPDFType | MarginalPDFType |
|
typedef Superclass::MovingImageContinuousIndexType | MovingImageContinuousIndexType |
|
typedef Superclass::MovingImageDerivativeType | MovingImageDerivativeType |
|
typedef Superclass::MovingImageIndexType | MovingImageIndexType |
|
typedef Superclass::MovingImagePointType | MovingImagePointType |
|
typedef Superclass::NonZeroJacobianIndicesType | NonZeroJacobianIndicesType |
|
typedef Superclass::ParzenValueContainerType | ParzenValueContainerType |
|
typedef Superclass::PDFDerivativeValueType | PDFDerivativeValueType |
|
typedef Superclass::PDFValueType | PDFValueType |
|
typedef Superclass::BSplineInterpolatorType | BSplineInterpolatorType |
|
typedef Superclass::CentralDifferenceGradientFilterType | CentralDifferenceGradientFilterType |
|
typedef Superclass::FixedImageIndexType | FixedImageIndexType |
|
typedef Superclass::FixedImageIndexValueType | FixedImageIndexValueType |
|
typedef Superclass::FixedImagePointType | FixedImagePointType |
|
typedef IncrementalMarginalPDFType::IndexType | IncrementalMarginalPDFIndexType |
|
typedef IncrementalMarginalPDFType::Pointer | IncrementalMarginalPDFPointer |
|
typedef IncrementalMarginalPDFType::RegionType | IncrementalMarginalPDFRegionType |
|
typedef IncrementalMarginalPDFType::SizeType | IncrementalMarginalPDFSizeType |
|
typedef Image< PDFValueType, 2 > | IncrementalMarginalPDFType |
|
typedef JointPDFDerivativesType::IndexType | JointPDFDerivativesIndexType |
|
typedef JointPDFDerivativesType::Pointer | JointPDFDerivativesPointer |
|
typedef JointPDFDerivativesType::RegionType | JointPDFDerivativesRegionType |
|
typedef JointPDFDerivativesType::SizeType | JointPDFDerivativesSizeType |
|
typedef Image< PDFDerivativeValueType, 3 > | JointPDFDerivativesType |
|
typedef JointPDFType::IndexType | JointPDFIndexType |
|
typedef JointPDFType::Pointer | JointPDFPointer |
|
typedef JointPDFType::RegionType | JointPDFRegionType |
|
typedef JointPDFType::SizeType | JointPDFSizeType |
|
typedef Image< PDFValueType, 2 > | JointPDFType |
|
typedef KernelFunctionType::Pointer | KernelFunctionPointer |
|
typedef KernelFunctionBase2< PDFValueType > | KernelFunctionType |
|
typedef Array< PDFValueType > | MarginalPDFType |
|
typedef Superclass::MovingImageContinuousIndexType | MovingImageContinuousIndexType |
|
typedef Superclass::MovingImageDerivativeType | MovingImageDerivativeType |
|
typedef Superclass::MovingImageIndexType | MovingImageIndexType |
|
typedef Superclass::MovingImagePointType | MovingImagePointType |
|
typedef Superclass::NonZeroJacobianIndicesType | NonZeroJacobianIndicesType |
|
typedef FixedImageType::OffsetValueType | OffsetValueType |
|
typedef Array< PDFValueType > | ParzenValueContainerType |
|
typedef float | PDFDerivativeValueType |
|
typedef double | PDFValueType |
|
typedef BSplineInterpolatorFloatType::Pointer | BSplineInterpolatorFloatPointer |
|
typedef BSplineInterpolateImageFunction< MovingImageType, CoordinateRepresentationType, float > | BSplineInterpolatorFloatType |
|
typedef BSplineInterpolatorType::Pointer | BSplineInterpolatorPointer |
|
typedef BSplineInterpolateImageFunction< MovingImageType, CoordinateRepresentationType, double > | BSplineInterpolatorType |
|
typedef CentralDifferenceGradientFilterType::Pointer | CentralDifferenceGradientFilterPointer |
|
typedef GradientImageFilter< MovingImageType, RealType, RealType > | CentralDifferenceGradientFilterType |
|
typedef FixedImageType::IndexType | FixedImageIndexType |
|
typedef FixedImageIndexType::IndexValueType | FixedImageIndexValueType |
|
typedef TransformType::InputPointType | FixedImagePointType |
|
typedef LinearInterpolatorType::Pointer | LinearInterpolatorPointer |
|
typedef AdvancedLinearInterpolateImageFunction< MovingImageType, CoordinateRepresentationType > | LinearInterpolatorType |
|
typedef InterpolatorType::ContinuousIndexType | MovingImageContinuousIndexType |
|
typedef BSplineInterpolatorType::CovariantVectorType | MovingImageDerivativeType |
|
typedef MovingImageType::IndexType | MovingImageIndexType |
|
typedef TransformType::OutputPointType | MovingImagePointType |
|
typedef AdvancedTransformType::NonZeroJacobianIndicesType | NonZeroJacobianIndicesType |
|
typedef ReducedBSplineInterpolatorType::Pointer | ReducedBSplineInterpolatorPointer |
|
typedef ReducedDimensionBSplineInterpolateImageFunction< MovingImageType, CoordinateRepresentationType, double > | ReducedBSplineInterpolatorType |
|
|
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 (void) override |
|
void | LaunchComputeDerivativeLowMemoryThreaderCallback (void) const |
|
| ParzenWindowMutualInformationImageToImageMetric () |
|
void | ThreadedComputeDerivativeLowMemory (ThreadIdType threadId) |
|
| ~ParzenWindowMutualInformationImageToImageMetric () override |
|
void | AfterThreadedComputePDFs (void) const |
|
virtual void | ComputeIncrementalMarginalPDFs (const JointPDFDerivativesType *incrementalPDF, IncrementalMarginalPDFType *fixedIncrementalMarginalPDF, IncrementalMarginalPDFType *movingIncrementalMarginalPDF) const |
|
virtual 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 (void) |
|
virtual void | InitializeKernels (void) |
|
void | InitializeThreadingParameters (void) const override |
|
| itkAlignedTypedef (ITK_CACHE_LINE_ALIGNMENT, PaddedParzenWindowHistogramGetValueAndDerivativePerThreadStruct, AlignedParzenWindowHistogramGetValueAndDerivativePerThreadStruct) |
|
| itkPadStruct (ITK_CACHE_LINE_ALIGNMENT, ParzenWindowHistogramGetValueAndDerivativePerThreadStruct, PaddedParzenWindowHistogramGetValueAndDerivativePerThreadStruct) |
|
void | LaunchComputePDFsThreaderCallback (void) const |
|
virtual void | NormalizeJointPDF (JointPDFType *pdf, const double &factor) const |
|
virtual 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 |
|
| 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 |
|