go home Home | Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | File List | Namespace Members | Data Fields | Globals | Related Pages
elxNormalizedMutualInformationMetric.h
Go to the documentation of this file.
1 /*======================================================================
2 
3  This file is part of the elastix software.
4 
5  Copyright (c) University Medical Center Utrecht. All rights reserved.
6  See src/CopyrightElastix.txt or http://elastix.isi.uu.nl/legal.php for
7  details.
8 
9  This software is distributed WITHOUT ANY WARRANTY; without even
10  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
11  PURPOSE. See the above copyright notices for more information.
12 
13 ======================================================================*/
14 #ifndef __elxNormalizedMutualInformationMetric_H__
15 #define __elxNormalizedMutualInformationMetric_H__
16 
17 #include "elxIncludes.h" // include first to avoid MSVS warning
19 
20 #include "elxTimer.h"
21 
22 namespace elastix
23 {
24 
70 template< class TElastix >
72  public
74  typename MetricBase< TElastix >::FixedImageType,
75  typename MetricBase< TElastix >::MovingImageType >,
76  public MetricBase< TElastix >
77 {
78 public:
79 
86  typedef itk::SmartPointer< Self > Pointer;
87  typedef itk::SmartPointer< const Self > ConstPointer;
88 
90  itkNewMacro( Self );
91 
95 
100  elxClassNameMacro( "NormalizedMutualInformation" );
101 
103  typedef typename
119  typedef typename Superclass1::RealType RealType;
137  typedef typename
141  typedef typename
143  typedef typename
145  typedef typename
147 
149  itkStaticConstMacro( FixedImageDimension, unsigned int,
150  FixedImageType::ImageDimension );
151 
153  itkStaticConstMacro( MovingImageDimension, unsigned int,
154  MovingImageType::ImageDimension );
155 
164 
169 
175  virtual void BeforeEachResolution( void );
176 
179  virtual void Initialize( void ) throw ( itk::ExceptionObject );
180 
181 protected:
182 
185  {
186  this->SetUseDerivative( true );
187  }
188 
189 
192 
193 private:
194 
196  NormalizedMutualInformationMetric( const Self & ); // purposely not implemented
198  void operator=( const Self & ); // purposely not implemented
199 
200 };
201 
202 } // end namespace elastix
203 
204 #ifndef ITK_MANUAL_INSTANTIATION
205 #include "elxNormalizedMutualInformationMetric.hxx"
206 #endif
207 
208 #endif // end #ifndef __elxNormalizedMutualInformationMetric_H__
Superclass::ElastixPointer ElastixPointer
Definition: elxMetricBase.h:84
Superclass::RegistrationType RegistrationType
Definition: elxMetricBase.h:87
Superclass::ConfigurationType ConfigurationType
Definition: elxMetricBase.h:85
Superclass1::ImageSampleContainerType ImageSampleContainerType
Superclass1::CoordinateRepresentationType CoordinateRepresentationType
A metric based on the itk::ParzenWindowNormalizedMutualInformationImageToImageMetric.
elxClassNameMacro("NormalizedMutualInformation")
ElastixType::FixedImageType FixedImageType
Definition: elxMetricBase.h:91
itk::SmartPointer< Self > Pointer
Definition: elxTimer.h:73
A class to time the different parts of the registration.
Definition: elxTimer.h:66
Superclass1::GradientImageFilterPointer GradientImageFilterPointer
itk::ParzenWindowNormalizedMutualInformationImageToImageMetric< typename MetricBase< TElastix >::FixedImageType, typename MetricBase< TElastix >::MovingImageType > Superclass1
Superclass1::MovingImageLimiterOutputType MovingImageLimiterOutputType
Superclass::ElastixType ElastixType
Definition: elxMetricBase.h:80
itk::SingleValuedCostFunction ITKBaseType
Definition: elxMetricBase.h:99
ElastixType::MovingImageType MovingImageType
Definition: elxMetricBase.h:94
Superclass::RegistrationPointer RegistrationPointer
Definition: elxMetricBase.h:88
Superclass1::MovingImageDerivativeScalesType MovingImageDerivativeScalesType
Superclass1::FixedImageLimiterOutputType FixedImageLimiterOutputType
Superclass::ConfigurationPointer ConfigurationPointer
Definition: elxMetricBase.h:86
Superclass1::ImageSampleContainerPointer ImageSampleContainerPointer
Computes the normalized mutual information between two images to be registered using a method based o...
This class is the elastix base class for all Metrics.
Definition: elxMetricBase.h:71
itkStaticConstMacro(FixedImageDimension, unsigned int, FixedImageType::ImageDimension)


Generated on 27-04-2014 for elastix by doxygen 1.8.6 elastix logo