Loading...
Searching...
No Matches
itkTransformBendingEnergyPenaltyTerm.h
Go to the documentation of this file.
/*=========================================================================
*
* Copyright UMC Utrecht and contributors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0.txt
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*
*=========================================================================*/
#ifndef itkTransformBendingEnergyPenaltyTerm_h
#define itkTransformBendingEnergyPenaltyTerm_h
#include "itkTransformPenaltyTerm.h"
#include "itkImageGridSampler.h"
namespace itk
{
template <class TFixedImage, class TScalarType>
class ITK_TEMPLATE_EXPORT TransformBendingEnergyPenaltyTerm : public TransformPenaltyTerm<TFixedImage, TScalarType>
{
public:
ITK_DISALLOW_COPY_AND_MOVE(TransformBendingEnergyPenaltyTerm);
using Self = TransformBendingEnergyPenaltyTerm;
using Superclass = TransformPenaltyTerm<TFixedImage, TScalarType>;
using Pointer = SmartPointer<Self>;
using ConstPointer = SmartPointer<const Self>;
itkNewMacro(Self);
itkTypeMacro(TransformBendingEnergyPenaltyTerm, TransformPenaltyTerm);
using typename Superclass::CoordinateRepresentationType;
using typename Superclass::MovingImageType;
using typename Superclass::MovingImagePixelType;
using typename Superclass::MovingImagePointer;
using typename Superclass::MovingImageConstPointer;
using typename Superclass::FixedImageType;
using typename Superclass::FixedImagePointer;
using typename Superclass::FixedImageConstPointer;
using typename Superclass::FixedImageRegionType;
using typename Superclass::TransformType;
using typename Superclass::TransformPointer;
using typename Superclass::InputPointType;
using typename Superclass::OutputPointType;
using typename Superclass::TransformParametersType;
using typename Superclass::TransformJacobianType;
using typename Superclass::NumberOfParametersType;
using typename Superclass::InterpolatorType;
using typename Superclass::InterpolatorPointer;
using typename Superclass::RealType;
using typename Superclass::GradientPixelType;
using typename Superclass::GradientImageType;
using typename Superclass::GradientImagePointer;
using typename Superclass::FixedImageMaskType;
using typename Superclass::FixedImageMaskPointer;
using typename Superclass::MovingImageMaskType;
using typename Superclass::MovingImageMaskPointer;
using typename Superclass::MeasureType;
using typename Superclass::DerivativeType;
using typename Superclass::DerivativeValueType;
using typename Superclass::ParametersType;
using typename Superclass::FixedImagePixelType;
using typename Superclass::ImageSampleContainerType;
using typename Superclass::ImageSampleContainerPointer;
using typename Superclass::ScalarType;
using typename Superclass::ThreadInfoType;
using typename Superclass::CombinationTransformType;
using typename Superclass::BSplineOrder1TransformType;
using typename Superclass::BSplineOrder1TransformPointer;
using typename Superclass::BSplineOrder2TransformType;
using typename Superclass::BSplineOrder2TransformPointer;
using typename Superclass::BSplineOrder3TransformType;
using typename Superclass::BSplineOrder3TransformPointer;
using typename Superclass::SpatialJacobianType;
using typename Superclass::JacobianOfSpatialJacobianType;
using typename Superclass::SpatialHessianType;
using typename Superclass::JacobianOfSpatialHessianType;
using typename Superclass::InternalMatrixType;
itkStaticConstMacro(FixedImageDimension, unsigned int, FixedImageType::ImageDimension);
MeasureType
GetValue(const ParametersType & parameters) const override;
void
GetDerivative(const ParametersType & parameters, DerivativeType & derivative) const override;
virtual void
GetValueAndDerivativeSingleThreaded(const ParametersType & parameters,
MeasureType & value,
DerivativeType & derivative) const;
void
GetValueAndDerivative(const ParametersType & parameters,
MeasureType & value,
DerivativeType & derivative) const override;
void
ThreadedGetValueAndDerivative(ThreadIdType threadID) const override;
void
AfterThreadedGetValueAndDerivative(MeasureType & value, DerivativeType & derivative) const override;
protected:
using typename Superclass::FixedImageIndexType;
using typename Superclass::FixedImageIndexValueType;
using typename Superclass::MovingImageIndexType;
using typename Superclass::FixedImagePointType;
using typename Superclass::MovingImagePointType;
using typename Superclass::MovingImageContinuousIndexType;
using typename Superclass::NonZeroJacobianIndicesType;
TransformBendingEnergyPenaltyTerm();
~TransformBendingEnergyPenaltyTerm() override = default;
};
} // end namespace itk
#ifndef ITK_MANUAL_INSTANTIATION
# include "itkTransformBendingEnergyPenaltyTerm.hxx"
#endif
#endif // #ifndef itkTransformBendingEnergyPenaltyTerm_h
itk::AdvancedImageToImageMetric< TFixedImage, TFixedImage >::BSplineOrder1TransformPointer
typename BSplineOrder1TransformType::Pointer BSplineOrder1TransformPointer
Definition itkAdvancedImageToImageMetric.h:165
itk::AdvancedImageToImageMetric< TFixedImage, TFixedImage >::MovingImagePointType
typename TransformType::OutputPointType MovingImagePointType
Definition itkAdvancedImageToImageMetric.h:338
itk::AdvancedImageToImageMetric< TFixedImage, TFixedImage >::ImageSampleContainerPointer
typename ImageSamplerType::OutputVectorContainerPointer ImageSampleContainerPointer
Definition itkAdvancedImageToImageMetric.h:145
itk::AdvancedImageToImageMetric< TFixedImage, TFixedImage >::NonZeroJacobianIndicesType
typename AdvancedTransformType::NonZeroJacobianIndicesType NonZeroJacobianIndicesType
Definition itkAdvancedImageToImageMetric.h:356
itk::AdvancedImageToImageMetric< TFixedImage, TFixedImage >::FixedImagePixelType
typename FixedImageType::PixelType FixedImagePixelType
Definition itkAdvancedImageToImageMetric.h:137
itk::AdvancedImageToImageMetric< TFixedImage, TFixedImage >::DerivativeValueType
typename DerivativeType::ValueType DerivativeValueType
Definition itkAdvancedImageToImageMetric.h:133
itk::AdvancedImageToImageMetric< TFixedImage, TFixedImage >::BSplineOrder3TransformType
AdvancedBSplineDeformableTransform< ScalarType, FixedImageDimension, 3 > BSplineOrder3TransformType
Definition itkAdvancedImageToImageMetric.h:164
itk::AdvancedImageToImageMetric< TFixedImage, TFixedImage >::FixedImageIndexValueType
typename FixedImageIndexType::IndexValueType FixedImageIndexValueType
Definition itkAdvancedImageToImageMetric.h:335
itk::AdvancedImageToImageMetric< TFixedImage, TFixedImage >::MovingImageIndexType
typename MovingImageType::IndexType MovingImageIndexType
Definition itkAdvancedImageToImageMetric.h:336
itk::AdvancedImageToImageMetric< TFixedImage, TFixedImage >::ImageSampleContainerType
typename ImageSamplerType::OutputVectorContainerType ImageSampleContainerType
Definition itkAdvancedImageToImageMetric.h:144
itk::AdvancedImageToImageMetric< TFixedImage, TFixedImage >::MovingImagePointer
typename MovingImageType::Pointer MovingImagePointer
Definition itkAdvancedImageToImageMetric.h:104
itk::AdvancedImageToImageMetric< TFixedImage, TFixedImage >::FixedImageMaskType
ImageMaskSpatialObject< Self::FixedImageDimension > FixedImageMaskType
Definition itkAdvancedImageToImageMetric.h:124
itk::AdvancedImageToImageMetric< TFixedImage, TFixedImage >::BSplineOrder3TransformPointer
typename BSplineOrder3TransformType::Pointer BSplineOrder3TransformPointer
Definition itkAdvancedImageToImageMetric.h:167
itk::AdvancedImageToImageMetric< TFixedImage, TFixedImage >::FixedImagePointer
typename FixedImageType::Pointer FixedImagePointer
Definition itkAdvancedImageToImageMetric.h:107
itk::AdvancedImageToImageMetric< TFixedImage, TFixedImage >::BSplineOrder2TransformPointer
typename BSplineOrder2TransformType::Pointer BSplineOrder2TransformPointer
Definition itkAdvancedImageToImageMetric.h:166
itk::AdvancedImageToImageMetric< TFixedImage, TFixedImage >::FixedImageIndexType
typename FixedImageType::IndexType FixedImageIndexType
Definition itkAdvancedImageToImageMetric.h:334
itk::AdvancedImageToImageMetric< TFixedImage, TFixedImage >::MovingImageMaskPointer
SmartPointer< MovingImageMaskType > MovingImageMaskPointer
Definition itkAdvancedImageToImageMetric.h:128
itk::AdvancedImageToImageMetric< TFixedImage, TFixedImage >::BSplineOrder1TransformType
AdvancedBSplineDeformableTransform< ScalarType, FixedImageDimension, 1 > BSplineOrder1TransformType
Definition itkAdvancedImageToImageMetric.h:162
itk::AdvancedImageToImageMetric< TFixedImage, TFixedImage >::ThreadInfoType
MultiThreaderBase::WorkUnitInfo ThreadInfoType
Definition itkAdvancedImageToImageMetric.h:170
itk::AdvancedImageToImageMetric< TFixedImage, TFixedImage >::FixedImagePointType
typename TransformType::InputPointType FixedImagePointType
Definition itkAdvancedImageToImageMetric.h:337
itk::AdvancedImageToImageMetric< TFixedImage, TFixedImage >::FixedImageMaskPointer
SmartPointer< FixedImageMaskType > FixedImageMaskPointer
Definition itkAdvancedImageToImageMetric.h:125
itk::AdvancedImageToImageMetric< TFixedImage, TFixedImage >::MovingImageContinuousIndexType
typename InterpolatorType::ContinuousIndexType MovingImageContinuousIndexType
Definition itkAdvancedImageToImageMetric.h:339
itk::AdvancedImageToImageMetric< TFixedImage, TFixedImage >::CombinationTransformType
AdvancedCombinationTransform< ScalarType, FixedImageDimension > CombinationTransformType
Definition itkAdvancedImageToImageMetric.h:161
itk::AdvancedImageToImageMetric< TFixedImage, TFixedImage >::NumberOfParametersType
typename AdvancedTransformType::NumberOfParametersType NumberOfParametersType
Definition itkAdvancedImageToImageMetric.h:158
itk::AdvancedImageToImageMetric< TFixedImage, TFixedImage >::BSplineOrder2TransformType
AdvancedBSplineDeformableTransform< ScalarType, FixedImageDimension, 2 > BSplineOrder2TransformType
Definition itkAdvancedImageToImageMetric.h:163
itk::AdvancedImageToImageMetric< TFixedImage, TFixedImage >::MovingImageMaskType
ImageMaskSpatialObject< Self::MovingImageDimension > MovingImageMaskType
Definition itkAdvancedImageToImageMetric.h:127
itk::TransformBendingEnergyPenaltyTerm::GetValueAndDerivativeSingleThreaded
virtual void GetValueAndDerivativeSingleThreaded(const ParametersType &parameters, MeasureType &value, DerivativeType &derivative) const
itk::TransformBendingEnergyPenaltyTerm::GetDerivative
void GetDerivative(const ParametersType &parameters, DerivativeType &derivative) const override
itk::TransformBendingEnergyPenaltyTerm::ITK_DISALLOW_COPY_AND_MOVE
ITK_DISALLOW_COPY_AND_MOVE(TransformBendingEnergyPenaltyTerm)
itk::TransformBendingEnergyPenaltyTerm::TransformBendingEnergyPenaltyTerm
TransformBendingEnergyPenaltyTerm()
itk::TransformBendingEnergyPenaltyTerm::~TransformBendingEnergyPenaltyTerm
~TransformBendingEnergyPenaltyTerm() override=default
itk::TransformBendingEnergyPenaltyTerm< typename MetricBase< TElastix >::FixedImageType, double >::Pointer
SmartPointer< Self > Pointer
Definition itkTransformBendingEnergyPenaltyTerm.h:58
itk::TransformBendingEnergyPenaltyTerm::ThreadedGetValueAndDerivative
void ThreadedGetValueAndDerivative(ThreadIdType threadID) const override
itk::TransformBendingEnergyPenaltyTerm< typename MetricBase< TElastix >::FixedImageType, double >::Self
TransformBendingEnergyPenaltyTerm Self
Definition itkTransformBendingEnergyPenaltyTerm.h:56
itk::TransformBendingEnergyPenaltyTerm::GetValueAndDerivative
void GetValueAndDerivative(const ParametersType &parameters, MeasureType &value, DerivativeType &derivative) const override
itk::TransformBendingEnergyPenaltyTerm::GetValue
MeasureType GetValue(const ParametersType &parameters) const override
itk::TransformBendingEnergyPenaltyTerm::AfterThreadedGetValueAndDerivative
void AfterThreadedGetValueAndDerivative(MeasureType &value, DerivativeType &derivative) const override
itk::TransformBendingEnergyPenaltyTerm::itkStaticConstMacro
itkStaticConstMacro(FixedImageDimension, unsigned int, FixedImageType::ImageDimension)
itk::TransformBendingEnergyPenaltyTerm< typename MetricBase< TElastix >::FixedImageType, double >::Superclass
TransformPenaltyTerm< typename MetricBase< TElastix >::FixedImageType, double > Superclass
Definition itkTransformBendingEnergyPenaltyTerm.h:57
itk::TransformBendingEnergyPenaltyTerm< typename MetricBase< TElastix >::FixedImageType, double >::ConstPointer
SmartPointer< const Self > ConstPointer
Definition itkTransformBendingEnergyPenaltyTerm.h:59
itk::TransformPenaltyTerm::ScalarType
TScalarType ScalarType
Definition itkTransformPenaltyTerm.h:105
itk::TransformPenaltyTerm::JacobianOfSpatialJacobianType
typename TransformType::JacobianOfSpatialJacobianType JacobianOfSpatialJacobianType
Definition itkTransformPenaltyTerm.h:110
itk::TransformPenaltyTerm::TransformType
typename Superclass::AdvancedTransformType TransformType
Definition itkTransformPenaltyTerm.h:108
itk::TransformPenaltyTerm::SpatialHessianType
typename TransformType::SpatialHessianType SpatialHessianType
Definition itkTransformPenaltyTerm.h:111
itk::TransformPenaltyTerm::SpatialJacobianType
typename TransformType::SpatialJacobianType SpatialJacobianType
Definition itkTransformPenaltyTerm.h:109
itk::TransformPenaltyTerm::InternalMatrixType
typename TransformType::InternalMatrixType InternalMatrixType
Definition itkTransformPenaltyTerm.h:113
itk::TransformPenaltyTerm::JacobianOfSpatialHessianType
typename TransformType::JacobianOfSpatialHessianType JacobianOfSpatialHessianType
Definition itkTransformPenaltyTerm.h:112
itk::TransformPenaltyTerm< TFixedImage, TScalarType >::TransformPenaltyTerm
TransformPenaltyTerm()=default
itkImageGridSampler.h
itkTransformPenaltyTerm.h
itk
Definition itkAdvancedImageToImageMetric.h:43

Generated on 1768596610 for elastix by 1.15.0 |