18#ifndef itkMatchCardinalityImageToImageMetric_h
19#define itkMatchCardinalityImageToImageMetric_h
66template <
typename TFixedImage,
typename TMovingImage>
85 using typename Superclass::RealType;
86 using typename Superclass::TransformType;
87 using typename Superclass::TransformPointer;
88 using typename Superclass::TransformParametersType;
89 using typename Superclass::TransformJacobianType;
90 using typename Superclass::GradientPixelType;
92 using typename Superclass::MeasureType;
93 using typename Superclass::DerivativeType;
94 using typename Superclass::FixedImageType;
95 using typename Superclass::MovingImageType;
96 using typename Superclass::FixedImageConstPointer;
97 using typename Superclass::MovingImageConstPointer;
98 using typename Superclass::FixedImageRegionType;
104 itkWarningMacro(
"This metric does not provide metric derivatives.");
124 itkSetMacro(MeasureMatches,
bool);
125 itkBooleanMacro(MeasureMatches);
126 itkGetConstMacro(MeasureMatches,
bool);
183 bool m_MeasureMatches{
true };
184 std::vector<MeasureType> m_ThreadMatches{};
185 std::vector<SizeValueType> m_ThreadCounts{};
194#ifndef ITK_MANUAL_INSTANTIATION
195# include "itkMatchCardinalityImageToImageMetric.hxx"
Array class with size defined at construction time.
void Fill(TValue const &v)
Computes similarity between regions of two images.
typename FixedImageType::RegionType FixedImageRegionType
typename TransformType::ParametersType TransformParametersType
Control indentation during Print() invocation.
Light weight base class for most itk classes.
Computes similarity between two objects to be registered.
void PrintSelf(std::ostream &os, Indent indent) const override
~MatchCardinalityImageToImageMetric() override=default
MeasureType GetValue(const TransformParametersType ¶meters) const override
MultiThreaderBase * GetMultiThreader()
MatchCardinalityImageToImageMetric()
virtual ThreadIdType SplitFixedRegion(ThreadIdType i, int num, FixedImageRegionType &splitRegion)
static ITK_THREAD_RETURN_FUNCTION_CALL_CONVENTION ThreaderCallback(void *arg)
virtual void ThreadedGetValue(const FixedImageRegionType ®ionForThread, ThreadIdType threadId)
void GetDerivative(const TransformParametersType &, DerivativeType &derivative) const override
MeasureType GetNonconstValue(const TransformParametersType ¶meters)
A class for performing multithreaded execution.
The "itk" namespace contains all Insight Segmentation and Registration Toolkit (ITK) classes....
unsigned int ThreadIdType
itk::ITK_THREAD_RETURN_TYPE ITK_THREAD_RETURN_FUNCTION_CALL_CONVENTION