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 AdvancedBSplineDeformableTransform< ScalarType, FixedImageDimension, 1 > | BSplineOrder1TransformType |
|
typedef AdvancedBSplineDeformableTransform< ScalarType, FixedImageDimension, 2 > | BSplineOrder2TransformType |
|
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 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 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::MultiThreader | ThreaderType |
|
typedef ThreaderType::ThreadInfoStruct | 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 |
|
| itkStaticConstMacro (FixedImageDimension, unsigned int, FixedImageType::ImageDimension) |
|
| itkStaticConstMacro (MovingImageDimension, unsigned int, MovingImageType::ImageDimension) |
|
virtual void | SetUseJacobianPreconditioning (bool _arg) |
|
void | GetDerivative (const ParametersType ¶meters, DerivativeType &Derivative) const |
|
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 |
|
void | Initialize (void) throw ( ExceptionObject ) |
|
| 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 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 |
|
virtual bool | GetUseFixedImageLimiter () const |
|
virtual bool | GetUseImageSampler () const |
|
virtual const bool & | GetUseMetricSingleThreaded () |
|
virtual bool | GetUseMovingImageDerivativeScales () const |
|
virtual bool | GetUseMovingImageLimiter () const |
|
virtual const bool & | GetUseMultiThread () |
|
| itkStaticConstMacro (MovingImageDimension, unsigned int, TMovingImage::ImageDimension) |
|
| itkStaticConstMacro (FixedImageDimension, unsigned int, TFixedImage::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 | SetNumberOfThreads (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 KernelFunctionBase< 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 |
|
virtual void | GetValueAndAnalyticDerivative (const ParametersType ¶meters, MeasureType &value, DerivativeType &derivative) const |
|
virtual void | GetValueAndAnalyticDerivativeLowMemory (const ParametersType ¶meters, MeasureType &value, DerivativeType &derivative) const |
|
virtual void | GetValueAndFiniteDifferenceDerivative (const ParametersType ¶meters, MeasureType &value, DerivativeType &derivative) const |
|
virtual void | InitializeHistograms (void) |
|
void | LaunchComputeDerivativeLowMemoryThreaderCallback (void) const |
|
| ParzenWindowMutualInformationImageToImageMetric () |
|
void | ThreadedComputeDerivativeLowMemory (ThreadIdType threadId) |
|
virtual | ~ParzenWindowMutualInformationImageToImageMetric () |
|
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 | InitializeKernels (void) |
|
virtual void | InitializeThreadingParameters (void) const |
|
| 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 |
|
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 |
|
virtual | ~ParzenWindowHistogramImageToImageMetric () |
|
| AdvancedImageToImageMetric () |
|
virtual void | AfterThreadedGetValueAndDerivative (MeasureType &value, DerivativeType &derivative) const |
|
virtual void | CheckForAdvancedTransform (void) |
|
virtual void | CheckForBSplineInterpolator (void) |
|
virtual void | CheckForBSplineTransform (void) |
|
virtual void | CheckNumberOfSamples (unsigned long wanted, unsigned long found) const |
|
virtual void | ComputeFixedImageExtrema (const FixedImageType *image, const FixedImageRegionType ®ion) |
|
virtual void | ComputeMovingImageExtrema (const MovingImageType *image, const MovingImageRegionType ®ion) |
|
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) throw ( ExceptionObject ) |
|
virtual void | InitializeLimiters (void) |
|
virtual bool | IsInsideMovingMask (const MovingImagePointType &point) const |
|
| itkAlignedTypedef (ITK_CACHE_LINE_ALIGNMENT, PaddedGetValueAndDerivativePerThreadStruct, AlignedGetValueAndDerivativePerThreadStruct) |
|
| itkPadStruct (ITK_CACHE_LINE_ALIGNMENT, GetValueAndDerivativePerThreadStruct, PaddedGetValueAndDerivativePerThreadStruct) |
|
void | LaunchGetValueAndDerivativeThreaderCallback (void) const |
|
void | PrintSelf (std::ostream &os, Indent indent) const |
|
virtual void | SetUseFixedImageLimiter (bool _arg) |
|
virtual void | SetUseImageSampler (bool _arg) |
|
virtual void | SetUseMovingImageLimiter (bool _arg) |
|
virtual void | ThreadedGetValueAndDerivative (ThreadIdType threadID) |
|
virtual bool | TransformPoint (const FixedImagePointType &fixedImagePoint, MovingImagePointType &mappedPoint) const |
|
virtual | ~AdvancedImageToImageMetric () |
|