go home Home | Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | File List | Namespace Members | Data Fields | Globals | Related Pages
elxAdvancedBSplineTransform.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 __elxAdvancedBSplineTransform_h
19 #define __elxAdvancedBSplineTransform_h
20 
21 #include "elxIncludes.h" // include first to avoid MSVS warning
24 
29 
30 namespace elastix
31 {
108 template< class TElastix >
110  public
112  typename elx::TransformBase< TElastix >::CoordRepType,
113  elx::TransformBase< TElastix >::FixedImageDimension >,
114  public
115  TransformBase< TElastix >
116 {
117 public:
118 
125  typedef itk::SmartPointer< Self > Pointer;
126  typedef itk::SmartPointer< const Self > ConstPointer;
127 
129  itkNewMacro( Self );
130 
133 
138  elxClassNameMacro( "BSplineTransform" );
139 
141  itkStaticConstMacro( SpaceDimension, unsigned int, Superclass2::FixedImageDimension );
142 
148  itkGetStaticConstMacro( SpaceDimension ) > BSplineTransformBaseType;
150 
154  itkGetStaticConstMacro( SpaceDimension ),
158  itkGetStaticConstMacro( SpaceDimension ),
162  itkGetStaticConstMacro( SpaceDimension ),
166  itkGetStaticConstMacro( SpaceDimension ),
170  itkGetStaticConstMacro( SpaceDimension ),
174  itkGetStaticConstMacro( SpaceDimension ),
176 
190 
192  typedef typename BSplineTransformBaseType::PixelType PixelType;
201  typedef typename
203  typedef typename
205 
218 
225  typedef typename GridScheduleComputerType
230 
233 
238  int BeforeAll( void ) override;
239 
251  void BeforeRegistration( void ) override;
252 
257  void BeforeEachResolution( void ) override;
258 
264  virtual void InitializeTransform( void );
265 
271  virtual void IncreaseScale( void );
272 
274  void ReadFromFile( void ) override;
275 
277  void WriteToFile( const ParametersType & param ) const override;
278 
284  const ParametersType & param, ParameterMapType * paramsMap ) const override;
285 
287  virtual void SetOptimizerScales( const unsigned int edgeWidth );
288 
289 protected:
290 
293 
296 
298  virtual void PreComputeGridInformation( void );
299 
300 private:
301 
303  AdvancedBSplineTransform( const Self & ); // purposely not implemented
305  void operator=( const Self & ); // purposely not implemented
306 
311 
313  unsigned int m_SplineOrder;
314  bool m_Cyclic;
315 
318 
319 };
320 
321 } // end namespace elastix
322 
323 #ifndef ITK_MANUAL_INSTANTIATION
324 #include "elxAdvancedBSplineTransform.hxx"
325 #endif
326 
327 #endif // end #ifndef __elxAdvancedBSplineTransform_h
A transform based on the itkAdvancedBSplineTransform.
itk::AdvancedBSplineDeformableTransform< typename elx::TransformBase< TElastix >::CoordRepType, itkGetStaticConstMacro(SpaceDimension), 2 > BSplineTransformQuadraticType
elxClassNameMacro("BSplineTransform")
BSplineTransformBaseType::ParameterIndexArrayType ParameterIndexArrayType
void ReadFromFile(void) override
unsigned int InitializeBSplineTransform()
virtual void IncreaseScale(void)
Superclass2::ConfigurationPointer ConfigurationPointer
void BeforeEachResolution(void) override
BSplineTransformBaseType::ContinuousIndexType ContinuousIndexType
void WriteToFile(const ParametersType &param) const override
itk::AdvancedBSplineDeformableTransform< typename elx::TransformBase< TElastix >::CoordRepType, itkGetStaticConstMacro(SpaceDimension), 1 > BSplineTransformLinearType
Superclass1::OutputVectorType OutputVectorType
Superclass2::CombinationTransformType CombinationTransformType
BSplineTransformBaseType::ImagePointer ImagePointer
BSplineTransformBaseType::DirectionType DirectionType
BSplineTransformBaseType::IndexType IndexType
Superclass1::OutputCovariantVectorType OutputCovariantVectorType
itk::CyclicBSplineDeformableTransform< typename elx::TransformBase< TElastix >::CoordRepType, itkGetStaticConstMacro(SpaceDimension), 2 > CyclicBSplineTransformQuadraticType
itk::AdvancedBSplineDeformableTransform< typename elx::TransformBase< TElastix >::CoordRepType, itkGetStaticConstMacro(SpaceDimension), 3 > BSplineTransformCubicType
virtual void InitializeTransform(void)
itk::CyclicBSplineDeformableTransform< typename elx::TransformBase< TElastix >::CoordRepType, itkGetStaticConstMacro(SpaceDimension), 1 > CyclicBSplineTransformLinearType
BSplineTransformBaseType::OriginType OriginType
Superclass2::ConfigurationType ConfigurationType
GridScheduleComputerPointer m_GridScheduleComputer
GridScheduleComputerType::Pointer GridScheduleComputerPointer
itk::GridScheduleComputer< CoordRepType, SpaceDimension > GridScheduleComputerType
Superclass1::InputVnlVectorType InputVnlVectorType
Superclass1::NumberOfParametersType NumberOfParametersType
itk::UpsampleBSplineParametersFilter< ParametersType, ImageType > GridUpsamplerType
Superclass2::MovingImageType MovingImageType
GridScheduleComputerType ::VectorGridSpacingFactorType GridScheduleType
Superclass2::RegistrationPointer RegistrationPointer
BSplineTransformBaseType::SpacingType SpacingType
itk::AdvancedCombinationTransform< typename elx::TransformBase< TElastix >::CoordRepType, elx::TransformBase< TElastix >::FixedImageDimension > Superclass1
itk::SmartPointer< const Self > ConstPointer
BSplineTransformBasePointer m_BSplineTransform
BSplineTransformBaseType::RegionType RegionType
itk::CyclicBSplineDeformableTransform< typename elx::TransformBase< TElastix >::CoordRepType, itkGetStaticConstMacro(SpaceDimension), 3 > CyclicBSplineTransformCubicType
virtual void SetOptimizerScales(const unsigned int edgeWidth)
void CreateTransformParametersMap(const ParametersType &param, ParameterMapType *paramsMap) const override
itk::AdvancedBSplineDeformableTransformBase< typename elx::TransformBase< TElastix >::CoordRepType, itkGetStaticConstMacro(SpaceDimension) > BSplineTransformBaseType
BSplineTransformBaseType::ImageType ImageType
Superclass2::ParameterMapType ParameterMapType
Superclass1::OutputVnlVectorType OutputVnlVectorType
BSplineTransformBaseType::SizeType SizeType
BSplineTransformBaseType::Pointer BSplineTransformBasePointer
Superclass1::OutputPointType OutputPointType
void BeforeRegistration(void) override
Superclass1::InputCovariantVectorType InputCovariantVectorType
itk::CyclicGridScheduleComputer< CoordRepType, SpaceDimension > CyclicGridScheduleComputerType
itkStaticConstMacro(SpaceDimension, unsigned int, Superclass2::FixedImageDimension)
Superclass1::InputVectorType InputVectorType
Superclass2::RegistrationType RegistrationType
elx::TransformBase< TElastix > Superclass2
virtual void PreComputeGridInformation(void)
GridUpsamplerType::Pointer GridUpsamplerPointer
A class that deals with user given parameters and command line arguments.
This class is the elastix base class for all Transforms.
Configuration::Pointer ConfigurationPointer
ElastixType::FixedImageType FixedImageType
ElastixType::ParameterMapType ParameterMapType
itk::WeakPointer< ElastixType > ElastixPointer
RegistrationType * RegistrationPointer
ElastixType::MovingImageType MovingImageType
ElastixType::CoordRepType CoordRepType
ElastixType::RegistrationBaseType RegistrationType
Base class for deformable transform using a B-spline representation.
ContinuousIndex< ScalarType, SpaceDimension > ContinuousIndexType
ImageRegion< itkGetStaticConstMacro(SpaceDimension) > RegionType
Deformable transform using a B-spline representation.
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.
Superclass::ParametersType ParametersType
Deformable transform using a B-spline representation in which the B-spline grid is formulated in a cy...
This class computes all information about the B-spline grid.
This class computes all information about the B-spline grid, given the image information and the desi...
std::vector< GridSpacingFactorType > VectorGridSpacingFactorType
Convenience class for upsampling a B-spline coefficient image.


Generated on 1652341256 for elastix by doxygen 1.9.1 elastix logo