template<class TElastix>
class elastix::DeformationFieldTransform< TElastix >
A transform based on a DeformationField. 
This transform models the transformation by a deformation vector field. This transform is NOT meant to be used for optimisation. Just use it as an initial transform, or with transformix.
The parameters used in this class are: 
- Parameters:
- Transform: Select this transform as follows:
 (Transform "DeformationFieldTransform")
The transform parameters necessary for transformix, additionally defined by this class, are: 
- Transform Parameters:
- DeformationFieldFileName: stores the name of the deformation field. 
 example:- (DeformationFieldFileName "defField.mhd")
 - DeformationFieldInterpolationOrder: The interpolation order used for interpolating the deformation field:
 example:- (DeformationFieldInterpolationOrder 0)
 The default value is 0. Choose from the allowed values 0 or 1.
 
- See also
- DeformationFieldInterpolatingTransform 
Definition at line 54 of file elxDeformationFieldTransform.h.
|  | 
| using | CombinationTransformType = typename Superclass2::CombinationTransformType | 
|  | 
| using | ConstPointer = itk::SmartPointer< const Self > | 
|  | 
| using | CoordRepType = ElastixBase::CoordRepType | 
|  | 
| using | DeformationFieldInterpolatingTransformPointer = typename DeformationFieldInterpolatingTransformType::Pointer | 
|  | 
| using | DeformationFieldInterpolatingTransformType = itk::DeformationFieldInterpolatingTransform< typename elx::TransformBase< TElastix >::CoordRepType, elx::TransformBase< TElastix >::FixedImageDimension, float > | 
|  | 
| using | DeformationFieldType = typename DeformationFieldInterpolatingTransformType::DeformationFieldType | 
|  | 
| using | DeformationFieldVectorType = typename DeformationFieldInterpolatingTransformType::DeformationFieldVectorType | 
|  | 
| using | FixedImageType = typename TElastix::FixedImageType | 
|  | 
| using | ITKBaseType = typename Superclass2::ITKBaseType | 
|  | 
| using | MovingImageType = typename TElastix::MovingImageType | 
|  | 
| using | ParameterMapType = typename TElastix::ParameterMapType | 
|  | 
| using | Pointer = itk::SmartPointer< Self > | 
|  | 
| using | Self = DeformationFieldTransform | 
|  | 
| using | Superclass1 = itk::AdvancedCombinationTransform< typename elx::TransformBase< TElastix >::CoordRepType, elx::TransformBase< TElastix >::FixedImageDimension > | 
|  | 
| using | Superclass2 = elx::TransformBase< TElastix > | 
|  | 
| using | ConstPointer = SmartPointer< const Self > | 
|  | 
| using | CurrentTransformConstPointer = typename CurrentTransformType::ConstPointer | 
|  | 
| using | CurrentTransformInverseTransformBasePointer = typename CurrentTransformType::InverseTransformBasePointer | 
|  | 
| using | CurrentTransformInverseTransformBaseType = typename CurrentTransformType::InverseTransformBaseType | 
|  | 
| using | CurrentTransformPointer = typename CurrentTransformType::Pointer | 
|  | 
| using | CurrentTransformType = Superclass | 
|  | 
| using | InitialTransformConstPointer = typename InitialTransformType::ConstPointer | 
|  | 
| using | InitialTransformInverseTransformBasePointer = typename InitialTransformType::InverseTransformBasePointer | 
|  | 
| using | InitialTransformInverseTransformBaseType = typename InitialTransformType::InverseTransformBaseType | 
|  | 
| using | InitialTransformPointer = typename InitialTransformType::Pointer | 
|  | 
| using | InitialTransformType = Superclass | 
|  | 
| using | InverseTransformBaseType = typename Superclass::InverseTransformBaseType | 
|  | 
| using | Pointer = SmartPointer< Self > | 
|  | 
| using | Self = AdvancedCombinationTransform | 
|  | 
| using | Superclass = AdvancedTransform< elx::TransformBase< TElastix >::CoordRepType, NDimensions, NDimensions > | 
|  | 
| using | TransformType = typename Superclass::TransformType | 
|  | 
| using | TransformTypeConstPointer = typename TransformType::ConstPointer | 
|  | 
| using | TransformTypePointer = typename TransformType::Pointer | 
|  | 
| using | ConstPointer = SmartPointer< const Self > | 
|  | 
| using | InternalMatrixType = typename SpatialJacobianType::InternalMatrixType | 
|  | 
| using | InverseTransformBaseType = typename Superclass::InverseTransformBaseType | 
|  | 
| using | JacobianOfSpatialHessianType = std::vector< SpatialHessianType > | 
|  | 
| using | JacobianOfSpatialJacobianType = std::vector< SpatialJacobianType > | 
|  | 
| using | MovingImageGradientType = OutputCovariantVectorType | 
|  | 
| using | MovingImageGradientValueType = typename MovingImageGradientType::ValueType | 
|  | 
| using | NonZeroJacobianIndicesType = std::vector< unsigned long > | 
|  | 
| using | Pointer = SmartPointer< Self > | 
|  | 
| using | Self = AdvancedTransform | 
|  | 
| using | SpatialHessianType = FixedArray< Matrix< ScalarType, InputSpaceDimension, InputSpaceDimension >, OutputSpaceDimension > | 
|  | 
| using | SpatialJacobianType = Matrix< ScalarType, OutputSpaceDimension, InputSpaceDimension > | 
|  | 
| using | Superclass = Transform< TScalarType, NInputDimensions, NOutputDimensions > | 
|  | 
| using | TransformType = Transform< TScalarType, NInputDimensions, NOutputDimensions > | 
|  | 
| using | TransformTypeConstPointer = typename TransformType::ConstPointer | 
|  | 
| using | TransformTypePointer = typename TransformType::Pointer | 
|  | 
| using | CombinationTransformType = itk::AdvancedCombinationTransform< CoordRepType, Self::FixedImageDimension > | 
|  | 
| using | CommandLineArgumentMapType = Configuration ::CommandLineArgumentMapType | 
|  | 
| using | CommandLineEntryType = Configuration ::CommandLineEntryType | 
|  | 
| using | ComponentDescriptionType = ComponentDatabase::ComponentDescriptionType | 
|  | 
| using | CoordRepType = ElastixBase::CoordRepType | 
|  | 
| using | DeformationFieldImageType = itk::Image< VectorPixelType, FixedImageDimension > | 
|  | 
| using | FixedImageType = typename TElastix::FixedImageType | 
|  | 
| using | InitialTransformType = typename CombinationTransformType::InitialTransformType | 
|  | 
| using | InputPointType = typename ITKBaseType::InputPointType | 
|  | 
| using | ITKBaseType = CombinationTransformType | 
|  | 
| using | ITKRegistrationType = typename RegistrationType::ITKBaseType | 
|  | 
| using | MovingImageType = typename TElastix::MovingImageType | 
|  | 
| using | OptimizerType = typename ITKRegistrationType::OptimizerType | 
|  | 
| using | OutputPointType = typename ITKBaseType::OutputPointType | 
|  | 
| using | ParameterMapType = typename TElastix::ParameterMapType | 
|  | 
| using | ParametersType = itk::OptimizerParameters< ValueType > | 
|  | 
| using | PtrToCreator = ComponentDatabase::PtrToCreator | 
|  | 
| using | RegistrationType = typename ElastixType::RegistrationBaseType | 
|  | 
| using | ScalesType = itk::Optimizer::ScalesType | 
|  | 
| using | Self = TransformBase | 
|  | 
| using | SpatialJacobianDeterminantImageType = itk::Image< float, FixedImageDimension > | 
|  | 
| using | SpatialJacobianMatrixImageType = itk::Image< itk::Matrix< float, MovingImageDimension, FixedImageDimension >, FixedImageDimension > | 
|  | 
| using | Superclass = BaseComponentSE< TElastix > | 
|  | 
| using | ValueType = double | 
|  | 
| using | VectorPixelType = itk::Vector< float, FixedImageDimension > | 
|  | 
| using | ElastixType = TElastix | 
|  | 
| using | RegistrationType = typename ElastixType::RegistrationBaseType | 
|  | 
| using | Self = BaseComponentSE | 
|  | 
| using | Superclass = BaseComponent | 
|  | 
|  | 
|  | elxClassNameMacro ("DeformationFieldTransform") | 
|  | 
| virtual const char * | GetClassName () const | 
|  | 
|  | ITK_DISALLOW_COPY_AND_MOVE (DeformationFieldTransform) | 
|  | 
|  | itkStaticConstMacro (SpaceDimension, unsigned int, Superclass2::FixedImageDimension) | 
|  | 
| void | ReadFromFile () override | 
|  | 
| void | EvaluateJacobianWithImageGradientProduct (const InputPointType &inputPoint, const MovingImageGradientType &movingImageGradient, DerivativeType &imageJacobian, NonZeroJacobianIndicesType &nonZeroJacobianIndices) const override | 
|  | 
| const FixedParametersType & | GetFixedParameters () const override | 
|  | 
| bool | GetHasNonZeroSpatialHessian () const override | 
|  | 
| bool | GetInverse (Self *inverse) const | 
|  | 
| void | GetJacobian (const InputPointType &inputPoint, JacobianType &j, NonZeroJacobianIndicesType &nonZeroJacobianIndices) const override | 
|  | 
| void | GetJacobianOfSpatialHessian (const InputPointType &inputPoint, JacobianOfSpatialHessianType &jsh, NonZeroJacobianIndicesType &nonZeroJacobianIndices) const override | 
|  | 
| void | GetJacobianOfSpatialHessian (const InputPointType &inputPoint, SpatialHessianType &sh, JacobianOfSpatialHessianType &jsh, NonZeroJacobianIndicesType &nonZeroJacobianIndices) const override | 
|  | 
| void | GetJacobianOfSpatialJacobian (const InputPointType &inputPoint, JacobianOfSpatialJacobianType &jsj, NonZeroJacobianIndicesType &nonZeroJacobianIndices) const override | 
|  | 
| void | GetJacobianOfSpatialJacobian (const InputPointType &inputPoint, SpatialJacobianType &sj, JacobianOfSpatialJacobianType &jsj, NonZeroJacobianIndicesType &nonZeroJacobianIndices) const override | 
|  | 
| const TransformTypePointer | GetNthTransform (SizeValueType n) const | 
|  | 
| NumberOfParametersType | GetNumberOfNonZeroJacobianIndices () const override | 
|  | 
| NumberOfParametersType | GetNumberOfParameters () const override | 
|  | 
| SizeValueType | GetNumberOfTransforms () const | 
|  | 
| const ParametersType & | GetParameters () const override | 
|  | 
| void | GetSpatialHessian (const InputPointType &inputPoint, SpatialHessianType &sh) const override | 
|  | 
| void | GetSpatialJacobian (const InputPointType &inputPoint, SpatialJacobianType &sj) const override | 
|  | 
| TransformCategoryEnum | GetTransformCategory () const override | 
|  | 
| virtual bool | GetUseAddition () const | 
|  | 
| virtual bool | GetUseComposition () const | 
|  | 
| bool | HasNonZeroJacobianOfSpatialHessian () const | 
|  | 
| bool | IsLinear () const override | 
|  | 
|  | ITK_DISALLOW_COPY_AND_MOVE (AdvancedCombinationTransform) | 
|  | 
|  | itkGetModifiableObjectMacro (CurrentTransform, CurrentTransformType) | 
|  | 
|  | itkGetModifiableObjectMacro (InitialTransform, InitialTransformType) | 
|  | 
|  | itkStaticConstMacro (SpaceDimension, unsigned int, NDimensions) | 
|  | 
| void | SetCurrentTransform (CurrentTransformType *_arg) | 
|  | 
| void | SetFixedParameters (const FixedParametersType &fixedParam) override | 
|  | 
| void | SetInitialTransform (InitialTransformType *_arg) | 
|  | 
| void | SetParameters (const ParametersType ¶m) override | 
|  | 
| void | SetParametersByValue (const ParametersType ¶m) override | 
|  | 
| void | SetUseAddition (bool _arg) | 
|  | 
| void | SetUseComposition (bool _arg) | 
|  | 
| OutputCovariantVectorType | TransformCovariantVector (const InputCovariantVectorType &) const override | 
|  | 
| OutputPointType | TransformPoint (const InputPointType &point) const override | 
|  | 
| OutputVectorType | TransformVector (const InputVectorType &) const override | 
|  | 
| OutputVnlVectorType | TransformVector (const InputVnlVectorType &) const override | 
|  | 
| void | ComputeJacobianWithRespectToParameters (const InputPointType &, JacobianType &) const override | 
|  | 
| virtual bool | GetHasNonZeroJacobianOfSpatialHessian () const | 
|  | 
|  | ITK_DISALLOW_COPY_AND_MOVE (AdvancedTransform) | 
|  | 
|  | itkStaticConstMacro (InputSpaceDimension, unsigned int, NInputDimensions) | 
|  | 
|  | itkStaticConstMacro (OutputSpaceDimension, unsigned int, NOutputDimensions) | 
|  | 
| int | BeforeAllTransformix () | 
|  | 
| void | ComputeAndWriteSpatialJacobianDeterminantImage () const | 
|  | 
| void | ComputeAndWriteSpatialJacobianMatrixImage () const | 
|  | 
| SpatialJacobianDeterminantImageType::Pointer | ComputeSpatialJacobianDeterminantImage () const | 
|  | 
| SpatialJacobianMatrixImageType::Pointer | ComputeSpatialJacobianMatrixImage () const | 
|  | 
| void | CreateTransformParameterMap (const ParametersType ¶m, ParameterMapType ¶meterMap, const bool includeDerivedTransformParameters=true) const | 
|  | 
| ITKBaseType * | GetAsITKBaseType () | 
|  | 
| const ITKBaseType * | GetAsITKBaseType () const | 
|  | 
|  | ITK_DISALLOW_COPY_AND_MOVE (TransformBase) | 
|  | 
|  | itkStaticConstMacro (FixedImageDimension, unsigned int, FixedImageType::ImageDimension) | 
|  | 
|  | itkStaticConstMacro (MovingImageDimension, unsigned int, MovingImageType::ImageDimension) | 
|  | 
| void | ReadInitialTransformFromFile (const std::string &transformParameterFileName) | 
|  | 
| void | SetFinalParameters () | 
|  | 
| void | SetInitialTransform (InitialTransformType *_arg) | 
|  | 
| void | SetReadWriteTransformParameters (const bool _arg) | 
|  | 
| void | SetTransformParameterFileName (const std::string &filename) | 
|  | 
| template<typename TMesh > | 
| TMesh::Pointer | TransformMesh (const TMesh &mesh) const | 
|  | 
| void | TransformPoints () const | 
|  | 
| void | WriteToFile (std::ostream &transformationParameterInfo, const ParametersType ¶m) const | 
|  | 
| void | AddTargetCellToIterationInfo (const char *const name) | 
|  | 
| const Configuration * | GetConfiguration () const | 
|  | 
| ElastixType * | GetElastix () const | 
|  | 
| auto & | GetIterationInfoAt (const char *const name) | 
|  | 
| RegistrationType * | GetRegistration () const | 
|  | 
|  | ITK_DISALLOW_COPY_AND_MOVE (BaseComponentSE) | 
|  | 
| void | RemoveTargetCellFromIterationInfo (const char *const name) | 
|  | 
| void | SetConfiguration (const Configuration *_arg) | 
|  | 
| void | SetElastix (ElastixType *_arg) | 
|  | 
| virtual void | AfterEachIteration () | 
|  | 
| virtual void | AfterEachIterationBase () | 
|  | 
| virtual void | AfterEachResolution () | 
|  | 
| virtual void | AfterEachResolutionBase () | 
|  | 
| virtual void | AfterRegistration () | 
|  | 
| virtual int | BeforeAll () | 
|  | 
| virtual void | BeforeEachResolution () | 
|  | 
| virtual void | BeforeEachResolutionBase () | 
|  | 
| virtual void | BeforeRegistration () | 
|  | 
| virtual const char * | elxGetClassName () const | 
|  | 
| const char * | GetComponentLabel () const | 
|  | 
|  | ITK_DISALLOW_COPY_AND_MOVE (BaseComponent) | 
|  | 
|  | itkTypeMacroNoParent (BaseComponent) | 
|  | 
| void | SetComponentLabel (const char *label, unsigned int idx) | 
|  | 
|  | 
|  | DeformationFieldTransform () | 
|  | 
|  | ~DeformationFieldTransform () override=default | 
|  | 
|  | AdvancedCombinationTransform () | 
|  | 
| void | EvaluateJacobianWithImageGradientProductNoCurrentTransform (const InputPointType &, const MovingImageGradientType &, DerivativeType &, NonZeroJacobianIndicesType &) const | 
|  | 
| void | EvaluateJacobianWithImageGradientProductNoInitialTransform (const InputPointType &, const MovingImageGradientType &, DerivativeType &, NonZeroJacobianIndicesType &) const | 
|  | 
| void | EvaluateJacobianWithImageGradientProductUseAddition (const InputPointType &, const MovingImageGradientType &, DerivativeType &, NonZeroJacobianIndicesType &) const | 
|  | 
| void | EvaluateJacobianWithImageGradientProductUseComposition (const InputPointType &, const MovingImageGradientType &, DerivativeType &, NonZeroJacobianIndicesType &) const | 
|  | 
| void | GetJacobianNoCurrentTransform (const InputPointType &, JacobianType &, NonZeroJacobianIndicesType &) const | 
|  | 
| void | GetJacobianNoInitialTransform (const InputPointType &, JacobianType &, NonZeroJacobianIndicesType &) const | 
|  | 
| void | GetJacobianOfSpatialHessianNoCurrentTransform (const InputPointType &inputPoint, JacobianOfSpatialHessianType &jsh, NonZeroJacobianIndicesType &nonZeroJacobianIndices) const | 
|  | 
| void | GetJacobianOfSpatialHessianNoCurrentTransform (const InputPointType &inputPoint, SpatialHessianType &sh, JacobianOfSpatialHessianType &jsh, NonZeroJacobianIndicesType &nonZeroJacobianIndices) const | 
|  | 
| void | GetJacobianOfSpatialHessianNoInitialTransform (const InputPointType &inputPoint, JacobianOfSpatialHessianType &jsh, NonZeroJacobianIndicesType &nonZeroJacobianIndices) const | 
|  | 
| void | GetJacobianOfSpatialHessianNoInitialTransform (const InputPointType &inputPoint, SpatialHessianType &sh, JacobianOfSpatialHessianType &jsh, NonZeroJacobianIndicesType &nonZeroJacobianIndices) const | 
|  | 
| void | GetJacobianOfSpatialHessianUseAddition (const InputPointType &inputPoint, JacobianOfSpatialHessianType &jsh, NonZeroJacobianIndicesType &nonZeroJacobianIndices) const | 
|  | 
| void | GetJacobianOfSpatialHessianUseAddition (const InputPointType &inputPoint, SpatialHessianType &sh, JacobianOfSpatialHessianType &jsh, NonZeroJacobianIndicesType &nonZeroJacobianIndices) const | 
|  | 
| void | GetJacobianOfSpatialHessianUseComposition (const InputPointType &inputPoint, JacobianOfSpatialHessianType &jsh, NonZeroJacobianIndicesType &nonZeroJacobianIndices) const | 
|  | 
| void | GetJacobianOfSpatialHessianUseComposition (const InputPointType &inputPoint, SpatialHessianType &sh, JacobianOfSpatialHessianType &jsh, NonZeroJacobianIndicesType &nonZeroJacobianIndices) const | 
|  | 
| void | GetJacobianOfSpatialJacobianNoCurrentTransform (const InputPointType &inputPoint, JacobianOfSpatialJacobianType &jsj, NonZeroJacobianIndicesType &nonZeroJacobianIndices) const | 
|  | 
| void | GetJacobianOfSpatialJacobianNoCurrentTransform (const InputPointType &inputPoint, SpatialJacobianType &sj, JacobianOfSpatialJacobianType &jsj, NonZeroJacobianIndicesType &nonZeroJacobianIndices) const | 
|  | 
| void | GetJacobianOfSpatialJacobianNoInitialTransform (const InputPointType &inputPoint, JacobianOfSpatialJacobianType &jsj, NonZeroJacobianIndicesType &nonZeroJacobianIndices) const | 
|  | 
| void | GetJacobianOfSpatialJacobianNoInitialTransform (const InputPointType &inputPoint, SpatialJacobianType &sj, JacobianOfSpatialJacobianType &jsj, NonZeroJacobianIndicesType &nonZeroJacobianIndices) const | 
|  | 
| void | GetJacobianOfSpatialJacobianUseAddition (const InputPointType &inputPoint, JacobianOfSpatialJacobianType &jsj, NonZeroJacobianIndicesType &nonZeroJacobianIndices) const | 
|  | 
| void | GetJacobianOfSpatialJacobianUseAddition (const InputPointType &inputPoint, SpatialJacobianType &sj, JacobianOfSpatialJacobianType &jsj, NonZeroJacobianIndicesType &nonZeroJacobianIndices) const | 
|  | 
| void | GetJacobianOfSpatialJacobianUseComposition (const InputPointType &inputPoint, JacobianOfSpatialJacobianType &jsj, NonZeroJacobianIndicesType &nonZeroJacobianIndices) const | 
|  | 
| void | GetJacobianOfSpatialJacobianUseComposition (const InputPointType &inputPoint, SpatialJacobianType &sj, JacobianOfSpatialJacobianType &jsj, NonZeroJacobianIndicesType &nonZeroJacobianIndices) const | 
|  | 
| void | GetJacobianUseAddition (const InputPointType &, JacobianType &, NonZeroJacobianIndicesType &) const | 
|  | 
| void | GetJacobianUseComposition (const InputPointType &, JacobianType &, NonZeroJacobianIndicesType &) const | 
|  | 
| void | GetSpatialHessianNoCurrentTransform (const InputPointType &inputPoint, SpatialHessianType &sh) const | 
|  | 
| void | GetSpatialHessianNoInitialTransform (const InputPointType &inputPoint, SpatialHessianType &sh) const | 
|  | 
| void | GetSpatialHessianUseAddition (const InputPointType &inputPoint, SpatialHessianType &sh) const | 
|  | 
| void | GetSpatialHessianUseComposition (const InputPointType &inputPoint, SpatialHessianType &sh) const | 
|  | 
| void | GetSpatialJacobianNoCurrentTransform (const InputPointType &inputPoint, SpatialJacobianType &sj) const | 
|  | 
| void | GetSpatialJacobianNoInitialTransform (const InputPointType &inputPoint, SpatialJacobianType &sj) const | 
|  | 
| void | GetSpatialJacobianUseAddition (const InputPointType &inputPoint, SpatialJacobianType &sj) const | 
|  | 
| void | GetSpatialJacobianUseComposition (const InputPointType &inputPoint, SpatialJacobianType &sj) const | 
|  | 
| OutputPointType | TransformPointNoCurrentTransform (const InputPointType &point) const | 
|  | 
| OutputPointType | TransformPointNoInitialTransform (const InputPointType &point) const | 
|  | 
| OutputPointType | TransformPointUseAddition (const InputPointType &point) const | 
|  | 
| OutputPointType | TransformPointUseComposition (const InputPointType &point) const | 
|  | 
| void | UpdateCombinationMethod () | 
|  | 
|  | ~AdvancedCombinationTransform () override=default | 
|  | 
|  | AdvancedTransform ()=default | 
|  | 
|  | ~AdvancedTransform () override=default | 
|  | 
| void | AutomaticScalesEstimation (ScalesType &scales) const | 
|  | 
| void | AutomaticScalesEstimationStackTransform (const unsigned int numSubTransforms, ScalesType &scales) const | 
|  | 
| bool | HasITKTransformParameters () const | 
|  | 
|  | TransformBase ()=default | 
|  | 
|  | ~TransformBase () override=default | 
|  | 
|  | BaseComponentSE ()=default | 
|  | 
|  | ~BaseComponentSE () override=default | 
|  | 
|  | BaseComponent ()=default | 
|  | 
| virtual | ~BaseComponent ()=default | 
|  |