go home Home | Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | File List | Namespace Members | Data Fields | Globals | Related Pages
elxGradientDifferenceMetric.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 __elxGradientDifferenceMetric_H__
15 #define __elxGradientDifferenceMetric_H__
16 
17 #include "elxIncludes.h" // include first to avoid MSVS warning
19 
20 #include "elxTimer.h"
21 
22 namespace elastix
23 {
24 
34 template< class TElastix >
37  typename MetricBase< TElastix >::FixedImageType,
38  typename MetricBase< TElastix >::MovingImageType >,
39  public MetricBase< TElastix >
40 {
41 public:
42 
49  typedef itk::SmartPointer< Self > Pointer;
50  typedef itk::SmartPointer< const Self > ConstPointer;
51 
53  itkNewMacro( Self );
54 
57 
62  elxClassNameMacro( "GradientDifference" );
63 
65  typedef typename
81  typedef typename Superclass1::RealType RealType;
99  typedef typename
103  typedef typename
105  typedef typename
107  typedef typename
109 
111  itkStaticConstMacro( FixedImageDimension, unsigned int,
112  FixedImageType::ImageDimension );
113 
115  itkStaticConstMacro( MovingImageDimension, unsigned int,
116  MovingImageType::ImageDimension );
117 
126 
129 
132 
136  virtual void Initialize( void ) throw ( itk::ExceptionObject );
137 
144  virtual void BeforeRegistration( void );
145 
146  virtual void BeforeEachResolution( void );
147 
148 protected:
149 
152 
155 
156 private:
157 
159  GradientDifferenceMetric( const Self & ); // purposely not implemented
161  void operator=( const Self & ); // purposely not implemented
162 
163 };
164 
165 } // end namespace elastix
166 
167 #ifndef ITK_MANUAL_INSTANTIATION
168 #include "elxGradientDifferenceMetric.hxx"
169 #endif
170 
171 #endif // end #ifndef __elxGradientDifferenceMetric_H__
Superclass1::GradientImageFilterType GradientImageFilterType
Superclass::ElastixPointer ElastixPointer
Definition: elxMetricBase.h:84
Superclass::RegistrationType RegistrationType
Definition: elxMetricBase.h:87
Superclass1::MovingImageLimiterOutputType MovingImageLimiterOutputType
Superclass::ConfigurationType ConfigurationType
Definition: elxMetricBase.h:85
Superclass1::MovingImageDerivativeScalesType MovingImageDerivativeScalesType
Superclass::CoordinateRepresentationType CoordinateRepresentationType
Superclass1::FixedImageMaskType FixedImageMaskType
An metric based on the itk::GradientDifferenceImageToImageMetric.
Superclass::FixedImageMaskPointer FixedImageMaskPointer
Superclass1::MovingImageType MovingImageType
Superclass::GradientPixelType GradientPixelType
FixedImageLimiterType::OutputType FixedImageLimiterOutputType
Superclass2::RegistrationType RegistrationType
Superclass::FixedImageRegionType FixedImageRegionType
Superclass1::TransformParametersType TransformParametersType
ElastixType::FixedImageType FixedImageType
Definition: elxMetricBase.h:91
Superclass1::GradientPixelType GradientPixelType
itk::SmartPointer< Self > Pointer
Definition: elxTimer.h:73
A class to time the different parts of the registration.
Definition: elxTimer.h:66
Superclass1::FixedImageRegionType FixedImageRegionType
Superclass1::FixedImageType FixedImageType
Superclass1::OutputPointType OutputPointType
Superclass1::MovingImagePixelType MovingImagePixelType
Superclass1::ImageSampleContainerPointer ImageSampleContainerPointer
This class is a base class for any image sampler.
Superclass1::GradientImagePointer GradientImagePointer
Define a front-end to the STL "vector" container that conforms to the IndexedContainerInterface.
virtual void BeforeEachResolution(void)
Superclass1::MovingImageRegionType MovingImageRegionType
Superclass1::FixedImagePixelType FixedImagePixelType
Superclass1::GradientImageFilterPointer GradientImageFilterPointer
Superclass1::ParametersType ParametersType
Superclass1::MovingImageLimiterType MovingImageLimiterType
Superclass1::InterpolatorType InterpolatorType
Superclass1::MovingImageMaskType MovingImageMaskType
Superclass::MovingImageMaskType MovingImageMaskType
Superclass2::RegistrationPointer RegistrationPointer
Superclass::GradientImageType GradientImageType
Superclass1::GradientImageType GradientImageType
Superclass1::TransformJacobianType TransformJacobianType
itk::SmartPointer< const Self > ConstPointer
Superclass1::FixedImageLimiterType FixedImageLimiterType
Superclass1::ImageSampleContainerType ImageSampleContainerType
Superclass::GradientImageFilterType GradientImageFilterType
itk::GradientDifferenceImageToImageMetric< typename MetricBase< TElastix >::FixedImageType, typename MetricBase< TElastix >::MovingImageType > Superclass1
virtual void BeforeRegistration(void)
Base class for all ITK limiter function objects.
Superclass2::ConfigurationPointer ConfigurationPointer
Superclass2::ConfigurationType ConfigurationType
Superclass::ElastixType ElastixType
Definition: elxMetricBase.h:80
Computes similarity between two objects to be registered.
itk::SingleValuedCostFunction ITKBaseType
Definition: elxMetricBase.h:99
Superclass::MovingImagePixelType MovingImagePixelType
ElastixType::MovingImageType MovingImageType
Definition: elxMetricBase.h:94
elxClassNameMacro("GradientDifference")
Superclass::RegistrationPointer RegistrationPointer
Definition: elxMetricBase.h:88
Superclass::MovingImageMaskPointer MovingImageMaskPointer
MovingImageLimiterType::OutputType MovingImageLimiterOutputType
itkStaticConstMacro(FixedImageDimension, unsigned int, FixedImageType::ImageDimension)
Superclass1::TransformPointer TransformPointer
Superclass1::FixedImageConstPointer FixedImageConstPointer
Superclass1::ImageSamplerPointer ImageSamplerPointer
ImageSamplerType::OutputVectorContainerPointer ImageSampleContainerPointer
Superclass::FixedImageMaskType FixedImageMaskType
Superclass1::DerivativeType DerivativeType
Superclass1::FixedImageLimiterOutputType FixedImageLimiterOutputType
Superclass1::InterpolatorPointer InterpolatorPointer
Superclass1::ImageSamplerType ImageSamplerType
Superclass1::MovingImageConstPointer MovingImageConstPointer
Superclass::ConfigurationPointer ConfigurationPointer
Definition: elxMetricBase.h:86
Superclass1::FixedImageMaskPointer FixedImageMaskPointer
Superclass1::CoordinateRepresentationType CoordinateRepresentationType
Superclass1::MovingImageMaskPointer MovingImageMaskPointer
This class is the elastix base class for all Metrics.
Definition: elxMetricBase.h:71
Superclass1::InputPointType InputPointType
Superclass::GradientImageFilterPointer GradientImageFilterPointer
Superclass::GradientImagePointer GradientImagePointer


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