ITK  6.0.0
Insight Toolkit
itkMutualInformationHistogramImageToImageMetric.h
Go to the documentation of this file.
1/*=========================================================================
2 *
3 * Copyright NumFOCUS
4 *
5 * Licensed under the Apache License, Version 2.0 (the "License");
6 * you may not use this file except in compliance with the License.
7 * You may obtain a copy of the License at
8 *
9 * https://www.apache.org/licenses/LICENSE-2.0.txt
10 *
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
16 *
17 *=========================================================================*/
18#ifndef itkMutualInformationHistogramImageToImageMetric_h
19#define itkMutualInformationHistogramImageToImageMetric_h
20
22
23namespace itk
24{
37template <typename TFixedImage, typename TMovingImage>
39 : public HistogramImageToImageMetric<TFixedImage, TMovingImage>
40{
41public:
42 ITK_DISALLOW_COPY_AND_MOVE(MutualInformationHistogramImageToImageMetric);
43
49
51 itkNewMacro(Self);
52
54 itkOverrideGetNameOfClassMacro(MutualInformationHistogramImageToImageMetric);
55
57 using typename Superclass::RealType;
58 using typename Superclass::TransformType;
59 using typename Superclass::TransformPointer;
60 using typename Superclass::TransformParametersType;
61 using typename Superclass::TransformJacobianType;
62 using typename Superclass::GradientPixelType;
63
64 using typename Superclass::MeasureType;
65 using typename Superclass::DerivativeType;
66 using typename Superclass::FixedImageType;
67 using typename Superclass::MovingImageType;
68 using typename Superclass::FixedImageConstPointer;
69 using typename Superclass::MovingImageConstPointer;
70
71 using typename Superclass::HistogramType;
75
76protected:
85 EvaluateMeasure(HistogramType & histogram) const override;
86};
87} // End namespace itk.
88
89#ifndef ITK_MANUAL_INSTANTIATION
90# include "itkMutualInformationHistogramImageToImageMetric.hxx"
91#endif
92
93#endif // itkMutualInformationHistogramImageToImageMetric_h
Computes similarity between two objects to be registered.
Light weight base class for most itk classes.
Computes the mutual information between two images to be registered using the histograms of the inten...
~MutualInformationHistogramImageToImageMetric() override=default
MeasureType EvaluateMeasure(HistogramType &histogram) const override
class that walks through the elements of the histogram.
Definition: itkHistogram.h:433
This class stores measurement vectors in the context of n-dimensional histogram.
Definition: itkHistogram.h:78
typename FrequencyContainerType::AbsoluteFrequencyType AbsoluteFrequencyType
Definition: itkHistogram.h:112
The "itk" namespace contains all Insight Segmentation and Registration Toolkit (ITK) classes....