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