template<class TElastix>
class elastix::NormalizedMutualInformationMetric< TElastix >
A metric based on the itk::ParzenWindowNormalizedMutualInformationImageToImageMetric.
The parameters used in this class are:
- Parameters:
Metric: Select this metric as follows:
(Metric "NormalizedMutualInformation")
NumberOfHistogramBins: The size of the histogram. Must be given for each resolution, or for all resolutions at once.
example: (NumberOfHistogramBins 32 32 64)
The default is 32 for each resolution.
NumberOfFixedHistogramBins: The size of the histogram in the fixed dimension. Can be given for each resolution, or for all resolutions at once. If not given, NumberOfHistograms is used.
example: (NumberOfFixedHistogramBins 32 32 64)
The default is the value of NumberOfHistograms.
NumberOfMovingHistogramBins: The size of the histogram in the fixed dimension. Can be given for each resolution, or for all resolutions at once. If not given, NumberOfHistograms is used.
example: (NumberOfMovingHistogramBins 32 32 64)
The default is the value of NumberOfHistograms.
FixedKernelBSplineOrder: The B-spline order of the Parzen window, used to estimate the joint histogram. Can be given for each resolution, or for all resolutions at once.
example: (FixedKernelBSplineOrder 0 1 1)
The default value is 0.
MovingKernelBSplineOrder: The B-spline order of the Parzen window, used to estimate the joint histogram. Can be given for each resolution, or for all resolutions at once.
example: (MovingKernelBSplineOrder 3 3 3)
The default value is 3.
FixedLimitRangeRatio: The relative extension of the intensity range of the fixed image.
If your image has gray values from 0 to 1000 and the FixedLimitRangeRatio is 0.001, the joint histogram will expect fixed image gray values from -0.001 to 1000.001. This may be useful if you use high order B-spline interpolator for the fixed image.
example: (FixedLimitRangeRatio 0.001 0.01 0.01)
The default value is 0.01. Can be given for each resolution, or for all resolutions at once.
MovingLimitRangeRatio: The relative extension of the intensity range of the moving image.
If your image has gray values from 0 to 1000 and the MovingLimitRangeRatio is 0.001, the joint histogram will expect moving image gray values from -0.001 to 1000.001. This may be useful if you use high order B-spline interpolator for the moving image.
example: (MovingLimitRangeRatio 0.001 0.01 0.01)
The default value is 0.01. Can be given for each resolution, or for all resolutions at once.
- See also
- ParzenWindowNormalizedMutualInformationImageToImageMetric
Definition at line 73 of file elxNormalizedMutualInformationMetric.h.
|
using | ConstPointer = itk::SmartPointer< const Self > |
|
using | ITKBaseType = typename Superclass2::ITKBaseType |
|
using | Pointer = itk::SmartPointer< Self > |
|
using | Self = NormalizedMutualInformationMetric |
|
using | Superclass1 = itk::ParzenWindowNormalizedMutualInformationImageToImageMetric< typename MetricBase< TElastix >::FixedImageType, typename MetricBase< TElastix >::MovingImageType > |
|
using | Superclass2 = MetricBase< TElastix > |
|
using | ConstPointer = SmartPointer< const Self > |
|
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 = ParzenWindowNormalizedMutualInformationImageToImageMetric |
|
using | Superclass = ParzenWindowHistogramImageToImageMetric< MetricBase< TElastix >::FixedImageType, MetricBase< TElastix >::MovingImageType > |
|
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 |
|
using | AdvancedMetricType = itk::AdvancedImageToImageMetric< FixedImageType, MovingImageType > |
|
using | CoordinateRepresentationType = typename ITKBaseType::ParametersValueType |
|
using | ElastixType = TElastix |
|
using | FixedImageType = typename ElastixType::FixedImageType |
|
using | FixedPointSetType = itk::PointSet< CoordinateRepresentationType, FixedImageDimension, itk::DefaultStaticMeshTraits< CoordinateRepresentationType, FixedImageDimension, FixedImageDimension, CoordinateRepresentationType, CoordinateRepresentationType, CoordinateRepresentationType > > |
|
using | FixedPointType = typename FixedImageType::PointType |
|
using | FixedPointValueType = typename FixedPointType::ValueType |
|
using | ImageSamplerBaseType = typename AdvancedMetricType::ImageSamplerType |
|
using | ITKBaseType = itk::SingleValuedCostFunction |
|
using | MeasureType = typename ITKBaseType::MeasureType |
|
using | MovingImageDerivativeScalesType = typename AdvancedMetricType::MovingImageDerivativeScalesType |
|
using | MovingImageType = typename ElastixType::MovingImageType |
|
using | MovingPointSetType = itk::PointSet< CoordinateRepresentationType, MovingImageDimension, itk::DefaultStaticMeshTraits< CoordinateRepresentationType, MovingImageDimension, MovingImageDimension, CoordinateRepresentationType, CoordinateRepresentationType, CoordinateRepresentationType > > |
|
using | MovingPointType = typename MovingImageType::PointType |
|
using | MovingPointValueType = typename MovingPointType::ValueType |
|
using | RegistrationType = typename ElastixType::RegistrationBaseType |
|
using | Self = MetricBase |
|
using | Superclass = BaseComponentSE< TElastix > |
|
using | ConfigurationPointer = Configuration::Pointer |
|
using | ElastixType = TElastix |
|
using | RegistrationType = typename ElastixType::RegistrationBaseType |
|
using | Self = BaseComponentSE |
|
using | Superclass = BaseComponent |
|
|
void | BeforeEachResolution () override |
|
| elxClassNameMacro ("NormalizedMutualInformation") |
|
virtual const char * | GetClassName () const |
|
void | Initialize () override |
|
| ITK_DISALLOW_COPY_AND_MOVE (NormalizedMutualInformationMetric) |
|
| itkStaticConstMacro (FixedImageDimension, unsigned int, FixedImageType::ImageDimension) |
|
| itkStaticConstMacro (MovingImageDimension, unsigned int, MovingImageType::ImageDimension) |
|
virtual const char * | GetClassName () const |
|
MeasureType | GetValue (const ParametersType ¶meters) const override |
|
void | GetValueAndDerivative (const ParametersType ¶meters, MeasureType &Value, DerivativeType &Derivative) const override |
|
| ITK_DISALLOW_COPY_AND_MOVE (ParzenWindowNormalizedMutualInformationImageToImageMetric) |
|
| itkStaticConstMacro (FixedImageDimension, unsigned int, FixedImageType::ImageDimension) |
|
| itkStaticConstMacro (MovingImageDimension, unsigned int, MovingImageType::ImageDimension) |
|
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 () |
|
void | AfterEachIterationBase () override |
|
void | BeforeEachResolutionBase () override |
|
virtual ImageSamplerBaseType * | GetAdvancedMetricImageSampler () const |
|
virtual bool | GetAdvancedMetricUseImageSampler () const |
|
ITKBaseType * | GetAsITKBaseType () |
|
const ITKBaseType * | GetAsITKBaseType () const |
|
virtual const char * | GetClassName () const |
|
virtual MeasureType | GetCurrentExactMetricValue () const |
|
virtual bool | GetShowExactMetricValue () const |
|
| ITK_DISALLOW_COPY_AND_MOVE (MetricBase) |
|
| itkStaticConstMacro (FixedImageDimension, unsigned int, FixedImageType::ImageDimension) |
|
| itkStaticConstMacro (MovingImageDimension, unsigned int, MovingImageType::ImageDimension) |
|
virtual void | SelectNewSamples () |
|
virtual void | SetAdvancedMetricImageSampler (ImageSamplerBaseType *sampler) |
|
void | AddTargetCellToIterationInfo (const char *const name) |
|
Configuration * | GetConfiguration () const |
|
ElastixType * | GetElastix () const |
|
xl::xoutbase & | GetIterationInfoAt (const char *const name) |
|
RegistrationType * | GetRegistration () const |
|
| ITK_DISALLOW_COPY_AND_MOVE (BaseComponentSE) |
|
int | RemoveTargetCellFromIterationInfo (const char *const name) |
|
void | SetConfiguration (Configuration *_arg) |
|
void | SetElastix (ElastixType *_arg) |
|
virtual void | AfterEachIteration () |
|
virtual void | AfterEachIterationBase () |
|
virtual void | AfterEachResolution () |
|
virtual void | AfterEachResolutionBase () |
|
virtual void | AfterRegistration () |
|
virtual void | AfterRegistrationBase () |
|
virtual int | BeforeAll () |
|
virtual int | BeforeAllBase () |
|
virtual void | BeforeEachResolution () |
|
virtual void | BeforeEachResolutionBase () |
|
virtual void | BeforeRegistration () |
|
virtual void | BeforeRegistrationBase () |
|
virtual const char * | elxGetClassName () const |
|
const char * | GetComponentLabel () const |
|
| ITK_DISALLOW_COPY_AND_MOVE (BaseComponent) |
|
| itkTypeMacroNoParent (BaseComponent) |
|
void | SetComponentLabel (const char *label, unsigned int idx) |
|
|
| NormalizedMutualInformationMetric () |
|
| ~NormalizedMutualInformationMetric () override=default |
|
virtual void | ComputeLogMarginalPDF (MarginalPDFType &pdf) const |
|
virtual MeasureType | ComputeNormalizedMutualInformation (MeasureType &jointEntropy) const |
|
| ParzenWindowNormalizedMutualInformationImageToImageMetric ()=default |
|
void | PrintSelf (std::ostream &os, Indent indent) const override |
|
| ~ParzenWindowNormalizedMutualInformationImageToImageMetric () 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 |
|
virtual MeasureType | GetExactValue (const ParametersType ¶meters) |
|
| MetricBase ()=default |
|
| ~MetricBase () override=default |
|
| BaseComponentSE ()=default |
|
| ~BaseComponentSE () override=default |
|
| BaseComponent ()=default |
|
virtual | ~BaseComponent ()=default |
|
|
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 | 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 > |
|
using | ExactMetricImageSamplerPointer = typename ExactMetricImageSamplerType::Pointer |
|
using | ExactMetricImageSamplerType = itk::ImageGridSampler< FixedImageType > |
|
using | ExactMetricSampleGridSpacingType = typename ExactMetricImageSamplerType::SampleGridSpacingType |
|
using | ParametersType = typename ITKBaseType::ParametersType |
|
static ITK_THREAD_RETURN_FUNCTION_CALL_CONVENTION | ComputePDFsThreaderCallback (void *arg) |
|
static ITK_THREAD_RETURN_FUNCTION_CALL_CONVENTION | AccumulateDerivativesThreaderCallback (void *arg) |
|
static ITK_THREAD_RETURN_FUNCTION_CALL_CONVENTION | GetValueAndDerivativeThreaderCallback (void *arg) |
|
static ITK_THREAD_RETURN_FUNCTION_CALL_CONVENTION | GetValueThreaderCallback (void *arg) |
|
double | m_Alpha |
|
KernelFunctionPointer | m_DerivativeMovingKernel |
|
double | m_FixedImageBinSize |
|
MarginalPDFType | m_FixedImageMarginalPDF |
|
double | m_FixedImageNormalizedMin |
|
IncrementalMarginalPDFPointer | m_FixedIncrementalMarginalPDFLeft |
|
IncrementalMarginalPDFPointer | m_FixedIncrementalMarginalPDFRight |
|
KernelFunctionPointer | m_FixedKernel |
|
double | m_FixedParzenTermToIndexOffset |
|
JointPDFDerivativesPointer | m_IncrementalJointPDFLeft |
|
JointPDFDerivativesPointer | m_IncrementalJointPDFRight |
|
JointPDFPointer | m_JointPDF |
|
JointPDFDerivativesPointer | m_JointPDFDerivatives |
|
JointPDFRegionType | m_JointPDFWindow |
|
double | m_MovingImageBinSize |
|
MarginalPDFType | m_MovingImageMarginalPDF |
|
double | m_MovingImageNormalizedMin |
|
IncrementalMarginalPDFPointer | m_MovingIncrementalMarginalPDFLeft |
|
IncrementalMarginalPDFPointer | m_MovingIncrementalMarginalPDFRight |
|
KernelFunctionPointer | m_MovingKernel |
|
double | m_MovingParzenTermToIndexOffset |
|
DerivativeType | m_PerturbedAlphaLeft |
|
DerivativeType | m_PerturbedAlphaRight |
|
AdvancedTransformType::Pointer | m_AdvancedTransform { nullptr } |
|
BSplineInterpolatorPointer | m_BSplineInterpolator { nullptr } |
|
BSplineInterpolatorFloatPointer | m_BSplineInterpolatorFloat { nullptr } |
|
CentralDifferenceGradientFilterPointer | m_CentralDifferenceGradientFilter { nullptr } |
|
FixedImageLimiterPointer | m_FixedImageLimiter { nullptr } |
|
FixedImageLimiterOutputType | m_FixedImageMaxLimit { 1 } |
|
FixedImageLimiterOutputType | m_FixedImageMinLimit { 0 } |
|
FixedImagePixelType | m_FixedImageTrueMax { 1 } |
|
FixedImagePixelType | m_FixedImageTrueMin { 0 } |
|
double | m_FixedLimitRangeRatio { 0.01 } |
|
std::unique_ptr< AlignedGetValueAndDerivativePerThreadStruct[]> | m_GetValueAndDerivativePerThreadVariables |
|
ThreadIdType | m_GetValueAndDerivativePerThreadVariablesSize { 0 } |
|
std::unique_ptr< AlignedGetValuePerThreadStruct[]> | m_GetValuePerThreadVariables { nullptr } |
|
ThreadIdType | m_GetValuePerThreadVariablesSize { 0 } |
|
ImageSamplerPointer | m_ImageSampler { nullptr } |
|
bool | m_InterpolatorIsBSpline { false } |
|
bool | m_InterpolatorIsBSplineFloat { false } |
|
bool | m_InterpolatorIsLinear { false } |
|
bool | m_InterpolatorIsReducedBSpline { false } |
|
LinearInterpolatorPointer | m_LinearInterpolator { nullptr } |
|
MovingImageLimiterPointer | m_MovingImageLimiter { nullptr } |
|
MovingImageLimiterOutputType | m_MovingImageMaxLimit { 1 } |
|
MovingImageLimiterOutputType | m_MovingImageMinLimit { 0 } |
|
MovingImagePixelType | m_MovingImageTrueMax { 1 } |
|
MovingImagePixelType | m_MovingImageTrueMin { 0 } |
|
double | m_MovingLimitRangeRatio { 0.01 } |
|
ReducedBSplineInterpolatorPointer | m_ReducedBSplineInterpolator { nullptr } |
|
MultiThreaderParameterType | m_ThreaderMetricParameters |
|
bool | m_TransformIsAdvanced { false } |
|
bool | m_TransformIsBSpline { false } |
|
bool | m_UseMetricSingleThreaded { true } |
|
bool | m_UseMultiThread { false } |
|
bool | m_UseOpenMP |
|
MeasureType | m_CurrentExactMetricValue { 0.0 } |
|
unsigned int | m_ExactMetricEachXNumberOfIterations { 1 } |
|
ExactMetricSampleGridSpacingType | m_ExactMetricSampleGridSpacing |
|
ExactMetricImageSamplerPointer | m_ExactMetricSampler { nullptr } |
|
bool | m_ShowExactMetricValue { false } |
|
ConfigurationPointer | m_Configuration {} |
|
itk::WeakPointer< TElastix > | m_Elastix {} |
|
RegistrationType * | m_Registration {} |
|