go home Home | Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | File List | Namespace Members | Data Fields | Globals | Related Pages
elxSplineKernelTransform.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 __elxSplineKernelTransform_H_
19#define __elxSplineKernelTransform_H_
20
21#include "elxIncludes.h" // include first to avoid MSVS warning
22#include "itkKernelTransform2.h"
28
29namespace elastix
30{
31
114template< class TElastix >
116 typename elx::TransformBase< TElastix >::CoordRepType,
117 elx::TransformBase< TElastix >::FixedImageDimension >,
118 public elx::TransformBase< TElastix >
119{
120public:
121
128
132 typedef itk::KernelTransform2<
135 typedef itk::SmartPointer< Self > Pointer;
136 typedef itk::SmartPointer< const Self > ConstPointer;
137
139 itkNewMacro( Self );
140
143
148 elxClassNameMacro( "SplineKernelTransform" );
149
151 itkStaticConstMacro( SpaceDimension, unsigned int, Superclass2::FixedImageDimension );
152
166
179
183 typedef typename PointSetType::Pointer PointSetPointer;
184
189 int BeforeAll( void ) override;
190
197 void BeforeRegistration( void ) override;
198
200 void ReadFromFile( void ) override;
201
203 void WriteToFile( const ParametersType & param ) const override;
204
205protected:
206
211
213 CoordRepType, itkGetStaticConstMacro( SpaceDimension ) > TPKernelTransformType;
215 CoordRepType, itkGetStaticConstMacro( SpaceDimension ) > TPRKernelTransformType;
217 CoordRepType, itkGetStaticConstMacro( SpaceDimension ) > VKernelTransformType;
219 CoordRepType, itkGetStaticConstMacro( SpaceDimension ) > EBKernelTransformType;
221 CoordRepType, itkGetStaticConstMacro( SpaceDimension ) > EBRKernelTransformType;
222
226 virtual bool SetKernelType( const std::string & kernelType );
227
231 virtual void DetermineSourceLandmarks( void );
232
237 virtual bool DetermineTargetLandmarks( void );
238
240 virtual void ReadLandmarkFile(
241 const std::string & filename,
242 PointSetPointer & landmarkPointSet,
243 const bool & landmarksInFixedImage );
244
247
248private:
249
251 SplineKernelTransform( const Self & ); // purposely not implemented
253 void operator=( const Self & ); // purposely not implemented
254
256
257};
258
259} // end namespace elastix
260
261#ifndef ITK_MANUAL_INSTANTIATION
262#include "elxSplineKernelTransform.hxx"
263#endif
264
265#endif // end #ifndef __elxSplineKernelTransform_H_
A class that deals with user given parameters and command line arguments.
A transform based on the itk::KernelTransform2.
Superclass2::ConfigurationPointer ConfigurationPointer
itkStaticConstMacro(SpaceDimension, unsigned int, Superclass2::FixedImageDimension)
void WriteToFile(const ParametersType &param) const override
itk::ElasticBodyReciprocalSplineKernelTransform2< CoordRepType, itkGetStaticConstMacro(SpaceDimension) > EBRKernelTransformType
Superclass2::ConfigurationType ConfigurationType
Superclass1::InputVectorType InputVectorType
Superclass1::InputCovariantVectorType InputCovariantVectorType
void BeforeRegistration(void) override
itk::ThinPlateR2LogRSplineKernelTransform2< CoordRepType, itkGetStaticConstMacro(SpaceDimension) > TPRKernelTransformType
Superclass1::InputVnlVectorType InputVnlVectorType
itk::KernelTransform2< typename elx::TransformBase< TElastix >::CoordRepType, elx::TransformBase< TElastix >::FixedImageDimension > KernelTransformType
KernelTransformType::PointSetType PointSetType
int BeforeAll(void) override
Superclass1::ParametersType ParametersType
virtual void DetermineSourceLandmarks(void)
itk::SmartPointer< const Self > ConstPointer
virtual void ReadLandmarkFile(const std::string &filename, PointSetPointer &landmarkPointSet, const bool &landmarksInFixedImage)
Superclass1::OutputPointType OutputPointType
elxClassNameMacro("SplineKernelTransform")
elx::TransformBase< TElastix > Superclass2
Superclass2::CoordRepType CoordRepType
itk::ThinPlateSplineKernelTransform2< CoordRepType, itkGetStaticConstMacro(SpaceDimension) > TPKernelTransformType
Superclass1::OutputVnlVectorType OutputVnlVectorType
itk::ElasticBodySplineKernelTransform2< CoordRepType, itkGetStaticConstMacro(SpaceDimension) > EBKernelTransformType
Superclass1::OutputCovariantVectorType OutputCovariantVectorType
Superclass2::MovingImageType MovingImageType
Superclass2::CombinationTransformType CombinationTransformType
Superclass2::RegistrationType RegistrationType
Superclass2::ElastixPointer ElastixPointer
virtual bool SetKernelType(const std::string &kernelType)
Superclass1::InputPointType InputPointType
Superclass1::OutputVectorType OutputVectorType
KernelTransformType::Pointer KernelTransformPointer
Superclass2::FixedImageType FixedImageType
Superclass1::JacobianType JacobianType
virtual bool DetermineTargetLandmarks(void)
itk::VolumeSplineKernelTransform2< CoordRepType, itkGetStaticConstMacro(SpaceDimension) > VKernelTransformType
Superclass1::NumberOfParametersType NumberOfParametersType
void ReadFromFile(void) override
Superclass2::RegistrationPointer RegistrationPointer
itk::AdvancedCombinationTransform< typename elx::TransformBase< TElastix >::CoordRepType, elx::TransformBase< TElastix >::FixedImageDimension > Superclass1
void operator=(const Self &)
This class is the elastix base class for all Transforms.
Configuration::Pointer ConfigurationPointer
ElastixType::FixedImageType FixedImageType
itk::WeakPointer< ElastixType > ElastixPointer
RegistrationType * RegistrationPointer
ElastixType::MovingImageType MovingImageType
ElastixType::CoordRepType CoordRepType
ElastixType::RegistrationBaseType RegistrationType
This class combines two transforms: an 'initial transform' with a 'current transform'.
Superclass::InputCovariantVectorType InputCovariantVectorType
Superclass::OutputVnlVectorType OutputVnlVectorType
Superclass::OutputCovariantVectorType OutputCovariantVectorType
Superclass::NumberOfParametersType NumberOfParametersType
Superclass::InputVnlVectorType InputVnlVectorType
Transform maps points, vectors and covariant vectors from an input space to an output space.
PointSet< InputPointType, NDimensions, PointSetTraitsType > PointSetType


Generated on 1667476801 for elastix by doxygen 1.9.4 elastix logo