go home Home | Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | File List | Namespace Members | Data Fields | Globals | Related Pages
elxTransformRigidityPenaltyTerm.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 elxTransformRigidityPenaltyTerm_h
19#define elxTransformRigidityPenaltyTerm_h
20
21#include "elxIncludes.h" // include first to avoid MSVS warning
23
24namespace elastix
25{
26
109template <class TElastix>
110class ITK_TEMPLATE_EXPORT TransformRigidityPenalty
111 : public itk::TransformRigidityPenaltyTerm<typename MetricBase<TElastix>::FixedImageType, double>
112 , public MetricBase<TElastix>
113{
114public:
116
121 using Pointer = itk::SmartPointer<Self>;
122 using ConstPointer = itk::SmartPointer<const Self>;
123
125 itkNewMacro(Self);
126
129
134 elxClassNameMacro("TransformRigidityPenalty");
135
137 using typename Superclass1::CoordinateRepresentationType;
138 using typename Superclass1::MovingImageType;
139 using typename Superclass1::MovingImagePixelType;
140 using typename Superclass1::MovingImageConstPointer;
141 using typename Superclass1::FixedImageType;
142 using typename Superclass1::FixedImageConstPointer;
143 using typename Superclass1::FixedImageRegionType;
144 using typename Superclass1::TransformType;
145 using typename Superclass1::TransformPointer;
146 using typename Superclass1::InputPointType;
147 using typename Superclass1::OutputPointType;
148 using typename Superclass1::TransformParametersType;
149 using typename Superclass1::TransformJacobianType;
150 using typename Superclass1::InterpolatorType;
151 using typename Superclass1::InterpolatorPointer;
152 using typename Superclass1::RealType;
153 using typename Superclass1::GradientPixelType;
154 using typename Superclass1::GradientImageType;
155 using typename Superclass1::GradientImagePointer;
156 using typename Superclass1::FixedImageMaskType;
160 using typename Superclass1::MeasureType;
161 using typename Superclass1::DerivativeType;
162 using typename Superclass1::ParametersType;
165 using typename Superclass1::ImageSamplerType;
173
175 using typename Superclass1::RigidityImageType;
176
178 itkStaticConstMacro(FixedImageDimension, unsigned int, FixedImageType::ImageDimension);
179
181 itkStaticConstMacro(MovingImageDimension, unsigned int, MovingImageType::ImageDimension);
182
184 using typename Superclass2::ElastixType;
185 using typename Superclass2::RegistrationType;
187
191 void
192 Initialize() override;
193
198 void
200
207 void
209
214 void
216
221 void
223 {}
224
225protected:
228
230 ~TransformRigidityPenalty() override = default;
231
232private:
234};
235
236} // end namespace elastix
237
238#ifndef ITK_MANUAL_INSTANTIATION
239# include "elxTransformRigidityPenaltyTerm.hxx"
240#endif
241
242#endif // end #ifndef elxTransformRigidityPenaltyTerm_h
This class is the elastix base class for all Metrics.
itk::SingleValuedCostFunction ITKBaseType
typename ElastixType::RegistrationBaseType RegistrationType
A penalty term based on non-rigidity.
elxClassNameMacro("TransformRigidityPenalty")
itkStaticConstMacro(FixedImageDimension, unsigned int, FixedImageType::ImageDimension)
~TransformRigidityPenalty() override=default
ITK_DISALLOW_COPY_AND_MOVE(TransformRigidityPenalty)
typename Superclass2::ITKBaseType ITKBaseType
itkStaticConstMacro(MovingImageDimension, unsigned int, MovingImageType::ImageDimension)
typename ImageSamplerType::OutputVectorContainerPointer ImageSampleContainerPointer
typename ImageSamplerType::OutputVectorContainerType ImageSampleContainerType
ImageMaskSpatialObject< Self::FixedImageDimension > FixedImageMaskType
typename MovingImageLimiterType::OutputType MovingImageLimiterOutputType
ImageMaskSpatialObject< Self::MovingImageDimension > MovingImageMaskType
This class is a base class for any image sampler.
Base class for all ITK limiter function objects.
typename Superclass::AdvancedTransformType TransformType
A cost function that calculates a rigidity penalty term.
typename BSplineTransformType::ImageType CoefficientImageType


Generated on 2024-07-17 for elastix by doxygen 1.11.0 (9b424b03c9833626cd435af22a444888fbbb192d) elastix logo