go home Home | Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | File List | Namespace Members | Data Fields | Globals | Related Pages
elxPCAMetric.h
Go to the documentation of this file.
1 /*=========================================================================
2  *
3  * Copyright UMC Utrecht and contributors
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  * http://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 __elxPCAMetric_H__
19 #define __elxPCAMetric_H__
20 
21 #include "elxIncludes.h" // include first to avoid MSVS warning
23 
25 #include "itkStackTransform.h"
26 
27 namespace elastix
28 {
62 template< class TElastix >
63 class PCAMetric :
64  public itk::PCAMetric<
65  typename MetricBase< TElastix >::FixedImageType,
66  typename MetricBase< TElastix >::MovingImageType >,
67  public MetricBase< TElastix >
68 {
69 public:
70 
72  typedef PCAMetric Self;
73  typedef itk::PCAMetric<
77  typedef itk::SmartPointer< Self > Pointer;
78  typedef itk::SmartPointer< const Self > ConstPointer;
79 
81  itkNewMacro( Self );
82 
84  itkTypeMacro( PCAMetric, itk::PCAMetric );
85 
90  elxClassNameMacro( "PCAMetric" );
91 
93  typedef typename
111  typedef typename Superclass1::RealType RealType;
129  typedef typename
133  typedef typename
135  typedef typename
137  typedef typename
139 
141  itkStaticConstMacro( FixedImageDimension, unsigned int,
142  FixedImageType::ImageDimension );
143 
145  itkStaticConstMacro( MovingImageDimension, unsigned int,
146  MovingImageType::ImageDimension );
147 
156 
159  ScalarType, FixedImageDimension > BSplineTransformBaseType;
161  ScalarType, FixedImageDimension > CombinationTransformType;
162  typedef itk::StackTransform<
163  ScalarType, FixedImageDimension, MovingImageDimension > StackTransformType;
166 
170  void Initialize( void ) override;
171 
177  void BeforeEachResolution( void ) override;
178 
179 protected:
180 
184  ~PCAMetric() override {}
185 
186 private:
187 
189  PCAMetric( const Self & ); // purposely not implemented
191  void operator=( const Self & ); // purposely not implemented
192 
193 };
194 
195 } // end namespace elastix
196 
197 #ifndef ITK_MANUAL_INSTANTIATION
198 #include "elxPCAMetric.hxx"
199 #endif
200 
201 #endif // end #ifndef __elxPCAMetric_H__
A class that deals with user given parameters and command line arguments.
This class is the elastix base class for all Metrics.
Definition: elxMetricBase.h:73
itk::SingleValuedCostFunction ITKBaseType
Superclass::RegistrationPointer RegistrationPointer
Definition: elxMetricBase.h:89
Superclass::ElastixType ElastixType
Definition: elxMetricBase.h:81
ElastixType::MovingImageType MovingImageType
Definition: elxMetricBase.h:95
ElastixType::FixedImageType FixedImageType
Definition: elxMetricBase.h:92
Superclass::ConfigurationPointer ConfigurationPointer
Definition: elxMetricBase.h:87
Superclass::RegistrationType RegistrationType
Definition: elxMetricBase.h:88
Superclass::ElastixPointer ElastixPointer
Definition: elxMetricBase.h:85
This metric is based on the AdvancedImageToImageMetric. It is templated over the type of the fixed an...
Definition: elxPCAMetric.h:68
Superclass1::FixedImageLimiterType FixedImageLimiterType
Definition: elxPCAMetric.h:131
void BeforeEachResolution(void) override
Superclass1::RealType RealType
Definition: elxPCAMetric.h:111
Superclass1::ImageSampleContainerPointer ImageSampleContainerPointer
Definition: elxPCAMetric.h:130
Superclass1::FixedImagePixelType FixedImagePixelType
Definition: elxPCAMetric.h:124
void Initialize(void) override
Superclass1::GradientImageFilterPointer GradientImageFilterPointer
Definition: elxPCAMetric.h:116
Superclass1::CoordinateRepresentationType CoordinateRepresentationType
Definition: elxPCAMetric.h:94
Superclass1::FixedImageSizeType FixedImageSizeType
Definition: elxPCAMetric.h:102
Superclass1::MovingImageMaskType MovingImageMaskType
Definition: elxPCAMetric.h:119
itk::SmartPointer< const Self > ConstPointer
Definition: elxPCAMetric.h:78
Superclass2::RegistrationType RegistrationType
Definition: elxPCAMetric.h:153
itkStaticConstMacro(FixedImageDimension, unsigned int, FixedImageType::ImageDimension)
Superclass1::FixedImageRegionType FixedImageRegionType
Definition: elxPCAMetric.h:101
Superclass1::DerivativeType DerivativeType
Definition: elxPCAMetric.h:122
void operator=(const Self &)
Superclass1::InputPointType InputPointType
Definition: elxPCAMetric.h:105
itk::StackTransform< ScalarType, FixedImageDimension, MovingImageDimension > StackTransformType
Definition: elxPCAMetric.h:163
PCAMetric(const Self &)
Superclass1::FixedImageLimiterOutputType FixedImageLimiterOutputType
Definition: elxPCAMetric.h:134
Superclass1::TransformType TransformType
Definition: elxPCAMetric.h:103
Superclass1::GradientImageType GradientImageType
Definition: elxPCAMetric.h:113
Superclass1::ParametersType ParametersType
Definition: elxPCAMetric.h:123
Superclass2::RegistrationPointer RegistrationPointer
Definition: elxPCAMetric.h:154
itkStaticConstMacro(MovingImageDimension, unsigned int, MovingImageType::ImageDimension)
Superclass2::ITKBaseType ITKBaseType
Definition: elxPCAMetric.h:155
Superclass1::FixedImageConstPointer FixedImageConstPointer
Definition: elxPCAMetric.h:100
itk::SmartPointer< Self > Pointer
Definition: elxPCAMetric.h:77
Superclass2::ConfigurationType ConfigurationType
Definition: elxPCAMetric.h:151
Superclass1::MovingImageMaskPointer MovingImageMaskPointer
Definition: elxPCAMetric.h:120
Superclass1::TransformPointer TransformPointer
Definition: elxPCAMetric.h:104
Superclass1::MovingImagePixelType MovingImagePixelType
Definition: elxPCAMetric.h:97
Superclass2::ElastixPointer ElastixPointer
Definition: elxPCAMetric.h:150
Superclass1::ImageSampleContainerType ImageSampleContainerType
Definition: elxPCAMetric.h:128
Superclass1::MovingImageDerivativeScalesType MovingImageDerivativeScalesType
Definition: elxPCAMetric.h:138
Superclass1::TransformJacobianType TransformJacobianType
Definition: elxPCAMetric.h:108
Superclass1::OutputPointType OutputPointType
Definition: elxPCAMetric.h:106
Superclass1::InterpolatorPointer InterpolatorPointer
Definition: elxPCAMetric.h:110
Superclass1::MovingImageRegionType MovingImageRegionType
Definition: elxPCAMetric.h:125
Superclass1::MovingImageType MovingImageType
Definition: elxPCAMetric.h:96
Superclass1::InterpolatorType InterpolatorType
Definition: elxPCAMetric.h:109
Superclass1::FixedImageMaskType FixedImageMaskType
Definition: elxPCAMetric.h:117
elxClassNameMacro("PCAMetric")
Superclass2::ElastixType ElastixType
Definition: elxPCAMetric.h:149
itk::PCAMetric< typename MetricBase< TElastix >::FixedImageType, typename MetricBase< TElastix >::MovingImageType > Superclass1
Definition: elxPCAMetric.h:75
itk::AdvancedBSplineDeformableTransformBase< ScalarType, FixedImageDimension > BSplineTransformBaseType
Definition: elxPCAMetric.h:159
itk::AdvancedCombinationTransform< ScalarType, FixedImageDimension > CombinationTransformType
Definition: elxPCAMetric.h:161
Superclass1::MeasureType MeasureType
Definition: elxPCAMetric.h:121
Superclass1::GradientImagePointer GradientImagePointer
Definition: elxPCAMetric.h:114
Superclass1::MovingImageLimiterType MovingImageLimiterType
Definition: elxPCAMetric.h:132
Superclass1::MovingImageConstPointer MovingImageConstPointer
Definition: elxPCAMetric.h:98
Superclass1::FixedImageMaskPointer FixedImageMaskPointer
Definition: elxPCAMetric.h:118
Superclass1::TransformParametersType TransformParametersType
Definition: elxPCAMetric.h:107
Superclass1::MovingImageLimiterOutputType MovingImageLimiterOutputType
Definition: elxPCAMetric.h:136
Superclass2::ConfigurationPointer ConfigurationPointer
Definition: elxPCAMetric.h:152
Superclass1::ImageSamplerType ImageSamplerType
Definition: elxPCAMetric.h:126
Superclass1::ScalarType ScalarType
Definition: elxPCAMetric.h:95
Superclass1::ImageSamplerPointer ImageSamplerPointer
Definition: elxPCAMetric.h:127
~PCAMetric() override
Definition: elxPCAMetric.h:184
MetricBase< TElastix > Superclass2
Definition: elxPCAMetric.h:76
Superclass1::GradientPixelType GradientPixelType
Definition: elxPCAMetric.h:112
Superclass1::GradientImageFilterType GradientImageFilterType
Definition: elxPCAMetric.h:115
itk::AdvancedBSplineDeformableTransformBase< ScalarType, FixedImageDimension - 1 > ReducedDimensionBSplineTransformBaseType
Definition: elxPCAMetric.h:165
Superclass1::FixedImageType FixedImageType
Definition: elxPCAMetric.h:99
Base class for deformable transform using a B-spline representation.
This class combines two transforms: an 'initial transform' with a 'current transform'.
Superclass::TransformPointer TransformPointer
Definition: itkPCAMetric.h:80
Superclass::FixedImageLimiterType FixedImageLimiterType
Definition: itkPCAMetric.h:107
Superclass::InterpolatorPointer InterpolatorPointer
Definition: itkPCAMetric.h:86
Superclass::DerivativeType DerivativeType
Definition: itkPCAMetric.h:98
Superclass::MovingImageLimiterOutputType MovingImageLimiterOutputType
Definition: itkPCAMetric.h:112
Superclass::ImageSamplerType ImageSamplerType
Definition: itkPCAMetric.h:102
Superclass::GradientImagePointer GradientImagePointer
Definition: itkPCAMetric.h:90
Superclass::GradientImageFilterPointer GradientImageFilterPointer
Definition: itkPCAMetric.h:92
Superclass::ImageSamplerPointer ImageSamplerPointer
Definition: itkPCAMetric.h:103
Superclass::MovingImageType MovingImageType
Definition: itkPCAMetric.h:74
Superclass::MovingImagePixelType MovingImagePixelType
Definition: itkPCAMetric.h:75
Superclass::FixedImageConstPointer FixedImageConstPointer
Definition: itkPCAMetric.h:78
Superclass::OutputPointType OutputPointType
Definition: itkPCAMetric.h:82
Superclass::MeasureType MeasureType
Definition: itkPCAMetric.h:97
Superclass::InputPointType InputPointType
Definition: itkPCAMetric.h:81
Superclass::FixedImageMaskPointer FixedImageMaskPointer
Definition: itkPCAMetric.h:94
Superclass::MovingImageMaskType MovingImageMaskType
Definition: itkPCAMetric.h:95
Superclass::ImageSampleContainerType ImageSampleContainerType
Definition: itkPCAMetric.h:104
Superclass::MovingImageRegionType MovingImageRegionType
Definition: itkPCAMetric.h:101
Superclass::GradientPixelType GradientPixelType
Definition: itkPCAMetric.h:88
Superclass::TransformJacobianType TransformJacobianType
Definition: itkPCAMetric.h:84
Superclass::RealType RealType
Definition: itkPCAMetric.h:87
Superclass::MovingImageDerivativeScalesType MovingImageDerivativeScalesType
Definition: itkPCAMetric.h:114
Superclass::MovingImageConstPointer MovingImageConstPointer
Definition: itkPCAMetric.h:76
Superclass::CoordinateRepresentationType CoordinateRepresentationType
Definition: itkPCAMetric.h:69
Superclass::FixedImageLimiterOutputType FixedImageLimiterOutputType
Definition: itkPCAMetric.h:110
Superclass::GradientImageType GradientImageType
Definition: itkPCAMetric.h:89
Superclass::InterpolatorType InterpolatorType
Definition: itkPCAMetric.h:85
Superclass::ParametersType ParametersType
Definition: itkPCAMetric.h:99
Superclass::FixedImageRegionType FixedImageRegionType
Definition: itkPCAMetric.h:45
Superclass::GradientImageFilterType GradientImageFilterType
Definition: itkPCAMetric.h:91
Superclass::MovingImageLimiterType MovingImageLimiterType
Definition: itkPCAMetric.h:108
Superclass::FixedImagePixelType FixedImagePixelType
Definition: itkPCAMetric.h:100
Superclass::MovingImageMaskPointer MovingImageMaskPointer
Definition: itkPCAMetric.h:96
Superclass::FixedImageMaskType FixedImageMaskType
Definition: itkPCAMetric.h:93
Superclass::ImageSampleContainerPointer ImageSampleContainerPointer
Definition: itkPCAMetric.h:106
FixedImageRegionType::SizeType FixedImageSizeType
Definition: itkPCAMetric.h:46
Superclass::TransformParametersType TransformParametersType
Definition: itkPCAMetric.h:83
Superclass::TransformType TransformType
Definition: itkPCAMetric.h:79
Superclass::FixedImageType FixedImageType
Definition: itkPCAMetric.h:77
Implements stack of transforms: one for every last dimension index.


Generated on 1641078589 for elastix by doxygen 1.9.1 elastix logo