go home Home | Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | File List | Namespace Members | Data Fields | Globals | Related Pages
elxMultiBSplineTransformWithNormal.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 __elxMultiBSplineTransformWithNormal_h
19 #define __elxMultiBSplineTransformWithNormal_h
20 
21 #include "elxIncludes.h" // include first to avoid MSVS warning
25 
28 
29 namespace elastix
30 {
31 
89 template< class TElastix >
91  public
93  typename elx::TransformBase< TElastix >::CoordRepType,
94  elx::TransformBase< TElastix >::FixedImageDimension >,
95  public
96  TransformBase< TElastix >
97 {
98 public:
99 
106  typedef itk::SmartPointer< Self > Pointer;
107  typedef itk::SmartPointer< const Self > ConstPointer;
108 
110  itkNewMacro( Self );
111 
114 
119  elxClassNameMacro( "MultiBSplineTransformWithNormal" );
120 
122  itkStaticConstMacro( SpaceDimension, unsigned int, Superclass2::FixedImageDimension );
123 
129  itkGetStaticConstMacro( SpaceDimension ) > BSplineTransformBaseType;
131 
135  itkGetStaticConstMacro( SpaceDimension ),
139  itkGetStaticConstMacro( SpaceDimension ),
143  itkGetStaticConstMacro( SpaceDimension ),
145 
159 
161  typedef typename BSplineTransformBaseType::PixelType PixelType;
170  typedef typename
172  typedef typename
174 
187 
192  typedef typename GridScheduleComputerType
197 
199  typedef itk::Image< unsigned char,
200  itkGetStaticConstMacro( SpaceDimension ) > ImageLabelType;
201  typedef typename ImageLabelType::Pointer ImageLabelPointer;
202 
207  int BeforeAll( void ) override;
208 
220  void BeforeRegistration( void ) override;
221 
226  void BeforeEachResolution( void ) override;
227 
233  virtual void InitializeTransform( void );
234 
240  virtual void IncreaseScale( void );
241 
243  void ReadFromFile( void ) override;
244 
246  void WriteToFile( const ParametersType & param ) const override;
247 
249  virtual void SetOptimizerScales( const unsigned int edgeWidth );
250 
251 protected:
252 
255 
258 
260  virtual void PreComputeGridInformation( void );
261 
262 private:
263 
265  MultiBSplineTransformWithNormal( const Self & ); // purposely not implemented
267  void operator=( const Self & ); // purposely not implemented
268 
274  std::string m_LabelsPath;
275 
277  unsigned int m_SplineOrder;
278 
281 
282 };
283 
284 } // end namespace elastix
285 
286 #ifndef ITK_MANUAL_INSTANTIATION
287 #include "elxMultiBSplineTransformWithNormal.hxx"
288 #endif
289 
290 #endif // end #ifndef __elxMultiBSplineTransformWithNormal_h
A class that deals with user given parameters and command line arguments.
A transform based on the itkMultiBSplineDeformableTransformWithNormal.
itk::MultiBSplineDeformableTransformWithNormal< typename elx::TransformBase< TElastix >::CoordRepType, itkGetStaticConstMacro(SpaceDimension), 3 > MultiBSplineTransformWithNormalCubicType
itk::MultiBSplineDeformableTransformWithNormal< typename elx::TransformBase< TElastix >::CoordRepType, itkGetStaticConstMacro(SpaceDimension), 1 > MultiBSplineTransformWithNormalLinearType
GridScheduleComputerType ::VectorGridSpacingFactorType GridScheduleType
itk::GridScheduleComputer< CoordRepType, SpaceDimension > GridScheduleComputerType
itk::AdvancedBSplineDeformableTransformBase< typename elx::TransformBase< TElastix >::CoordRepType, itkGetStaticConstMacro(SpaceDimension) > BSplineTransformBaseType
itk::UpsampleBSplineParametersFilter< ParametersType, ImageType > GridUpsamplerType
Superclass1::InputCovariantVectorType InputCovariantVectorType
BSplineTransformBaseType::ParameterIndexArrayType ParameterIndexArrayType
itk::Image< unsigned char, itkGetStaticConstMacro(SpaceDimension) > ImageLabelType
itk::AdvancedCombinationTransform< typename elx::TransformBase< TElastix >::CoordRepType, elx::TransformBase< TElastix >::FixedImageDimension > Superclass1
BSplineTransformBaseType::ImagePointer ImagePointer
BSplineTransformBaseType::ContinuousIndexType ContinuousIndexType
MultiBSplineTransformWithNormalCubicType::Pointer m_MultiBSplineTransformWithNormal
itk::MultiBSplineDeformableTransformWithNormal< typename elx::TransformBase< TElastix >::CoordRepType, itkGetStaticConstMacro(SpaceDimension), 2 > MultiBSplineTransformWithNormalQuadraticType
BSplineTransformBaseType::DirectionType DirectionType
itkStaticConstMacro(SpaceDimension, unsigned int, Superclass2::FixedImageDimension)
BSplineTransformBaseType::Pointer BSplineTransformBasePointer
GridScheduleComputerType::Pointer GridScheduleComputerPointer
Superclass2::CombinationTransformType CombinationTransformType
Superclass1::OutputCovariantVectorType OutputCovariantVectorType
void WriteToFile(const ParametersType &param) const override
elxClassNameMacro("MultiBSplineTransformWithNormal")
Superclass1::NumberOfParametersType NumberOfParametersType
virtual void SetOptimizerScales(const unsigned int edgeWidth)
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
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
This class computes all information about the B-spline grid, given the image information and the desi...
std::vector< GridSpacingFactorType > VectorGridSpacingFactorType
This transform is a composition of B-spline transformations, allowing sliding motion between differen...
Convenience class for upsampling a B-spline coefficient image.


Generated on OURCE_DATE_EPOCH for elastix by doxygen 1.9.1 elastix logo