go home Home | Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | File List | Namespace Members | Data Fields | Globals | Related Pages
itkTransformBendingEnergyPenaltyTerm.h
Go to the documentation of this file.
1 /*======================================================================
2 
3  This file is part of the elastix software.
4 
5  Copyright (c) University Medical Center Utrecht. All rights reserved.
6  See src/CopyrightElastix.txt or http://elastix.isi.uu.nl/legal.php for
7  details.
8 
9  This software is distributed WITHOUT ANY WARRANTY; without even
10  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
11  PURPOSE. See the above copyright notices for more information.
12 
13 ======================================================================*/
14 #ifndef __itkTransformBendingEnergyPenaltyTerm_h
15 #define __itkTransformBendingEnergyPenaltyTerm_h
16 
18 #include "itkImageGridSampler.h"
19 
20 namespace itk
21 {
22 
45 template< class TFixedImage, class TScalarType >
47  : public TransformPenaltyTerm< TFixedImage, TScalarType >
48 {
49 public:
50 
53  typedef TransformPenaltyTerm<
54  TFixedImage, TScalarType > Superclass;
55  typedef SmartPointer<Self> Pointer;
56  typedef SmartPointer<const Self> ConstPointer;
57 
59  itkNewMacro( Self );
60 
63 
82  typedef typename Superclass::RealType RealType;
100 
103  typedef typename Superclass
106  typedef typename Superclass
111 
113  itkStaticConstMacro( FixedImageDimension, unsigned int, FixedImageType::ImageDimension );
114 
116  virtual MeasureType GetValue( const ParametersType & parameters ) const;
117 
119  virtual void GetDerivative( const ParametersType & parameters,
120  DerivativeType & derivative ) const;
121 
123  virtual void GetValueAndDerivative(
124  const ParametersType & parameters,
125  MeasureType & value,
126  DerivativeType & derivative ) const;
127 
129  virtual void GetSelfHessian( const TransformParametersType & parameters, HessianType & H ) const;
130 
132  itkSetMacro( NumberOfSamplesForSelfHessian, unsigned int );
133  itkGetConstMacro( NumberOfSamplesForSelfHessian, unsigned int );
134 
135 protected:
136 
145 
149 
152 
155 
158 
159 private:
160 
162  TransformBendingEnergyPenaltyTerm( const Self& ); // purposely not implemented
164  void operator=( const Self& ); // purposely not implemented
165 
167 
168 }; // end class TransformBendingEnergyPenaltyTerm
169 
170 
171 } // end namespace itk
172 
173 #ifndef ITK_MANUAL_INSTANTIATION
174 #include "itkTransformBendingEnergyPenaltyTerm.txx"
175 #endif
176 
177 #endif // #ifndef __itkTransformBendingEnergyPenaltyTerm_h
178 
A cost function that calculates a penalty term on a transformation.
Superclass::DerivativeValueType DerivativeValueType
Superclass::MovingImageIndexType MovingImageIndexType
Superclass::MovingImageConstPointer MovingImageConstPointer
AdvancedCombinationTransform< ScalarType, FixedImageDimension > CombinationTransformType
Superclass::FixedImagePixelType FixedImagePixelType
Superclass::TransformParametersType TransformParametersType
Superclass::CombinationTransformType CombinationTransformType
Superclass::GradientImageType GradientImageType
Superclass::MovingImageContinuousIndexType MovingImageContinuousIndexType
Superclass::MeasureType MeasureType
Superclass::FixedImageIndexValueType FixedImageIndexValueType
virtual void GetSelfHessian(const TransformParametersType &parameters, HessianType &H) const
Superclass::ImageSampleContainerPointer ImageSampleContainerPointer
An extension of the ITK ImageToImageMetric. It is the intended base class for all elastix metrics...
Superclass::MovingImageType MovingImageType
itkStaticConstMacro(FixedImageDimension, unsigned int, FixedImageType::ImageDimension)
Superclass::JacobianOfSpatialHessianType JacobianOfSpatialHessianType
Superclass::InterpolatorType InterpolatorType
Superclass::FixedImageIndexValueType FixedImageIndexValueType
Superclass::GradientImageFilterType GradientImageFilterType
virtual void GetValueAndDerivative(const ParametersType &parameters, MeasureType &value, DerivativeType &derivative) const
Superclass::ImageSampleContainerPointer ImageSampleContainerPointer
Superclass::GradientImageFilterPointer GradientImageFilterPointer
TransformPenaltyTerm< TFixedImage, TScalarType > Superclass
Superclass::NonZeroJacobianIndicesType NonZeroJacobianIndicesType
Superclass::CoordinateRepresentationType CoordinateRepresentationType
virtual MeasureType GetValue(const ParametersType &parameters) const
Superclass::InputPointType InputPointType
Superclass::FixedImageRegionType FixedImageRegionType
TransformType::JacobianOfSpatialJacobianType JacobianOfSpatialJacobianType
Superclass::FixedImageMaskPointer FixedImageMaskPointer
Superclass::TransformJacobianType TransformJacobianType
Superclass::ImageSampleContainerType ImageSampleContainerType
Superclass::FixedImageMaskType FixedImageMaskType
Superclass::FixedImageIndexType FixedImageIndexType
Superclass::CoordinateRepresentationType CoordinateRepresentationType
Superclass::FixedImagePointType FixedImagePointType
Superclass::FixedImageType FixedImageType
Superclass::GradientImagePointer GradientImagePointer
Superclass::MovingImagePixelType MovingImagePixelType
TransformType::JacobianOfSpatialHessianType JacobianOfSpatialHessianType
Superclass::GradientImageFilterType GradientImageFilterType
Superclass::InterpolatorPointer InterpolatorPointer
Superclass::GradientImageFilterPointer GradientImageFilterPointer
Superclass::MovingImageConstPointer MovingImageConstPointer
Superclass::ParametersType ParametersType
Superclass::ImageSampleContainerType ImageSampleContainerType
Superclass::OutputPointType OutputPointType
Superclass::FixedImageConstPointer FixedImageConstPointer
Superclass::JacobianOfSpatialJacobianType JacobianOfSpatialJacobianType
TransformType::SpatialJacobianType SpatialJacobianType
TransformType::InternalMatrixType InternalMatrixType
Superclass::FixedImagePointer FixedImagePointer
A cost function that calculates the bending energy of a transformation.
Superclass::DerivativeType DerivativeType
TransformType::SpatialHessianType SpatialHessianType
virtual void GetDerivative(const ParametersType &parameters, DerivativeType &derivative) const
Superclass::GradientPixelType GradientPixelType
Superclass::MovingImagePointer MovingImagePointer
Superclass::AdvancedTransformType TransformType
Superclass::TransformParametersType TransformParametersType
Superclass::MovingImageMaskPointer MovingImageMaskPointer
Superclass::NonZeroJacobianIndicesType NonZeroJacobianIndicesType
Superclass::MovingImageMaskPointer MovingImageMaskPointer
Superclass::MovingImagePointType MovingImagePointType
Superclass::MovingImageContinuousIndexType MovingImageContinuousIndexType
Superclass::MovingImageMaskType MovingImageMaskType
Samples image voxels on a regular grid.
AdvancedBSplineDeformableTransform< ScalarType, FixedImageDimension, 3 > BSplineTransformType
Superclass::FixedImageConstPointer FixedImageConstPointer


Generated on 05-01-2014 for elastix by doxygen 1.8.5 elastix logo