18#ifndef __itkAdvancedKappaStatisticImageToImageMetric_h
19#define __itkAdvancedKappaStatisticImageToImageMetric_h
55template<
class TFixedImage,
class TMovingImage >
126 FixedImageType::ImageDimension );
130 MovingImageType::ImageDimension );
153 itkGetConstReferenceMacro( ForegroundValue,
RealType );
159 itkSetMacro( UseForegroundValue,
bool );
166 itkSetMacro( Complement,
bool );
167 itkGetConstReferenceMacro( Complement,
bool );
168 itkBooleanMacro( Complement );
180 void PrintSelf( std::ostream & os, Indent indent )
const override;
202 std::size_t & fixedForegroundArea,
203 std::size_t & movingForegroundArea,
204 std::size_t & intersection,
259 PaddedKappaGetValueAndDerivativePerThreadStruct );
261 AlignedKappaGetValueAndDerivativePerThreadStruct );
269#ifndef ITK_MANUAL_INSTANTIATION
270#include "itkAdvancedKappaStatisticImageToImageMetric.hxx"
An extension of the ITK ImageToImageMetric. It is the intended base class for all elastix metrics.
BSplineInterpolateImageFunction< MovingImageType, CoordinateRepresentationType, double > BSplineInterpolatorType
Superclass::FixedImageConstPointer FixedImageConstPointer
ThreaderType::WorkUnitInfo ThreadInfoType
Superclass::TransformParametersType TransformParametersType
Superclass::InputPointType InputPointType
Superclass::MovingImageConstPointer MovingImageConstPointer
Superclass::FixedImageMaskPointer FixedImageMaskPointer
InterpolatorType::ContinuousIndexType MovingImageContinuousIndexType
Superclass::GradientImageFilterPointer GradientImageFilterPointer
Superclass::GradientImageFilterType GradientImageFilterType
Superclass::TransformJacobianType TransformJacobianType
FixedArray< double, Self::MovingImageDimension > MovingImageDerivativeScalesType
Superclass::GradientImagePointer GradientImagePointer
Superclass::DerivativeType DerivativeType
Superclass::TransformPointer TransformPointer
ImageSamplerType::OutputVectorContainerPointer ImageSampleContainerPointer
AdvancedTransformType::NonZeroJacobianIndicesType NonZeroJacobianIndicesType
Superclass::OutputPointType OutputPointType
ImageSamplerBase< FixedImageType > ImageSamplerType
Superclass::CoordinateRepresentationType CoordinateRepresentationType
ImageSamplerType::OutputVectorContainerType ImageSampleContainerType
Superclass::InterpolatorPointer InterpolatorPointer
Superclass::MovingImageMaskPointer MovingImageMaskPointer
Superclass::FixedImageType FixedImageType
TransformType::InputPointType FixedImagePointType
ImageSamplerType::Pointer ImageSamplerPointer
Superclass::MovingImageMaskType MovingImageMaskType
Superclass::GradientPixelType GradientPixelType
Superclass::MeasureType MeasureType
MovingImageType::IndexType MovingImageIndexType
MovingImageType::RegionType MovingImageRegionType
FixedImageLimiterType::OutputType FixedImageLimiterOutputType
FixedImageIndexType::IndexValueType FixedImageIndexValueType
Superclass::MovingImagePixelType MovingImagePixelType
MovingImageLimiterType::OutputType MovingImageLimiterOutputType
GradientImageFilter< MovingImageType, RealType, RealType > CentralDifferenceGradientFilterType
LimiterFunctionBase< RealType, MovingImageDimension > MovingImageLimiterType
BSplineInterpolatorType::CovariantVectorType MovingImageDerivativeType
Superclass::FixedImageMaskType FixedImageMaskType
Superclass::GradientImageType GradientImageType
FixedImageType::PixelType FixedImagePixelType
Superclass::InterpolatorType InterpolatorType
TransformType::OutputPointType MovingImagePointType
FixedImageType::IndexType FixedImageIndexType
Superclass::TransformType TransformType
DerivativeType::ValueType DerivativeValueType
Superclass::MovingImageType MovingImageType
LimiterFunctionBase< RealType, FixedImageDimension > FixedImageLimiterType
itk::PlatformMultiThreader ThreaderType
Superclass::RealType RealType
Superclass::FixedImageRegionType FixedImageRegionType
AdvancedTransformType::NumberOfParametersType NumberOfParametersType
Superclass::ParametersType ParametersType
Computes similarity between two objects to be registered.
Superclass::ImageSamplerPointer ImageSamplerPointer
Superclass::FixedImagePixelType FixedImagePixelType
void ComputeGradient(void) override
Superclass::NumberOfParametersType NumberOfParametersType
Superclass::NonZeroJacobianIndicesType NonZeroJacobianIndicesType
void UpdateValueAndDerivativeTerms(const RealType &fixedImageValue, const RealType &movingImageValue, std::vcl_size_t &fixedForegroundArea, std::vcl_size_t &movingForegroundArea, std::vcl_size_t &intersection, const DerivativeType &imageJacobian, const NonZeroJacobianIndicesType &nzji, DerivativeType &sum1, DerivativeType &sum2) const
Superclass::MovingImageMaskPointer MovingImageMaskPointer
Superclass::ImageSampleContainerType ImageSampleContainerType
Superclass::FixedImageConstPointer FixedImageConstPointer
bool m_UseForegroundValue
Superclass::InterpolatorType InterpolatorType
Superclass::TransformJacobianType TransformJacobianType
Superclass::TransformType TransformType
RealType m_ForegroundValue
Superclass::ThreadInfoType ThreadInfoType
itkPadStruct(ITK_CACHE_LINE_ALIGNMENT, KappaGetValueAndDerivativePerThreadStruct, PaddedKappaGetValueAndDerivativePerThreadStruct)
Superclass::MovingImagePixelType MovingImagePixelType
Superclass::FixedImageIndexType FixedImageIndexType
itkStaticConstMacro(FixedImageDimension, unsigned int, FixedImageType::ImageDimension)
Superclass::RealType RealType
Superclass::FixedImageMaskPointer FixedImageMaskPointer
Superclass::DerivativeType DerivativeType
AdvancedKappaStatisticImageToImageMetric Self
Superclass::MovingImageLimiterType MovingImageLimiterType
Superclass::ParametersType ParametersType
AdvancedImageToImageMetric< TFixedImage, TMovingImage > Superclass
Superclass::InterpolatorPointer InterpolatorPointer
Superclass::GradientImageFilterPointer GradientImageFilterPointer
void AfterThreadedGetValueAndDerivative(MeasureType &value, DerivativeType &derivative) const override
void PrintSelf(std::ostream &os, Indent indent) const override
Superclass::TransformPointer TransformPointer
static ITK_THREAD_RETURN_FUNCTION_CALL_CONVENTION AccumulateDerivativesThreaderCallback(void *arg)
void InitializeThreadingParameters(void) const override
Superclass::TransformParametersType TransformParametersType
Superclass::GradientImageType GradientImageType
Superclass::MovingImagePointType MovingImagePointType
Superclass::ImageSampleContainerPointer ImageSampleContainerPointer
SmartPointer< Self > Pointer
Superclass::MovingImageRegionType MovingImageRegionType
void operator=(const Self &)
Superclass::MovingImageMaskType MovingImageMaskType
SmartPointer< const Self > ConstPointer
Superclass::MovingImageType MovingImageType
Superclass::FixedImageIndexValueType FixedImageIndexValueType
Superclass::MovingImageLimiterOutputType MovingImageLimiterOutputType
Superclass::ImageSamplerType ImageSamplerType
AdvancedKappaStatisticImageToImageMetric()
Superclass::MovingImageDerivativeType MovingImageDerivativeType
Superclass::InputPointType InputPointType
Superclass::MeasureType MeasureType
Superclass::FixedImageRegionType FixedImageRegionType
Superclass::MovingImageDerivativeScalesType MovingImageDerivativeScalesType
void GetDerivative(const TransformParametersType ¶meters, DerivativeType &derivative) const override
AdvancedKappaStatisticImageToImageMetric(const Self &)
Superclass::OutputPointType OutputPointType
Superclass::GradientPixelType GradientPixelType
Superclass::FixedImageType FixedImageType
Superclass::FixedImagePointType FixedImagePointType
void ThreadedGetValueAndDerivative(ThreadIdType threadID) override
Superclass::CentralDifferenceGradientFilterType CentralDifferenceGradientFilterType
Superclass::GradientImagePointer GradientImagePointer
itkStaticConstMacro(MovingImageDimension, unsigned int, MovingImageType::ImageDimension)
Superclass::CoordinateRepresentationType CoordinateRepresentationType
ThreadIdType m_KappaGetValueAndDerivativePerThreadVariablesSize
AlignedKappaGetValueAndDerivativePerThreadStruct * m_KappaGetValueAndDerivativePerThreadVariables
virtual void GetValueAndDerivativeSingleThreaded(const TransformParametersType ¶meters, MeasureType &Value, DerivativeType &Derivative) const
Superclass::GradientImageFilterType GradientImageFilterType
Superclass::MovingImageIndexType MovingImageIndexType
~AdvancedKappaStatisticImageToImageMetric() override
Superclass::FixedImageLimiterOutputType FixedImageLimiterOutputType
void GetValueAndDerivative(const TransformParametersType ¶meters, MeasureType &Value, DerivativeType &Derivative) const override
Superclass::MovingImageContinuousIndexType MovingImageContinuousIndexType
Superclass::BSplineInterpolatorType BSplineInterpolatorType
Superclass::MovingImageConstPointer MovingImageConstPointer
Superclass::ThreaderType ThreaderType
Superclass::FixedImageMaskType FixedImageMaskType
itkAlignedTypedef(ITK_CACHE_LINE_ALIGNMENT, PaddedKappaGetValueAndDerivativePerThreadStruct, AlignedKappaGetValueAndDerivativePerThreadStruct)
Superclass::FixedImageLimiterType FixedImageLimiterType
Superclass::DerivativeValueType DerivativeValueType
MeasureType GetValue(const TransformParametersType ¶meters) const override
SizeValueType st_NumberOfPixelsCounted
DerivativeType st_DerivativeSum1
SizeValueType st_AreaIntersection
DerivativeType st_DerivativeSum2
AdvancedKappaStatisticImageToImageMetric * st_Metric
MeasureType st_Coefficient1
MeasureType st_Coefficient2
DerivativeValueType * st_DerivativePointer