go home Home | Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | File List | Namespace Members | Data Fields | Globals | Related Pages
elxRecursiveBSplineTransform.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 __elxRecursiveBSplineTransform_h
19 #define __elxRecursiveBSplineTransform_h
20 
21 #include "elxIncludes.h" // include first to avoid MSVS warning
24 
29 
30 namespace elastix
31 {
108 template< class TElastix >
111  typename elx::TransformBase< TElastix >::CoordRepType,
112  elx::TransformBase< TElastix >::FixedImageDimension >,
113  public TransformBase< TElastix >
114 {
115 public:
116 
123  typedef itk::SmartPointer< Self > Pointer;
124  typedef itk::SmartPointer< const Self > ConstPointer;
125 
127  itkNewMacro( Self );
128 
131 
136  elxClassNameMacro( "RecursiveBSplineTransform" );
137 
139  itkStaticConstMacro( SpaceDimension, unsigned int, Superclass2::FixedImageDimension );
140 
146  itkGetStaticConstMacro( SpaceDimension ) > BSplineTransformBaseType;
148 
152  itkGetStaticConstMacro( SpaceDimension ),
156  itkGetStaticConstMacro( SpaceDimension ),
160  itkGetStaticConstMacro( SpaceDimension ),
164  itkGetStaticConstMacro( SpaceDimension ),
168  itkGetStaticConstMacro( SpaceDimension ),
172  itkGetStaticConstMacro( SpaceDimension ),
174 
188 
190  typedef typename BSplineTransformBaseType::PixelType PixelType;
199  typedef typename
201  typedef typename
203 
216 
223  typedef typename GridScheduleComputerType
228 
231 
236  int BeforeAll( void ) override;
237 
249  void BeforeRegistration( void ) override;
250 
255  void BeforeEachResolution( void ) override;
256 
262  virtual void InitializeTransform( void );
263 
269  virtual void IncreaseScale( void );
270 
272  void ReadFromFile( void ) override;
273 
275  void WriteToFile( const ParametersType & param ) const override;
276 
282  const ParametersType & param, ParameterMapType * paramsMap ) const override;
283 
285  virtual void SetOptimizerScales( const unsigned int edgeWidth );
286 
287 protected:
288 
291 
294 
296  virtual void PreComputeGridInformation( void );
297 
298 private:
299 
301  RecursiveBSplineTransform( const Self & ); // purposely not implemented
303  void operator=( const Self & ); // purposely not implemented
304 
309 
311  unsigned int m_SplineOrder;
312  bool m_Cyclic;
313 
316 
317 };
318 
319 } // end namespace elastix
320 
321 #ifndef ITK_MANUAL_INSTANTIATION
322 #include "elxRecursiveBSplineTransform.hxx"
323 #endif
324 
325 #endif // end #ifndef __elxRecursiveBSplineTransform_h
A class that deals with user given parameters and command line arguments.
itk::CyclicBSplineDeformableTransform< typename elx::TransformBase< TElastix >::CoordRepType, itkGetStaticConstMacro(SpaceDimension), 1 > CyclicBSplineTransformLinearType
Superclass2::RegistrationPointer RegistrationPointer
BSplineTransformBaseType::DirectionType DirectionType
void BeforeEachResolution(void) override
void WriteToFile(const ParametersType &param) const override
BSplineTransformBaseType::IndexType IndexType
BSplineTransformBaseType::RegionType RegionType
Superclass2::ConfigurationPointer ConfigurationPointer
virtual void PreComputeGridInformation(void)
GridScheduleComputerType::Pointer GridScheduleComputerPointer
void BeforeRegistration(void) override
itk::RecursiveBSplineTransform< typename elx::TransformBase< TElastix >::CoordRepType, itkGetStaticConstMacro(SpaceDimension), 2 > BSplineTransformQuadraticType
Superclass2::CombinationTransformType CombinationTransformType
BSplineTransformBaseType::OriginType OriginType
BSplineTransformBaseType::Pointer BSplineTransformBasePointer
BSplineTransformBaseType::SizeType SizeType
elx::TransformBase< TElastix > Superclass2
itk::SmartPointer< const Self > ConstPointer
itk::AdvancedCombinationTransform< typename elx::TransformBase< TElastix >::CoordRepType, elx::TransformBase< TElastix >::FixedImageDimension > Superclass1
itk::RecursiveBSplineTransform< typename elx::TransformBase< TElastix >::CoordRepType, itkGetStaticConstMacro(SpaceDimension), 3 > BSplineTransformCubicType
GridScheduleComputerType ::VectorGridSpacingFactorType GridScheduleType
BSplineTransformBaseType::ImageType ImageType
Superclass1::NumberOfParametersType NumberOfParametersType
itk::CyclicBSplineDeformableTransform< typename elx::TransformBase< TElastix >::CoordRepType, itkGetStaticConstMacro(SpaceDimension), 2 > CyclicBSplineTransformQuadraticType
elxClassNameMacro("RecursiveBSplineTransform")
virtual void SetOptimizerScales(const unsigned int edgeWidth)
GridScheduleComputerPointer m_GridScheduleComputer
Superclass1::InputVnlVectorType InputVnlVectorType
itk::RecursiveBSplineTransform< typename elx::TransformBase< TElastix >::CoordRepType, itkGetStaticConstMacro(SpaceDimension), 1 > BSplineTransformLinearType
Superclass1::OutputCovariantVectorType OutputCovariantVectorType
BSplineTransformBaseType::ContinuousIndexType ContinuousIndexType
void CreateTransformParametersMap(const ParametersType &param, ParameterMapType *paramsMap) const override
Superclass2::ConfigurationType ConfigurationType
itk::GridScheduleComputer< CoordRepType, SpaceDimension > GridScheduleComputerType
BSplineTransformBaseType::ImagePointer ImagePointer
BSplineTransformBaseType::ParameterIndexArrayType ParameterIndexArrayType
itk::UpsampleBSplineParametersFilter< ParametersType, ImageType > GridUpsamplerType
BSplineTransformBaseType::SpacingType SpacingType
Superclass1::OutputVnlVectorType OutputVnlVectorType
itkStaticConstMacro(SpaceDimension, unsigned int, Superclass2::FixedImageDimension)
itk::AdvancedBSplineDeformableTransformBase< typename elx::TransformBase< TElastix >::CoordRepType, itkGetStaticConstMacro(SpaceDimension) > BSplineTransformBaseType
Superclass2::RegistrationType RegistrationType
virtual void InitializeTransform(void)
Superclass1::InputCovariantVectorType InputCovariantVectorType
Superclass1::OutputVectorType OutputVectorType
itk::CyclicGridScheduleComputer< CoordRepType, SpaceDimension > CyclicGridScheduleComputerType
Superclass2::ParameterMapType ParameterMapType
void ReadFromFile(void) override
itk::CyclicBSplineDeformableTransform< typename elx::TransformBase< TElastix >::CoordRepType, itkGetStaticConstMacro(SpaceDimension), 3 > CyclicBSplineTransformCubicType
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
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
A recursive implementation of the B-spline transform.
Superclass::ParametersType ParametersType
Convenience class for upsampling a B-spline coefficient image.


Generated on OURCE_DATE_EPOCH for elastix by doxygen 1.9.1 elastix logo