Loading...
Searching...
No Matches
itkAdvancedImageToImageMetric.h
Go to the documentation of this file.
/*=========================================================================
*
* Copyright UMC Utrecht and contributors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0.txt
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*
*=========================================================================*/
#ifndef itkAdvancedImageToImageMetric_h
#define itkAdvancedImageToImageMetric_h
#include "itkImageToImageMetric.h"
#include "itkImageSamplerBase.h"
#include "itkGradientImageFilter.h"
#include "itkBSplineInterpolateImageFunction.h"
#include "itkReducedDimensionBSplineInterpolateImageFunction.h"
#include "itkAdvancedLinearInterpolateImageFunction.h"
#include "itkLimiterFunctionBase.h"
#include "itkFixedArray.h"
#include "itkAdvancedTransform.h"
#include "itkImageMaskSpatialObject.h"
// Needed for checking for B-spline for faster implementation
#include "itkAdvancedBSplineDeformableTransform.h"
#include "itkAdvancedCombinationTransform.h"
#include <cassert>
#include <memory> // For unique_ptr.
#include <typeinfo>
namespace itk
{
template <class TFixedImage, class TMovingImage>
class ITK_TEMPLATE_EXPORT AdvancedImageToImageMetric : public ImageToImageMetric<TFixedImage, TMovingImage>
{
public:
ITK_DISALLOW_COPY_AND_MOVE(AdvancedImageToImageMetric);
using Self = AdvancedImageToImageMetric;
using Superclass = ImageToImageMetric<TFixedImage, TMovingImage>;
using Pointer = SmartPointer<Self>;
using ConstPointer = SmartPointer<const Self>;
itkTypeMacro(AdvancedImageToImageMetric, ImageToImageMetric);
itkStaticConstMacro(MovingImageDimension, unsigned int, TMovingImage::ImageDimension);
itkStaticConstMacro(FixedImageDimension, unsigned int, TFixedImage::ImageDimension);
using typename Superclass::CoordinateRepresentationType;
using typename Superclass::MovingImageType;
using typename Superclass::MovingImagePixelType;
using MovingImagePointer = typename MovingImageType::Pointer;
using typename Superclass::MovingImageConstPointer;
using typename Superclass::FixedImageType;
using FixedImagePointer = typename FixedImageType::Pointer;
using typename Superclass::FixedImageConstPointer;
using typename Superclass::FixedImageRegionType;
using typename Superclass::TransformType;
using typename Superclass::TransformPointer;
using typename Superclass::InputPointType;
using typename Superclass::OutputPointType;
using typename Superclass::TransformParametersType;
using typename Superclass::TransformJacobianType;
using typename Superclass::InterpolatorType;
using typename Superclass::InterpolatorPointer;
using typename Superclass::RealType;
using typename Superclass::GradientPixelType;
using typename Superclass::GradientImageType;
using typename Superclass::GradientImagePointer;
// Overrule the mask type from its base class, ITK ImageToImageMetric.
using FixedImageMaskType = ImageMaskSpatialObject<Self::FixedImageDimension>;
using FixedImageMaskPointer = SmartPointer<FixedImageMaskType>;
using FixedImageMaskConstPointer = SmartPointer<const FixedImageMaskType>;
using MovingImageMaskType = ImageMaskSpatialObject<Self::MovingImageDimension>;
using MovingImageMaskPointer = SmartPointer<MovingImageMaskType>;
using MovingImageMaskConstPointer = SmartPointer<const MovingImageMaskType>;
using typename Superclass::MeasureType;
using typename Superclass::DerivativeType;
using DerivativeValueType = typename DerivativeType::ValueType;
using typename Superclass::ParametersType;
using FixedImagePixelType = typename FixedImageType::PixelType;
using MovingImageRegionType = typename MovingImageType::RegionType;
using MovingImageDerivativeScalesType = FixedArray<double, Self::MovingImageDimension>;
using ImageSamplerType = ImageSamplerBase<FixedImageType>;
using ImageSamplerPointer = typename ImageSamplerType::Pointer;
using ImageSampleContainerType = typename ImageSamplerType::OutputVectorContainerType;
using ImageSampleContainerPointer = typename ImageSamplerType::OutputVectorContainerPointer;
using FixedImageLimiterType = LimiterFunctionBase<RealType, FixedImageDimension>;
using FixedImageLimiterPointer = typename FixedImageLimiterType::Pointer;
using FixedImageLimiterOutputType = typename FixedImageLimiterType::OutputType;
using MovingImageLimiterType = LimiterFunctionBase<RealType, MovingImageDimension>;
using MovingImageLimiterPointer = typename MovingImageLimiterType::Pointer;
using MovingImageLimiterOutputType = typename MovingImageLimiterType::OutputType;
using ScalarType = typename TransformType::ScalarType;
using AdvancedTransformType = AdvancedTransform<ScalarType, FixedImageDimension, MovingImageDimension>;
using NumberOfParametersType = typename AdvancedTransformType::NumberOfParametersType;
using CombinationTransformType = AdvancedCombinationTransform<ScalarType, FixedImageDimension>;
using BSplineOrder1TransformType = AdvancedBSplineDeformableTransform<ScalarType, FixedImageDimension, 1>;
using BSplineOrder2TransformType = AdvancedBSplineDeformableTransform<ScalarType, FixedImageDimension, 2>;
using BSplineOrder3TransformType = AdvancedBSplineDeformableTransform<ScalarType, FixedImageDimension, 3>;
using BSplineOrder1TransformPointer = typename BSplineOrder1TransformType::Pointer;
using BSplineOrder2TransformPointer = typename BSplineOrder2TransformType::Pointer;
using BSplineOrder3TransformPointer = typename BSplineOrder3TransformType::Pointer;
using ThreadInfoType = MultiThreaderBase::WorkUnitInfo;
virtual void
SetFixedImageMask(const FixedImageMaskType * const arg)
{
assert(arg == nullptr || typeid(*arg) == typeid(FixedImageMaskType));
Superclass::SetFixedImageMask(arg);
}
virtual void
SetMovingImageMask(const MovingImageMaskType * const arg)
{
assert(arg == nullptr || typeid(*arg) == typeid(MovingImageMaskType));
Superclass::SetMovingImageMask(arg);
}
const FixedImageMaskType *
GetFixedImageMask() const override
{
const auto * const mask = Superclass::GetFixedImageMask();
assert(mask == nullptr || typeid(*mask) == typeid(FixedImageMaskType));
return static_cast<const FixedImageMaskType *>(mask);
}
const MovingImageMaskType *
GetMovingImageMask() const override
{
const auto * const mask = Superclass::GetMovingImageMask();
assert(mask == nullptr || typeid(*mask) == typeid(MovingImageMaskType));
return static_cast<const MovingImageMaskType *>(mask);
}
virtual void
SetTransform(AdvancedTransformType * arg)
{
this->Superclass::SetTransform(arg);
if (m_AdvancedTransform != arg)
{
m_AdvancedTransform = arg;
this->Modified();
}
}
AdvancedTransformType *
GetTransform() override
{
return m_AdvancedTransform.GetPointer();
}
const AdvancedTransformType *
GetTransform() const override
{
return m_AdvancedTransform.GetPointer();
}
itkSetObjectMacro(ImageSampler, ImageSamplerType);
ImageSamplerType *
GetImageSampler() const
{
return m_ImageSampler.GetPointer();
}
itkGetConstMacro(UseImageSampler, bool);
itkSetMacro(RequiredRatioOfValidSamples, double);
itkGetConstMacro(RequiredRatioOfValidSamples, double);
itkSetObjectMacro(MovingImageLimiter, MovingImageLimiterType);
itkGetConstObjectMacro(MovingImageLimiter, MovingImageLimiterType);
itkSetObjectMacro(FixedImageLimiter, FixedImageLimiterType);
itkGetConstObjectMacro(FixedImageLimiter, FixedImageLimiterType);
itkSetMacro(MovingLimitRangeRatio, double);
itkGetConstMacro(MovingLimitRangeRatio, double);
itkSetMacro(FixedLimitRangeRatio, double);
itkGetConstMacro(FixedLimitRangeRatio, double);
itkGetConstMacro(UseFixedImageLimiter, bool);
itkGetConstMacro(UseMovingImageLimiter, bool);
itkSetMacro(UseMovingImageDerivativeScales, bool);
itkGetConstMacro(UseMovingImageDerivativeScales, bool);
itkSetMacro(ScaleGradientWithRespectToMovingImageOrientation, bool);
itkGetConstMacro(ScaleGradientWithRespectToMovingImageOrientation, bool);
itkSetMacro(MovingImageDerivativeScales, MovingImageDerivativeScalesType);
itkGetConstReferenceMacro(MovingImageDerivativeScales, MovingImageDerivativeScalesType);
void
Initialize() override;
itkSetMacro(UseMetricSingleThreaded, bool);
itkGetConstReferenceMacro(UseMetricSingleThreaded, bool);
itkBooleanMacro(UseMetricSingleThreaded);
// \todo: maybe these can be united, check base class.
itkSetMacro(UseMultiThread, bool);
itkGetConstReferenceMacro(UseMultiThread, bool);
itkBooleanMacro(UseMultiThread);
virtual void
BeforeThreadedGetValueAndDerivative(const TransformParametersType & parameters) const;
protected:
AdvancedImageToImageMetric();
~AdvancedImageToImageMetric() override = default;
void
PrintSelf(std::ostream & os, Indent indent) const override;
using FixedImageIndexType = typename FixedImageType::IndexType;
using FixedImageIndexValueType = typename FixedImageIndexType::IndexValueType;
using MovingImageIndexType = typename MovingImageType::IndexType;
using FixedImagePointType = typename TransformType::InputPointType;
using MovingImagePointType = typename TransformType::OutputPointType;
using MovingImageContinuousIndexType = typename InterpolatorType::ContinuousIndexType;
using BSplineInterpolatorType =
BSplineInterpolateImageFunction<MovingImageType, CoordinateRepresentationType, double>;
using BSplineInterpolatorPointer = typename BSplineInterpolatorType::Pointer;
using BSplineInterpolatorFloatType =
BSplineInterpolateImageFunction<MovingImageType, CoordinateRepresentationType, float>;
using BSplineInterpolatorFloatPointer = typename BSplineInterpolatorFloatType::Pointer;
using ReducedBSplineInterpolatorType =
ReducedDimensionBSplineInterpolateImageFunction<MovingImageType, CoordinateRepresentationType, double>;
using ReducedBSplineInterpolatorPointer = typename ReducedBSplineInterpolatorType::Pointer;
using LinearInterpolatorType = AdvancedLinearInterpolateImageFunction<MovingImageType, CoordinateRepresentationType>;
using LinearInterpolatorPointer = typename LinearInterpolatorType::Pointer;
using MovingImageDerivativeType = typename BSplineInterpolatorType::CovariantVectorType;
using NonZeroJacobianIndicesType = typename AdvancedTransformType::NonZeroJacobianIndicesType;
mutable ImageSamplerPointer m_ImageSampler{ nullptr };
typename AdvancedTransformType::Pointer m_AdvancedTransform{ nullptr };
mutable bool m_TransformIsBSpline{ false };
FixedImagePixelType m_FixedImageTrueMin{ 0 };
FixedImagePixelType m_FixedImageTrueMax{ 1 };
MovingImagePixelType m_MovingImageTrueMin{ 0 };
MovingImagePixelType m_MovingImageTrueMax{ 1 };
FixedImageLimiterOutputType m_FixedImageMinLimit{ 0 };
FixedImageLimiterOutputType m_FixedImageMaxLimit{ 1 };
MovingImageLimiterOutputType m_MovingImageMinLimit{ 0 };
MovingImageLimiterOutputType m_MovingImageMaxLimit{ 1 };
virtual void ThreadedGetValue(ThreadIdType) const {}
virtual void
AfterThreadedGetValue(MeasureType &) const
{}
static ITK_THREAD_RETURN_FUNCTION_CALL_CONVENTION
GetValueThreaderCallback(void * arg);
void
LaunchGetValueThreaderCallback() const;
virtual void ThreadedGetValueAndDerivative(ThreadIdType) const {}
virtual void
AfterThreadedGetValueAndDerivative(MeasureType &, DerivativeType &) const
{}
static ITK_THREAD_RETURN_FUNCTION_CALL_CONVENTION
GetValueAndDerivativeThreaderCallback(void * arg);
void
LaunchGetValueAndDerivativeThreaderCallback() const;
static ITK_THREAD_RETURN_FUNCTION_CALL_CONVENTION
AccumulateDerivativesThreaderCallback(void * arg);
bool m_UseMetricSingleThreaded{ true };
bool m_UseMultiThread{ false };
struct MultiThreaderParameterType
{
// To give the threads access to all members.
AdvancedImageToImageMetric * st_Metric;
// Used for accumulating derivatives
DerivativeValueType * st_DerivativePointer;
DerivativeValueType st_NormalizationFactor;
};
mutable MultiThreaderParameterType m_ThreaderMetricParameters{};
// test per thread struct with padding and alignment
struct GetValueAndDerivativePerThreadStruct
{
SizeValueType st_NumberOfPixelsCounted;
MeasureType st_Value;
DerivativeType st_Derivative;
};
itkPadStruct(ITK_CACHE_LINE_ALIGNMENT,
GetValueAndDerivativePerThreadStruct,
PaddedGetValueAndDerivativePerThreadStruct);
itkAlignedTypedef(ITK_CACHE_LINE_ALIGNMENT,
PaddedGetValueAndDerivativePerThreadStruct,
AlignedGetValueAndDerivativePerThreadStruct);
mutable std::unique_ptr<AlignedGetValueAndDerivativePerThreadStruct[]> m_GetValueAndDerivativePerThreadVariables{
nullptr
};
mutable ThreadIdType m_GetValueAndDerivativePerThreadVariablesSize{ 0 };
virtual void
InitializeThreadingParameters() const;
virtual void
InitializeImageSampler();
itkSetMacro(UseImageSampler, bool);
void
CheckNumberOfSamples(unsigned long wanted, unsigned long found) const;
void
CheckForBSplineInterpolator();
virtual bool
EvaluateMovingImageValueAndDerivative(const MovingImagePointType & mappedPoint,
RealType & movingImageValue,
MovingImageDerivativeType * gradient) const
{
return EvaluateMovingImageValueAndDerivativeWithOptionalThreadId(mappedPoint, movingImageValue, gradient);
}
/* A faster version of `EvaluateMovingImageValueAndDerivative`: Non-virtual, using multithreading, and doing less
* dynamic memory allocation/decallocation operations, internally. */
bool
FastEvaluateMovingImageValueAndDerivative(const MovingImagePointType & mappedPoint,
RealType & movingImageValue,
MovingImageDerivativeType * gradient,
const ThreadIdType threadId) const
{
return EvaluateMovingImageValueAndDerivativeWithOptionalThreadId(mappedPoint, movingImageValue, gradient, threadId);
}
virtual void
EvaluateTransformJacobianInnerProduct(const TransformJacobianType & jacobian,
const MovingImageDerivativeType & movingImageDerivative,
DerivativeType & imageJacobian) const;
void
CheckForAdvancedTransform();
void
CheckForBSplineTransform() const;
MovingImagePointType
TransformPoint(const FixedImagePointType & fixedImagePoint) const;
bool
EvaluateTransformJacobian(const FixedImagePointType & fixedImagePoint,
TransformJacobianType & jacobian,
NonZeroJacobianIndicesType & nzji) const;
virtual bool
IsInsideMovingMask(const MovingImagePointType & point) const;
void
InitializeLimiters();
itkSetMacro(UseFixedImageLimiter, bool);
itkSetMacro(UseMovingImageLimiter, bool);
double m_FixedLimitRangeRatio{ 0.01 };
double m_MovingLimitRangeRatio{ 0.01 };
// Prevent accidentally calling SetFixedImageMask or SetMovingImageMask through the ITK ImageToImageMetric interface.
void
SetFixedImageMask(typename Superclass::FixedImageMaskType *) final
{
itkExceptionMacro("Intentionally left unimplemented!");
}
void
SetFixedImageMask(const typename Superclass::FixedImageMaskType *) final
{
itkExceptionMacro("Intentionally left unimplemented!");
}
void
SetMovingImageMask(typename Superclass::MovingImageMaskType *) final
{
itkExceptionMacro("Intentionally left unimplemented!");
}
void
SetMovingImageMask(const typename Superclass::MovingImageMaskType *) final
{
itkExceptionMacro("Intentionally left unimplemented!");
}
// Protected using-declaration, to avoid `-Woverloaded-virtual` warnings from GCC (GCC 11.4) or clang (macos-12).
using Superclass::SetTransform;
private:
template <typename... TOptionalThreadId>
bool
EvaluateMovingImageValueAndDerivativeWithOptionalThreadId(const MovingImagePointType & mappedPoint,
RealType & movingImageValue,
MovingImageDerivativeType * gradient,
const TOptionalThreadId... optionalThreadId) const;
FixedImageLimiterPointer m_FixedImageLimiter{ nullptr };
MovingImageLimiterPointer m_MovingImageLimiter{ nullptr };
LinearInterpolatorPointer m_LinearInterpolator{ nullptr };
BSplineInterpolatorPointer m_BSplineInterpolator{ nullptr };
BSplineInterpolatorFloatPointer m_BSplineInterpolatorFloat{ nullptr };
ReducedBSplineInterpolatorPointer m_ReducedBSplineInterpolator{ nullptr };
bool m_UseImageSampler{ false };
bool m_UseFixedImageLimiter{ false };
bool m_UseMovingImageLimiter{ false };
double m_RequiredRatioOfValidSamples{ 0.25 };
bool m_UseMovingImageDerivativeScales{ false };
bool m_ScaleGradientWithRespectToMovingImageOrientation{ false };
MovingImageDerivativeScalesType m_MovingImageDerivativeScales{ MovingImageDerivativeScalesType::Filled(1.0) };
// Private using-declarations, to avoid `-Woverloaded-virtual` warnings from GCC (GCC 11.4) or clang (macos-12).
using Superclass::TransformPoint;
struct DummyMask
{};
// Prevent accidentally accessing m_FixedImageMask or m_MovingImageMask directly from the ITK's ImageToImageMetric.
static constexpr DummyMask m_FixedImageMask{};
static constexpr DummyMask m_MovingImageMask{};
};
} // end namespace itk
#ifndef ITK_MANUAL_INSTANTIATION
# include "itkAdvancedImageToImageMetric.hxx"
#endif
#endif // end #ifndef itkAdvancedImageToImageMetric_h
MovingImagePixelType
itk::AdvancedBSplineDeformableTransform
Deformable transform using a B-spline representation.
Definition itkAdvancedBSplineDeformableTransform.h:134
itk::AdvancedBSplineDeformableTransform< ScalarType, FixedImageDimension, 1 >::Pointer
SmartPointer< Self > Pointer
Definition itkAdvancedBSplineDeformableTransform.h:141
itk::AdvancedCombinationTransform
This class combines two transforms: an 'initial transform' with a 'current transform'.
Definition itkAdvancedCombinationTransform.h:57
itk::AdvancedImageToImageMetric< TFixedImage, TFixedImage >::m_MovingImageTrueMin
MovingImagePixelType m_MovingImageTrueMin
Definition itkAdvancedImageToImageMetric.h:374
itk::AdvancedImageToImageMetric< TFixedImage, TFixedImage >::m_MovingImageDerivativeScales
MovingImageDerivativeScalesType m_MovingImageDerivativeScales
Definition itkAdvancedImageToImageMetric.h:624
itk::AdvancedImageToImageMetric::itkStaticConstMacro
itkStaticConstMacro(MovingImageDimension, unsigned int, TMovingImage::ImageDimension)
itk::AdvancedImageToImageMetric< TFixedImage, TFixedImage >::m_MovingImageMaxLimit
MovingImageLimiterOutputType m_MovingImageMaxLimit
Definition itkAdvancedImageToImageMetric.h:379
itk::AdvancedImageToImageMetric::AfterThreadedGetValue
virtual void AfterThreadedGetValue(MeasureType &) const
Definition itkAdvancedImageToImageMetric.h:388
itk::AdvancedImageToImageMetric::IsInsideMovingMask
virtual bool IsInsideMovingMask(const MovingImagePointType &point) const
itk::AdvancedImageToImageMetric< TFixedImage, TFixedImage >::m_FixedImageMask
static constexpr DummyMask m_FixedImageMask
Definition itkAdvancedImageToImageMetric.h:633
itk::AdvancedImageToImageMetric::ThreadedGetValueAndDerivative
virtual void ThreadedGetValueAndDerivative(ThreadIdType) const
Definition itkAdvancedImageToImageMetric.h:400
itk::AdvancedImageToImageMetric::GetMovingImageMask
const MovingImageMaskType * GetMovingImageMask() const override
Definition itkAdvancedImageToImageMetric.h:197
itk::AdvancedImageToImageMetric::BSplineOrder1TransformPointer
typename BSplineOrder1TransformType::Pointer BSplineOrder1TransformPointer
Definition itkAdvancedImageToImageMetric.h:165
itk::AdvancedImageToImageMetric::Initialize
void Initialize() override
itk::AdvancedImageToImageMetric::MovingImagePointType
typename TransformType::OutputPointType MovingImagePointType
Definition itkAdvancedImageToImageMetric.h:338
itk::AdvancedImageToImageMetric::ImageSampleContainerPointer
typename ImageSamplerType::OutputVectorContainerPointer ImageSampleContainerPointer
Definition itkAdvancedImageToImageMetric.h:145
itk::AdvancedImageToImageMetric::PrintSelf
void PrintSelf(std::ostream &os, Indent indent) const override
itk::AdvancedImageToImageMetric::ITK_DISALLOW_COPY_AND_MOVE
ITK_DISALLOW_COPY_AND_MOVE(AdvancedImageToImageMetric)
itk::AdvancedImageToImageMetric< TFixedImage, TFixedImage >::m_TransformIsBSpline
bool m_TransformIsBSpline
Definition itkAdvancedImageToImageMetric.h:369
itk::AdvancedImageToImageMetric< TFixedImage, TFixedImage >::m_GetValueAndDerivativePerThreadVariablesSize
ThreadIdType m_GetValueAndDerivativePerThreadVariablesSize
Definition itkAdvancedImageToImageMetric.h:461
itk::AdvancedImageToImageMetric::Superclass
ImageToImageMetric< TFixedImage, TMovingImage > Superclass
Definition itkAdvancedImageToImageMetric.h:89
itk::AdvancedImageToImageMetric::MovingImageRegionType
typename MovingImageType::RegionType MovingImageRegionType
Definition itkAdvancedImageToImageMetric.h:138
itk::AdvancedImageToImageMetric::NonZeroJacobianIndicesType
typename AdvancedTransformType::NonZeroJacobianIndicesType NonZeroJacobianIndicesType
Definition itkAdvancedImageToImageMetric.h:356
itk::AdvancedImageToImageMetric< TFixedImage, TFixedImage >::m_UseFixedImageLimiter
bool m_UseFixedImageLimiter
Definition itkAdvancedImageToImageMetric.h:618
itk::AdvancedImageToImageMetric::EvaluateMovingImageValueAndDerivative
virtual bool EvaluateMovingImageValueAndDerivative(const MovingImagePointType &mappedPoint, RealType &movingImageValue, MovingImageDerivativeType *gradient) const
Definition itkAdvancedImageToImageMetric.h:500
itk::AdvancedImageToImageMetric< TFixedImage, TFixedImage >::m_MovingImageLimiter
MovingImageLimiterPointer m_MovingImageLimiter
Definition itkAdvancedImageToImageMetric.h:610
itk::AdvancedImageToImageMetric::CheckForAdvancedTransform
void CheckForAdvancedTransform()
itk::AdvancedImageToImageMetric::Self
AdvancedImageToImageMetric Self
Definition itkAdvancedImageToImageMetric.h:88
itk::AdvancedImageToImageMetric::MovingImageDerivativeScalesType
FixedArray< double, Self::MovingImageDimension > MovingImageDerivativeScalesType
Definition itkAdvancedImageToImageMetric.h:139
itk::AdvancedImageToImageMetric< TFixedImage, TFixedImage >::m_AdvancedTransform
AdvancedTransformType::Pointer m_AdvancedTransform
Definition itkAdvancedImageToImageMetric.h:366
itk::AdvancedImageToImageMetric::FixedImagePixelType
typename FixedImageType::PixelType FixedImagePixelType
Definition itkAdvancedImageToImageMetric.h:137
itk::AdvancedImageToImageMetric::LinearInterpolatorType
AdvancedLinearInterpolateImageFunction< MovingImageType, CoordinateRepresentationType > LinearInterpolatorType
Definition itkAdvancedImageToImageMetric.h:351
itk::AdvancedImageToImageMetric::BSplineInterpolatorFloatType
BSplineInterpolateImageFunction< MovingImageType, CoordinateRepresentationType, float > BSplineInterpolatorFloatType
Definition itkAdvancedImageToImageMetric.h:345
itk::AdvancedImageToImageMetric< TFixedImage, TFixedImage >::m_UseMetricSingleThreaded
bool m_UseMetricSingleThreaded
Definition itkAdvancedImageToImageMetric.h:420
itk::AdvancedImageToImageMetric::DerivativeValueType
typename DerivativeType::ValueType DerivativeValueType
Definition itkAdvancedImageToImageMetric.h:133
itk::AdvancedImageToImageMetric< TFixedImage, TFixedImage >::m_UseMovingImageDerivativeScales
bool m_UseMovingImageDerivativeScales
Definition itkAdvancedImageToImageMetric.h:621
itk::AdvancedImageToImageMetric::BSplineOrder3TransformType
AdvancedBSplineDeformableTransform< ScalarType, FixedImageDimension, 3 > BSplineOrder3TransformType
Definition itkAdvancedImageToImageMetric.h:164
itk::AdvancedImageToImageMetric< TFixedImage, TFixedImage >::m_FixedImageTrueMin
FixedImagePixelType m_FixedImageTrueMin
Definition itkAdvancedImageToImageMetric.h:372
itk::AdvancedImageToImageMetric::FixedImageLimiterPointer
typename FixedImageLimiterType::Pointer FixedImageLimiterPointer
Definition itkAdvancedImageToImageMetric.h:149
itk::AdvancedImageToImageMetric::CheckNumberOfSamples
void CheckNumberOfSamples(unsigned long wanted, unsigned long found) const
itk::AdvancedImageToImageMetric< TFixedImage, TFixedImage >::m_MovingLimitRangeRatio
double m_MovingLimitRangeRatio
Definition itkAdvancedImageToImageMetric.h:570
itk::AdvancedImageToImageMetric::InitializeImageSampler
virtual void InitializeImageSampler()
itk::AdvancedImageToImageMetric::SetFixedImageMask
void SetFixedImageMask(const typename Superclass::FixedImageMaskType *) final
Definition itkAdvancedImageToImageMetric.h:580
itk::AdvancedImageToImageMetric::FixedImageIndexValueType
typename FixedImageIndexType::IndexValueType FixedImageIndexValueType
Definition itkAdvancedImageToImageMetric.h:335
itk::AdvancedImageToImageMetric::MovingImageIndexType
typename MovingImageType::IndexType MovingImageIndexType
Definition itkAdvancedImageToImageMetric.h:336
itk::AdvancedImageToImageMetric::SetTransform
virtual void SetTransform(AdvancedTransformType *arg)
Definition itkAdvancedImageToImageMetric.h:206
itk::AdvancedImageToImageMetric::LaunchGetValueAndDerivativeThreaderCallback
void LaunchGetValueAndDerivativeThreaderCallback() const
itk::AdvancedImageToImageMetric::ImageSampleContainerType
typename ImageSamplerType::OutputVectorContainerType ImageSampleContainerType
Definition itkAdvancedImageToImageMetric.h:144
itk::AdvancedImageToImageMetric::GetValueAndDerivativeThreaderCallback
static ITK_THREAD_RETURN_FUNCTION_CALL_CONVENTION GetValueAndDerivativeThreaderCallback(void *arg)
itk::AdvancedImageToImageMetric::MovingImagePointer
typename MovingImageType::Pointer MovingImagePointer
Definition itkAdvancedImageToImageMetric.h:104
itk::AdvancedImageToImageMetric< TFixedImage, TFixedImage >::m_BSplineInterpolatorFloat
BSplineInterpolatorFloatPointer m_BSplineInterpolatorFloat
Definition itkAdvancedImageToImageMetric.h:613
itk::AdvancedImageToImageMetric< TFixedImage, TFixedImage >::FixedImageMaskType
ImageMaskSpatialObject< Self::FixedImageDimension > FixedImageMaskType
Definition itkAdvancedImageToImageMetric.h:124
itk::AdvancedImageToImageMetric::FastEvaluateMovingImageValueAndDerivative
bool FastEvaluateMovingImageValueAndDerivative(const MovingImagePointType &mappedPoint, RealType &movingImageValue, MovingImageDerivativeType *gradient, const ThreadIdType threadId) const
Definition itkAdvancedImageToImageMetric.h:510
itk::AdvancedImageToImageMetric::SetFixedImageMask
void SetFixedImageMask(typename Superclass::FixedImageMaskType *) final
Definition itkAdvancedImageToImageMetric.h:574
itk::AdvancedImageToImageMetric::BSplineOrder3TransformPointer
typename BSplineOrder3TransformType::Pointer BSplineOrder3TransformPointer
Definition itkAdvancedImageToImageMetric.h:167
itk::AdvancedImageToImageMetric::LaunchGetValueThreaderCallback
void LaunchGetValueThreaderCallback() const
itk::AdvancedImageToImageMetric::InitializeThreadingParameters
virtual void InitializeThreadingParameters() const
itk::AdvancedImageToImageMetric< TFixedImage, TFixedImage >::m_UseMultiThread
bool m_UseMultiThread
Definition itkAdvancedImageToImageMetric.h:421
itk::AdvancedImageToImageMetric::~AdvancedImageToImageMetric
~AdvancedImageToImageMetric() override=default
itk::AdvancedImageToImageMetric::FixedImagePointer
typename FixedImageType::Pointer FixedImagePointer
Definition itkAdvancedImageToImageMetric.h:107
itk::AdvancedImageToImageMetric::m_ImageSampler
ImageSamplerPointer m_ImageSampler
Definition itkAdvancedImageToImageMetric.h:363
itk::AdvancedImageToImageMetric::ReducedBSplineInterpolatorPointer
typename ReducedBSplineInterpolatorType::Pointer ReducedBSplineInterpolatorPointer
Definition itkAdvancedImageToImageMetric.h:350
itk::AdvancedImageToImageMetric::BeforeThreadedGetValueAndDerivative
virtual void BeforeThreadedGetValueAndDerivative(const TransformParametersType &parameters) const
itk::AdvancedImageToImageMetric::BSplineOrder2TransformPointer
typename BSplineOrder2TransformType::Pointer BSplineOrder2TransformPointer
Definition itkAdvancedImageToImageMetric.h:166
itk::AdvancedImageToImageMetric< TFixedImage, TFixedImage >::m_UseMovingImageLimiter
bool m_UseMovingImageLimiter
Definition itkAdvancedImageToImageMetric.h:619
itk::AdvancedImageToImageMetric< TFixedImage, TFixedImage >::m_ScaleGradientWithRespectToMovingImageOrientation
bool m_ScaleGradientWithRespectToMovingImageOrientation
Definition itkAdvancedImageToImageMetric.h:622
itk::AdvancedImageToImageMetric::AdvancedTransformType
AdvancedTransform< ScalarType, FixedImageDimension, MovingImageDimension > AdvancedTransformType
Definition itkAdvancedImageToImageMetric.h:157
itk::AdvancedImageToImageMetric::FixedImageIndexType
typename FixedImageType::IndexType FixedImageIndexType
Definition itkAdvancedImageToImageMetric.h:334
itk::AdvancedImageToImageMetric< TFixedImage, TFixedImage >::m_BSplineInterpolator
BSplineInterpolatorPointer m_BSplineInterpolator
Definition itkAdvancedImageToImageMetric.h:612
itk::AdvancedImageToImageMetric::ThreadedGetValue
virtual void ThreadedGetValue(ThreadIdType) const
Definition itkAdvancedImageToImageMetric.h:384
itk::AdvancedImageToImageMetric< TFixedImage, TFixedImage >::m_MovingImageMinLimit
MovingImageLimiterOutputType m_MovingImageMinLimit
Definition itkAdvancedImageToImageMetric.h:378
itk::AdvancedImageToImageMetric< TFixedImage, TFixedImage >::m_FixedLimitRangeRatio
double m_FixedLimitRangeRatio
Definition itkAdvancedImageToImageMetric.h:569
itk::AdvancedImageToImageMetric::itkAlignedTypedef
itkAlignedTypedef(ITK_CACHE_LINE_ALIGNMENT, PaddedGetValueAndDerivativePerThreadStruct, AlignedGetValueAndDerivativePerThreadStruct)
itk::AdvancedImageToImageMetric::BSplineOrder1TransformType
AdvancedBSplineDeformableTransform< ScalarType, FixedImageDimension, 1 > BSplineOrder1TransformType
Definition itkAdvancedImageToImageMetric.h:162
itk::AdvancedImageToImageMetric::FixedImageLimiterType
LimiterFunctionBase< RealType, FixedImageDimension > FixedImageLimiterType
Definition itkAdvancedImageToImageMetric.h:148
itk::AdvancedImageToImageMetric::AdvancedImageToImageMetric
AdvancedImageToImageMetric()
itk::AdvancedImageToImageMetric::BSplineInterpolatorPointer
typename BSplineInterpolatorType::Pointer BSplineInterpolatorPointer
Definition itkAdvancedImageToImageMetric.h:344
itk::AdvancedImageToImageMetric< TFixedImage, TFixedImage >::EvaluateMovingImageValueAndDerivativeWithOptionalThreadId
bool EvaluateMovingImageValueAndDerivativeWithOptionalThreadId(const MovingImagePointType &mappedPoint, RealType &movingImageValue, MovingImageDerivativeType *gradient, const TOptionalThreadId... optionalThreadId) const
itk::AdvancedImageToImageMetric::ImageSamplerType
ImageSamplerBase< FixedImageType > ImageSamplerType
Definition itkAdvancedImageToImageMetric.h:142
itk::AdvancedImageToImageMetric< TFixedImage, TFixedImage >::m_FixedImageLimiter
FixedImageLimiterPointer m_FixedImageLimiter
Definition itkAdvancedImageToImageMetric.h:609
itk::AdvancedImageToImageMetric< TFixedImage, TFixedImage >::m_FixedImageMinLimit
FixedImageLimiterOutputType m_FixedImageMinLimit
Definition itkAdvancedImageToImageMetric.h:376
itk::AdvancedImageToImageMetric::ThreadInfoType
MultiThreaderBase::WorkUnitInfo ThreadInfoType
Definition itkAdvancedImageToImageMetric.h:170
itk::AdvancedImageToImageMetric::MovingImageDerivativeType
typename BSplineInterpolatorType::CovariantVectorType MovingImageDerivativeType
Definition itkAdvancedImageToImageMetric.h:353
itk::AdvancedImageToImageMetric::CheckForBSplineTransform
void CheckForBSplineTransform() const
itk::AdvancedImageToImageMetric::AfterThreadedGetValueAndDerivative
virtual void AfterThreadedGetValueAndDerivative(MeasureType &, DerivativeType &) const
Definition itkAdvancedImageToImageMetric.h:404
itk::AdvancedImageToImageMetric< TFixedImage, TFixedImage >::m_ReducedBSplineInterpolator
ReducedBSplineInterpolatorPointer m_ReducedBSplineInterpolator
Definition itkAdvancedImageToImageMetric.h:614
itk::AdvancedImageToImageMetric::AccumulateDerivativesThreaderCallback
static ITK_THREAD_RETURN_FUNCTION_CALL_CONVENTION AccumulateDerivativesThreaderCallback(void *arg)
itk::AdvancedImageToImageMetric< TFixedImage, TFixedImage >::m_FixedImageTrueMax
FixedImagePixelType m_FixedImageTrueMax
Definition itkAdvancedImageToImageMetric.h:373
itk::AdvancedImageToImageMetric::SetMovingImageMask
virtual void SetMovingImageMask(const MovingImageMaskType *const arg)
Definition itkAdvancedImageToImageMetric.h:182
itk::AdvancedImageToImageMetric::EvaluateTransformJacobianInnerProduct
virtual void EvaluateTransformJacobianInnerProduct(const TransformJacobianType &jacobian, const MovingImageDerivativeType &movingImageDerivative, DerivativeType &imageJacobian) const
itk::AdvancedImageToImageMetric< TFixedImage, TFixedImage >::m_GetValueAndDerivativePerThreadVariables
std::unique_ptr< AlignedGetValueAndDerivativePerThreadStruct[]> m_GetValueAndDerivativePerThreadVariables
Definition itkAdvancedImageToImageMetric.h:458
itk::AdvancedImageToImageMetric< TFixedImage, TFixedImage >::m_FixedImageMaxLimit
FixedImageLimiterOutputType m_FixedImageMaxLimit
Definition itkAdvancedImageToImageMetric.h:377
itk::AdvancedImageToImageMetric::ConstPointer
SmartPointer< const Self > ConstPointer
Definition itkAdvancedImageToImageMetric.h:91
itk::AdvancedImageToImageMetric::MovingImageLimiterType
LimiterFunctionBase< RealType, MovingImageDimension > MovingImageLimiterType
Definition itkAdvancedImageToImageMetric.h:151
itk::AdvancedImageToImageMetric::GetFixedImageMask
const FixedImageMaskType * GetFixedImageMask() const override
Definition itkAdvancedImageToImageMetric.h:189
itk::AdvancedImageToImageMetric::TransformPoint
MovingImagePointType TransformPoint(const FixedImagePointType &fixedImagePoint) const
itk::AdvancedImageToImageMetric::MovingImageLimiterOutputType
typename MovingImageLimiterType::OutputType MovingImageLimiterOutputType
Definition itkAdvancedImageToImageMetric.h:153
itk::AdvancedImageToImageMetric::GetImageSampler
ImageSamplerType * GetImageSampler() const
Definition itkAdvancedImageToImageMetric.h:235
itk::AdvancedImageToImageMetric::FixedImagePointType
typename TransformType::InputPointType FixedImagePointType
Definition itkAdvancedImageToImageMetric.h:337
itk::AdvancedImageToImageMetric::GetTransform
const AdvancedTransformType * GetTransform() const override
Definition itkAdvancedImageToImageMetric.h:226
itk::AdvancedImageToImageMetric< TFixedImage, TFixedImage >::m_RequiredRatioOfValidSamples
double m_RequiredRatioOfValidSamples
Definition itkAdvancedImageToImageMetric.h:620
itk::AdvancedImageToImageMetric::SetMovingImageMask
void SetMovingImageMask(const typename Superclass::MovingImageMaskType *) final
Definition itkAdvancedImageToImageMetric.h:592
itk::AdvancedImageToImageMetric::FixedImageLimiterOutputType
typename FixedImageLimiterType::OutputType FixedImageLimiterOutputType
Definition itkAdvancedImageToImageMetric.h:150
itk::AdvancedImageToImageMetric::InitializeLimiters
void InitializeLimiters()
itk::AdvancedImageToImageMetric::FixedImageMaskPointer
SmartPointer< FixedImageMaskType > FixedImageMaskPointer
Definition itkAdvancedImageToImageMetric.h:125
itk::AdvancedImageToImageMetric::itkStaticConstMacro
itkStaticConstMacro(FixedImageDimension, unsigned int, TFixedImage::ImageDimension)
itk::AdvancedImageToImageMetric::SetMovingImageMask
void SetMovingImageMask(typename Superclass::MovingImageMaskType *) final
Definition itkAdvancedImageToImageMetric.h:586
itk::AdvancedImageToImageMetric::BSplineInterpolatorFloatPointer
typename BSplineInterpolatorFloatType::Pointer BSplineInterpolatorFloatPointer
Definition itkAdvancedImageToImageMetric.h:347
itk::AdvancedImageToImageMetric::BSplineInterpolatorType
BSplineInterpolateImageFunction< MovingImageType, CoordinateRepresentationType, double > BSplineInterpolatorType
Definition itkAdvancedImageToImageMetric.h:342
itk::AdvancedImageToImageMetric::GetTransform
AdvancedTransformType * GetTransform() override
Definition itkAdvancedImageToImageMetric.h:219
itk::AdvancedImageToImageMetric::ReducedBSplineInterpolatorType
ReducedDimensionBSplineInterpolateImageFunction< MovingImageType, CoordinateRepresentationType, double > ReducedBSplineInterpolatorType
Definition itkAdvancedImageToImageMetric.h:348
itk::AdvancedImageToImageMetric::ScalarType
typename TransformType::ScalarType ScalarType
Definition itkAdvancedImageToImageMetric.h:156
itk::AdvancedImageToImageMetric::GetValueThreaderCallback
static ITK_THREAD_RETURN_FUNCTION_CALL_CONVENTION GetValueThreaderCallback(void *arg)
itk::AdvancedImageToImageMetric::SetFixedImageMask
virtual void SetFixedImageMask(const FixedImageMaskType *const arg)
Definition itkAdvancedImageToImageMetric.h:175
itk::AdvancedImageToImageMetric::FixedImageMaskConstPointer
SmartPointer< const FixedImageMaskType > FixedImageMaskConstPointer
Definition itkAdvancedImageToImageMetric.h:126
itk::AdvancedImageToImageMetric::ImageSamplerPointer
typename ImageSamplerType::Pointer ImageSamplerPointer
Definition itkAdvancedImageToImageMetric.h:143
itk::AdvancedImageToImageMetric::EvaluateTransformJacobian
bool EvaluateTransformJacobian(const FixedImagePointType &fixedImagePoint, TransformJacobianType &jacobian, NonZeroJacobianIndicesType &nzji) const
itk::AdvancedImageToImageMetric::MovingImageContinuousIndexType
typename InterpolatorType::ContinuousIndexType MovingImageContinuousIndexType
Definition itkAdvancedImageToImageMetric.h:339
itk::AdvancedImageToImageMetric::CombinationTransformType
AdvancedCombinationTransform< ScalarType, FixedImageDimension > CombinationTransformType
Definition itkAdvancedImageToImageMetric.h:161
itk::AdvancedImageToImageMetric::NumberOfParametersType
typename AdvancedTransformType::NumberOfParametersType NumberOfParametersType
Definition itkAdvancedImageToImageMetric.h:158
itk::AdvancedImageToImageMetric::BSplineOrder2TransformType
AdvancedBSplineDeformableTransform< ScalarType, FixedImageDimension, 2 > BSplineOrder2TransformType
Definition itkAdvancedImageToImageMetric.h:163
itk::AdvancedImageToImageMetric< TFixedImage, TFixedImage >::m_MovingImageMask
static constexpr DummyMask m_MovingImageMask
Definition itkAdvancedImageToImageMetric.h:634
itk::AdvancedImageToImageMetric::MovingImageMaskConstPointer
SmartPointer< const MovingImageMaskType > MovingImageMaskConstPointer
Definition itkAdvancedImageToImageMetric.h:129
itk::AdvancedImageToImageMetric::CheckForBSplineInterpolator
void CheckForBSplineInterpolator()
itk::AdvancedImageToImageMetric::MovingImageLimiterPointer
typename MovingImageLimiterType::Pointer MovingImageLimiterPointer
Definition itkAdvancedImageToImageMetric.h:152
itk::AdvancedImageToImageMetric::itkPadStruct
itkPadStruct(ITK_CACHE_LINE_ALIGNMENT, GetValueAndDerivativePerThreadStruct, PaddedGetValueAndDerivativePerThreadStruct)
itk::AdvancedImageToImageMetric< TFixedImage, TFixedImage >::m_MovingImageTrueMax
MovingImagePixelType m_MovingImageTrueMax
Definition itkAdvancedImageToImageMetric.h:375
itk::AdvancedImageToImageMetric< TFixedImage, TFixedImage >::m_UseImageSampler
bool m_UseImageSampler
Definition itkAdvancedImageToImageMetric.h:617
itk::AdvancedImageToImageMetric< TFixedImage, TFixedImage >::MovingImageMaskType
ImageMaskSpatialObject< Self::MovingImageDimension > MovingImageMaskType
Definition itkAdvancedImageToImageMetric.h:127
itk::AdvancedImageToImageMetric< TFixedImage, TFixedImage >::m_ThreaderMetricParameters
MultiThreaderParameterType m_ThreaderMetricParameters
Definition itkAdvancedImageToImageMetric.h:434
itk::AdvancedImageToImageMetric::LinearInterpolatorPointer
typename LinearInterpolatorType::Pointer LinearInterpolatorPointer
Definition itkAdvancedImageToImageMetric.h:352
itk::AdvancedImageToImageMetric< TFixedImage, TFixedImage >::m_LinearInterpolator
LinearInterpolatorPointer m_LinearInterpolator
Definition itkAdvancedImageToImageMetric.h:611
itk::AdvancedLinearInterpolateImageFunction
Linearly interpolate an image at specified positions.
Definition itkAdvancedLinearInterpolateImageFunction.h:65
itk::AdvancedLinearInterpolateImageFunction< MovingImageType, CoordinateRepresentationType >::Pointer
SmartPointer< Self > Pointer
Definition itkAdvancedLinearInterpolateImageFunction.h:72
itk::AdvancedTransform
Transform maps points, vectors and covariant vectors from an input space to an output space.
Definition itkAdvancedTransform.h:84
itk::AdvancedTransform< ScalarType, FixedImageDimension, MovingImageDimension >::Pointer
SmartPointer< Self > Pointer
Definition itkAdvancedTransform.h:91
itk::AdvancedTransform< ScalarType, FixedImageDimension, MovingImageDimension >::NonZeroJacobianIndicesType
std::vector< unsigned long > NonZeroJacobianIndicesType
Definition itkAdvancedTransform.h:133
itk::ImageSamplerBase
This class is a base class for any image sampler.
Definition itkImageSamplerBase.h:44
itk::ImageSamplerBase< FixedImageType >::OutputVectorContainerPointer
typename OutputVectorContainerType::Pointer OutputVectorContainerPointer
itk::ImageSamplerBase< FixedImageType >::OutputVectorContainerType
VectorDataContainer< std::vcl_size_t, ImageSample< FixedImageType > > OutputVectorContainerType
itk::ImageSamplerBase< FixedImageType >::Pointer
SmartPointer< Self > Pointer
Definition itkImageSamplerBase.h:51
itk::KNNGraphAlphaMutualInformationImageToImageMetric::Pointer
SmartPointer< Self > Pointer
Definition itkKNNGraphAlphaMutualInformationImageToImageMetric.h:83
itk::LimiterFunctionBase
Base class for all ITK limiter function objects.
Definition itkLimiterFunctionBase.h:51
itk::LimiterFunctionBase< RealType, FixedImageDimension >::Pointer
SmartPointer< Self > Pointer
Definition itkLimiterFunctionBase.h:58
itk::ParzenWindowMutualInformationImageToImageMetric::FixedImageMaskType
ImageMaskSpatialObject< Self::FixedImageDimension > FixedImageMaskType
Definition itkAdvancedImageToImageMetric.h:124
itk::ParzenWindowMutualInformationImageToImageMetric::MovingImageMaskPointer
SmartPointer< MovingImageMaskType > MovingImageMaskPointer
Definition itkAdvancedImageToImageMetric.h:128
itk::ParzenWindowMutualInformationImageToImageMetric::ImageSamplerType
ImageSamplerBase< FixedImageType > ImageSamplerType
Definition itkAdvancedImageToImageMetric.h:142
itk::ParzenWindowMutualInformationImageToImageMetric::MovingImageMaskType
ImageMaskSpatialObject< Self::MovingImageDimension > MovingImageMaskType
Definition itkAdvancedImageToImageMetric.h:127
itk::ReducedDimensionBSplineInterpolateImageFunction
Evaluates the B-Spline interpolation of an image. Spline order may be from 0 to 5.
Definition itkReducedDimensionBSplineInterpolateImageFunction.h:87
itk::ReducedDimensionBSplineInterpolateImageFunction< MovingImageType, CoordinateRepresentationType, double >::Pointer
SmartPointer< Self > Pointer
Definition itkReducedDimensionBSplineInterpolateImageFunction.h:94
itkAdvancedBSplineDeformableTransform.h
itkAdvancedCombinationTransform.h
itkAdvancedLinearInterpolateImageFunction.h
itkAdvancedTransform.h
itkImageSamplerBase.h
itkLimiterFunctionBase.h
itkReducedDimensionBSplineInterpolateImageFunction.h
itk
Definition itkAdvancedImageToImageMetric.h:43
itk::AdvancedImageToImageMetric::DummyMask
Definition itkAdvancedImageToImageMetric.h:630
itk::AdvancedImageToImageMetric::GetValueAndDerivativePerThreadStruct
Definition itkAdvancedImageToImageMetric.h:447
itk::AdvancedImageToImageMetric::GetValueAndDerivativePerThreadStruct::st_Derivative
DerivativeType st_Derivative
Definition itkAdvancedImageToImageMetric.h:450
itk::AdvancedImageToImageMetric::GetValueAndDerivativePerThreadStruct::st_Value
MeasureType st_Value
Definition itkAdvancedImageToImageMetric.h:449
itk::AdvancedImageToImageMetric::GetValueAndDerivativePerThreadStruct::st_NumberOfPixelsCounted
SizeValueType st_NumberOfPixelsCounted
Definition itkAdvancedImageToImageMetric.h:448
itk::AdvancedImageToImageMetric::MultiThreaderParameterType
Definition itkAdvancedImageToImageMetric.h:427
itk::AdvancedImageToImageMetric::MultiThreaderParameterType::st_NormalizationFactor
DerivativeValueType st_NormalizationFactor
Definition itkAdvancedImageToImageMetric.h:432
itk::AdvancedImageToImageMetric::MultiThreaderParameterType::st_DerivativePointer
DerivativeValueType * st_DerivativePointer
Definition itkAdvancedImageToImageMetric.h:431
itk::AdvancedImageToImageMetric::MultiThreaderParameterType::st_Metric
AdvancedImageToImageMetric * st_Metric
Definition itkAdvancedImageToImageMetric.h:429

Generated on 1768596610 for elastix by 1.15.0 |