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  * 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 __itkTransformBendingEnergyPenaltyTerm_h
19 #define __itkTransformBendingEnergyPenaltyTerm_h
20 
22 #include "itkImageGridSampler.h"
23 
24 namespace itk
25 {
26 
49 template< class TFixedImage, class TScalarType >
51  public TransformPenaltyTerm< TFixedImage, TScalarType >
52 {
53 public:
54 
57  typedef TransformPenaltyTerm<
58  TFixedImage, TScalarType > Superclass;
60  typedef SmartPointer< const Self > ConstPointer;
61 
63  itkNewMacro( Self );
64 
67 
87  typedef typename Superclass::RealType RealType;
107 
116 
119  typedef typename Superclass
122  typedef typename Superclass
127 
129  itkStaticConstMacro( FixedImageDimension, unsigned int, FixedImageType::ImageDimension );
130 
132  virtual MeasureType GetValue( const ParametersType & parameters ) const;
133 
135  virtual void GetDerivative( const ParametersType & parameters,
136  DerivativeType & derivative ) const;
137 
140  const ParametersType & parameters,
141  MeasureType & value,
142  DerivativeType & derivative ) const;
143 
144  virtual void GetValueAndDerivative(
145  const ParametersType & parameters,
146  MeasureType & value,
147  DerivativeType & derivative ) const;
148 
150  inline void ThreadedGetValueAndDerivative( ThreadIdType threadID );
151 
154  MeasureType & value, DerivativeType & derivative ) const;
155 
157  virtual void GetSelfHessian( const TransformParametersType & parameters, HessianType & H ) const;
158 
160  itkSetMacro( NumberOfSamplesForSelfHessian, unsigned int );
161  itkGetConstMacro( NumberOfSamplesForSelfHessian, unsigned int );
162 
163 protected:
164 
173 
176 
179 
182 
183 private:
184 
186  TransformBendingEnergyPenaltyTerm( const Self & ); // purposely not implemented
188  void operator=( const Self & ); // purposely not implemented
189 
191 
192 };
193 
194 } // end namespace itk
195 
196 #ifndef ITK_MANUAL_INSTANTIATION
197 #include "itkTransformBendingEnergyPenaltyTerm.hxx"
198 #endif
199 
200 #endif // #ifndef __itkTransformBendingEnergyPenaltyTerm_h
A cost function that calculates a penalty term on a transformation.
Superclass::BSplineOrder3TransformPointer BSplineOrder3TransformPointer
Superclass::DerivativeValueType DerivativeValueType
AdvancedTransformType::NumberOfParametersType NumberOfParametersType
Superclass::MovingImageIndexType MovingImageIndexType
Superclass::MovingImageConstPointer MovingImageConstPointer
virtual void GetSelfHessian(const TransformParametersType &parameters, HessianType &H) const
Superclass::FixedImagePixelType FixedImagePixelType
virtual void GetValueAndDerivativeSingleThreaded(const ParametersType &parameters, MeasureType &value, DerivativeType &derivative) const
Superclass::TransformParametersType TransformParametersType
Superclass::CombinationTransformType CombinationTransformType
Superclass::GradientImageType GradientImageType
Superclass::MovingImageContinuousIndexType MovingImageContinuousIndexType
Superclass::MeasureType MeasureType
Superclass::FixedImageIndexValueType FixedImageIndexValueType
Superclass::ImageSampleContainerPointer ImageSampleContainerPointer
Superclass::BSplineOrder3TransformType BSplineOrder3TransformType
TransformType::InternalMatrixType InternalMatrixType
Superclass::NumberOfParametersType NumberOfParametersType
Superclass::MovingImageType MovingImageType
Superclass::BSplineOrder1TransformType BSplineOrder1TransformType
itkStaticConstMacro(FixedImageDimension, unsigned int, FixedImageType::ImageDimension)
Superclass ::JacobianOfSpatialHessianType JacobianOfSpatialHessianType
Superclass::InterpolatorType InterpolatorType
Superclass::FixedImageIndexValueType FixedImageIndexValueType
Superclass::GradientImageFilterType GradientImageFilterType
TransformType::JacobianOfSpatialHessianType JacobianOfSpatialHessianType
Superclass::ImageSampleContainerPointer ImageSampleContainerPointer
Superclass::GradientImageFilterPointer GradientImageFilterPointer
TransformPenaltyTerm< TFixedImage, TScalarType > Superclass
void ThreadedGetValueAndDerivative(ThreadIdType threadID)
Superclass::NonZeroJacobianIndicesType NonZeroJacobianIndicesType
Superclass::CoordinateRepresentationType CoordinateRepresentationType
Superclass::InputPointType InputPointType
Superclass::FixedImageRegionType FixedImageRegionType
Superclass::BSplineOrder2TransformPointer BSplineOrder2TransformPointer
Superclass::BSplineOrder2TransformPointer BSplineOrder2TransformPointer
TransformType::JacobianOfSpatialJacobianType JacobianOfSpatialJacobianType
Superclass::BSplineOrder3TransformType BSplineOrder3TransformType
virtual void GetValueAndDerivative(const ParametersType &parameters, MeasureType &value, DerivativeType &derivative) const
Superclass::FixedImageMaskPointer FixedImageMaskPointer
Superclass::CombinationTransformType CombinationTransformType
Superclass::TransformJacobianType TransformJacobianType
Superclass::AdvancedTransformType TransformType
Superclass::ImageSampleContainerType ImageSampleContainerType
Superclass::FixedImageMaskType FixedImageMaskType
Superclass::FixedImageIndexType FixedImageIndexType
virtual MeasureType GetValue(const ParametersType &parameters) const
Superclass::CoordinateRepresentationType CoordinateRepresentationType
Superclass::FixedImagePointType FixedImagePointType
Superclass::FixedImageType FixedImageType
TransformType::SpatialJacobianType SpatialJacobianType
Superclass::GradientImagePointer GradientImagePointer
Superclass::MovingImagePixelType MovingImagePixelType
Superclass::BSplineOrder3TransformPointer BSplineOrder3TransformPointer
Superclass::GradientImageFilterType GradientImageFilterType
Superclass::InterpolatorPointer InterpolatorPointer
Superclass::GradientImageFilterPointer GradientImageFilterPointer
Superclass::MovingImageConstPointer MovingImageConstPointer
Superclass::ParametersType ParametersType
Superclass::ImageSampleContainerType ImageSampleContainerType
Superclass::BSplineOrder1TransformPointer BSplineOrder1TransformPointer
Superclass::OutputPointType OutputPointType
Superclass::FixedImageConstPointer FixedImageConstPointer
Superclass ::JacobianOfSpatialJacobianType JacobianOfSpatialJacobianType
TransformType::SpatialHessianType SpatialHessianType
Superclass::FixedImagePointer FixedImagePointer
A cost function that calculates the bending energy of a transformation.
Superclass::BSplineOrder1TransformPointer BSplineOrder1TransformPointer
Superclass::DerivativeType DerivativeType
Superclass::GradientPixelType GradientPixelType
void AfterThreadedGetValueAndDerivative(MeasureType &value, DerivativeType &derivative) const
Superclass::MovingImagePointer MovingImagePointer
Superclass::ThreadInfoType ThreadInfoType
Superclass::TransformParametersType TransformParametersType
Superclass::MovingImageMaskPointer MovingImageMaskPointer
Superclass::BSplineOrder2TransformType BSplineOrder2TransformType
Superclass::NonZeroJacobianIndicesType NonZeroJacobianIndicesType
Superclass::MovingImageMaskPointer MovingImageMaskPointer
Superclass::ThreaderType ThreaderType
Superclass::MovingImagePointType MovingImagePointType
Superclass::MovingImageContinuousIndexType MovingImageContinuousIndexType
Superclass::MovingImageMaskType MovingImageMaskType
Samples image voxels on a regular grid.
Superclass::BSplineOrder2TransformType BSplineOrder2TransformType
Superclass::FixedImageConstPointer FixedImageConstPointer
Superclass::BSplineOrder1TransformType BSplineOrder1TransformType
virtual void GetDerivative(const ParametersType &parameters, DerivativeType &derivative) const


Generated on OURCE_DATE_EPOCH for elastix by doxygen 1.8.13 elastix logo