17 #ifndef __itkOptMatchCardinalityImageToImageMetric_h
18 #define __itkOptMatchCardinalityImageToImageMetric_h
66 template <
class TFixedImage,
class TMovingImage >
67 class ITK_EXPORT MatchCardinalityImageToImageMetric :
68 public ImageToImageMetric< TFixedImage, TMovingImage>
86 typedef typename Superclass::RealType
RealType;
106 itkWarningMacro(<<
"This metric does not provide metric derivatives.");
116 MeasureType GetValue(
const TransformParametersType & parameters )
const;
124 itkSetMacro(MeasureMatches,
bool);
125 itkBooleanMacro(MeasureMatches);
126 itkGetConstMacro(MeasureMatches,
bool);
135 void PrintSelf(std::ostream& os,
Indent indent)
const;
142 MeasureType GetNonconstValue(
const TransformParametersType & parameters );
149 void ThreadedGetValue(
const FixedImageRegionType& outputRegionForThread,
158 int SplitFixedRegion(
int i,
int num, FixedImageRegionType& splitRegion);
172 MatchCardinalityImageToImageMetric(
const Self&);
173 void operator=(
const Self&);
175 bool m_MeasureMatches;
176 std::vector<MeasureType> m_ThreadMatches;
177 std::vector<unsigned long> m_ThreadCounts;
186 #ifndef ITK_MANUAL_INSTANTIATION