ITK
5.2.0
Insight Toolkit
|
#include <itkImageToImageMetricv4.h>
Public Types | |
using | ConstPointer = SmartPointer< const Self > |
using | CoordinateRepresentationType = typename Superclass::CoordinateRepresentationType |
using | DefaultFixedImageGradientCalculator = typename MetricTraits::DefaultFixedImageGradientCalculator |
using | DefaultFixedImageGradientFilter = typename MetricTraits::DefaultFixedImageGradientFilter |
using | DefaultMovingImageGradientCalculator = typename MetricTraits::DefaultMovingImageGradientCalculator |
using | DefaultMovingImageGradientFilter = typename MetricTraits::DefaultMovingImageGradientFilter |
using | DerivativeType = typename Superclass::DerivativeType |
using | DerivativeValueType = typename DerivativeType::ValueType |
using | DimensionType = typename Superclass::DimensionType |
using | FixedGradientPixelType = typename MetricTraits::FixedGradientPixelType |
using | FixedImageComponentGradientType = CovariantVector< typename FixedImageGradientType::ValueType, FixedImageDimension > |
using | FixedImageConstPointer = typename FixedImageType::ConstPointer |
using | FixedImageGradientCalculatorPointer = typename FixedImageGradientCalculatorType::Pointer |
using | FixedImageGradientCalculatorType = typename MetricTraits::FixedImageGradientCalculatorType |
using | FixedImageGradientFilterPointer = typename FixedImageGradientFilterType::Pointer |
using | FixedImageGradientFilterType = typename MetricTraits::FixedImageGradientFilterType |
using | FixedImageGradientImagePointer = typename FixedImageGradientImageType::Pointer |
using | FixedImageGradientImageType = typename MetricTraits::FixedImageGradientImageType |
using | FixedImageGradientType = typename MetricTraits::FixedImageGradientType |
using | FixedImageIndexType = typename FixedImageType::IndexType |
using | FixedImageMaskConstPointer = typename FixedImageMaskType::ConstPointer |
using | FixedImageMaskPointer = typename FixedImageMaskType::Pointer |
using | FixedImageMaskType = SpatialObject< Self::FixedImageDimension > |
using | FixedImagePixelType = typename FixedImageType::PixelType |
using | FixedImagePointer = typename FixedImageType::Pointer |
using | FixedImagePointType = typename FixedImageType::PointType |
using | FixedImageType = TFixedImage |
using | FixedInputPointType = typename Superclass::FixedInputPointType |
using | FixedInterpolatorPointer = typename FixedInterpolatorType::Pointer |
using | FixedInterpolatorType = InterpolateImageFunction< FixedImageType, CoordinateRepresentationType > |
using | FixedOutputPointType = typename Superclass::FixedOutputPointType |
using | FixedPixelType = FixedImagePixelType |
using | FixedRealType = typename MetricTraits::FixedRealType |
using | FixedSampledPointSetConstPointer = typename FixedSampledPointSetType::ConstPointer |
using | FixedSampledPointSetPointer = typename FixedSampledPointSetType::Pointer |
using | FixedSampledPointSetType = PointSet< typename FixedImageType::PixelType, Self::FixedImageDimension > |
using | FixedScalarRealType = typename NumericTraits< FixedRealType >::ScalarRealType |
using | FixedTransformJacobianType = typename Superclass::FixedTransformJacobianType |
using | FixedTransformParametersType = typename Superclass::FixedTransformParametersType |
using | FixedTransformPointer = typename Superclass::FixedTransformPointer |
using | FixedTransformType = typename Superclass::FixedTransformType |
using | GradientSourceEnum = typename Superclass::GradientSourceEnum |
using | ImageDimensionType = typename Superclass::DimensionType |
using | InternalComputationValueType = TInternalComputationValueType |
using | JacobianType = typename Superclass::JacobianType |
using | MeasureType = typename Superclass::MeasureType |
using | MetricTraits = TMetricTraits |
using | MovingGradientPixelType = typename MetricTraits::MovingGradientPixelType |
using | MovingImageComponentGradientType = CovariantVector< typename MovingImageGradientType::ValueType, MovingImageDimension > |
using | MovingImageConstPointer = typename MovingImageType::ConstPointer |
using | MovingImageGradientCalculatorPointer = typename MovingImageGradientCalculatorType::Pointer |
using | MovingImageGradientCalculatorType = typename MetricTraits::MovingImageGradientCalculatorType |
using | MovingImageGradientFilterPointer = typename MovingImageGradientFilterType::Pointer |
using | MovingImageGradientFilterType = typename MetricTraits::MovingImageGradientFilterType |
using | MovingImageGradientImagePointer = typename MovingImageGradientImageType::Pointer |
using | MovingImageGradientImageType = typename MetricTraits::MovingImageGradientImageType |
using | MovingImageGradientType = typename MetricTraits::MovingImageGradientType |
using | MovingImageIndexType = typename MovingImageType::IndexType |
using | MovingImageMaskConstPointer = typename MovingImageMaskType::ConstPointer |
using | MovingImageMaskPointer = typename MovingImageMaskType::Pointer |
using | MovingImageMaskType = SpatialObject< Self::MovingImageDimension > |
using | MovingImagePixelType = typename MovingImageType::PixelType |
using | MovingImagePointer = typename MovingImageType::Pointer |
using | MovingImagePointType = typename MovingImageType::PointType |
using | MovingImageRegionType = typename MovingImageType::RegionType |
using | MovingImageType = TMovingImage |
using | MovingInputPointType = typename Superclass::MovingInputPointType |
using | MovingInterpolatorPointer = typename MovingInterpolatorType::Pointer |
using | MovingInterpolatorType = InterpolateImageFunction< MovingImageType, CoordinateRepresentationType > |
using | MovingOutputPointType = typename Superclass::MovingOutputPointType |
using | MovingPixelType = MovingImagePixelType |
using | MovingRealType = typename MetricTraits::MovingRealType |
using | MovingScalarRealType = typename NumericTraits< MovingRealType >::ScalarRealType |
using | MovingTransformJacobianType = typename Superclass::MovingTransformJacobianType |
using | MovingTransformParametersType = typename Superclass::MovingTransformParametersType |
using | MovingTransformPointer = typename Superclass::MovingTransformPointer |
using | MovingTransformType = typename Superclass::MovingTransformType |
using | NumberOfParametersType = typename Superclass::NumberOfParametersType |
using | ObjectType = typename Superclass::ObjectType |
using | ParametersType = typename Superclass::ParametersType |
using | ParametersValueType = typename Superclass::ParametersValueType |
using | Pointer = SmartPointer< Self > |
using | Self = ImageToImageMetricv4 |
using | Superclass = ObjectToObjectMetric< TFixedImage::ImageDimension, TMovingImage::ImageDimension, TVirtualImage, TInternalComputationValueType > |
using | VirtualDirectionType = typename Superclass::VirtualDirectionType |
using | VirtualImageComponentGradientType = CovariantVector< typename VirtualImageGradientType::ValueType, VirtualImageDimension > |
using | VirtualImageGradientType = typename MetricTraits::VirtualImageGradientType |
using | VirtualImagePointer = typename Superclass::VirtualImagePointer |
using | VirtualImageType = typename Superclass::VirtualImageType |
using | VirtualIndexType = typename Superclass::VirtualIndexType |
using | VirtualOriginType = typename Superclass::VirtualPointType |
using | VirtualPixelType = typename Superclass::VirtualPixelType |
using | VirtualPointSetPointer = typename Superclass::VirtualPointSetPointer |
using | VirtualPointSetType = typename Superclass::VirtualPointSetType |
using | VirtualPointType = typename Superclass::VirtualPointType |
using | VirtualRadiusType = typename Superclass::VirtualSizeType |
using | VirtualRegionType = typename Superclass::VirtualRegionType |
using | VirtualSizeType = typename Superclass::VirtualSizeType |
using | VirtualSpacingType = typename Superclass::VirtualSpacingType |
Public Types inherited from itk::ObjectToObjectMetric< TFixedImage::ImageDimension, TMovingImage::ImageDimension, TVirtualImage, TInternalComputationValueType > | |
using | ConstPointer = SmartPointer< const Self > |
using | CoordinateRepresentationType = TInternalComputationValueType |
using | DerivativeType = typename Superclass::DerivativeType |
using | DerivativeValueType = typename Superclass::DerivativeValueType |
using | DimensionType = SizeValueType |
using | FixedInputPointType = typename FixedTransformType::InputPointType |
using | FixedOutputPointType = typename FixedTransformType::OutputPointType |
using | FixedTransformJacobianType = typename FixedTransformType::JacobianType |
using | FixedTransformParametersType = typename FixedTransformType::ParametersType |
using | FixedTransformPointer = typename FixedTransformType::Pointer |
using | FixedTransformType = Transform< TInternalComputationValueType, TVirtualImage::ImageDimension, TFixedDimension > |
using | GradientSourceEnum = typename Superclass::GradientSourceEnum |
using | InternalComputationValueType = TInternalComputationValueType |
using | JacobianType = typename FixedTransformType::JacobianType |
using | MeasureType = typename Superclass::MeasureType |
using | MovingDisplacementFieldTransformType = DisplacementFieldTransform< CoordinateRepresentationType, Self::MovingDimension > |
using | MovingInputPointType = typename MovingTransformType::InputPointType |
using | MovingOutputPointType = typename MovingTransformType::OutputPointType |
using | MovingTransformJacobianType = typename MovingTransformType::JacobianType |
using | MovingTransformParametersType = typename MovingTransformType::ParametersType |
using | MovingTransformPointer = typename MovingTransformType::Pointer |
using | MovingTransformType = Transform< TInternalComputationValueType, TVirtualImage::ImageDimension, TMovingDimension > |
using | NumberOfParametersType = typename Superclass::NumberOfParametersType |
using | ObjectType = typename Superclass::Object |
using | ParametersType = typename Superclass::ParametersType |
using | Pointer = SmartPointer< Self > |
using | Self = ObjectToObjectMetric |
using | Superclass = ObjectToObjectMetricBaseTemplate< TInternalComputationValueType > |
using | VirtualDirectionType = typename VirtualImageType::DirectionType |
using | VirtualImageConstPointer = typename VirtualImageType::ConstPointer |
using | VirtualImagePointer = typename VirtualImageType::Pointer |
using | VirtualImageType = TVirtualImage |
using | VirtualIndexType = typename VirtualImageType::IndexType |
using | VirtualOriginType = typename VirtualImageType::PointType |
using | VirtualPixelType = typename VirtualImageType::PixelType |
using | VirtualPointSetPointer = typename VirtualPointSetType::Pointer |
using | VirtualPointSetType = PointSet< VirtualPixelType, Self::VirtualDimension > |
using | VirtualPointType = typename VirtualImageType::PointType |
using | VirtualRadiusType = typename VirtualImageType::SizeType |
using | VirtualRegionType = typename VirtualImageType::RegionType |
using | VirtualSizeType = typename VirtualRegionType::SizeType |
using | VirtualSpacingType = typename VirtualImageType::SpacingType |
using | MetricCategoryType = typename Superclass::MetricCategoryEnum |
Public Types inherited from itk::ObjectToObjectMetricBaseTemplate< TInternalComputationValueType > | |
using | ConstPointer = SmartPointer< const Self > |
using | CoordinateRepresentationType = TInternalComputationValueType |
using | DerivativeType = typename Superclass::DerivativeType |
using | DerivativeValueType = typename DerivativeType::ValueType |
using | MeasureType = typename Superclass::MeasureType |
using | ObjectConstPointer = typename ObjectType::ConstPointer |
using | ObjectType = Object |
using | ParametersType = typename Superclass::ParametersType |
using | ParametersValueType = TInternalComputationValueType |
using | Pointer = SmartPointer< Self > |
using | Self = ObjectToObjectMetricBaseTemplate |
using | Superclass = SingleValuedCostFunctionv4Template< TInternalComputationValueType > |
using | GradientSourceEnum = itk::ObjectToObjectMetricBaseTemplateEnums::GradientSource |
using | NumberOfParametersType = unsigned int |
using | MetricCategoryEnum = itk::ObjectToObjectMetricBaseTemplateEnums::MetricCategory |
Public Types inherited from itk::SingleValuedCostFunctionv4Template< TInternalComputationValueType > | |
using | ConstPointer = SmartPointer< const Self > |
using | DerivativeType = Array< TInternalComputationValueType > |
using | MeasureType = TInternalComputationValueType |
using | ParametersType = typename Superclass::ParametersType |
using | Pointer = SmartPointer< Self > |
using | Self = SingleValuedCostFunctionv4Template |
using | Superclass = CostFunctionTemplate< TInternalComputationValueType > |
Public Types inherited from itk::CostFunctionTemplate< TInternalComputationValueType > | |
using | ConstPointer = SmartPointer< const Self > |
using | ParametersType = OptimizerParameters< TInternalComputationValueType > |
using | ParametersValueType = TInternalComputationValueType |
using | Pointer = SmartPointer< Self > |
using | Self = CostFunctionTemplate |
using | Superclass = Object |
Public Types inherited from itk::Object | |
using | ConstPointer = SmartPointer< const Self > |
using | Pointer = SmartPointer< Self > |
using | Self = Object |
using | Superclass = LightObject |
Public Types inherited from itk::LightObject | |
using | ConstPointer = SmartPointer< const Self > |
using | Pointer = SmartPointer< Self > |
using | Self = LightObject |
Computes similarity between regions of two images, using two user-supplied transforms, a 'fixed' transform and a 'moving' transform.
Templated over the fixed and moving image types, as well as an optional VirtualImage type to define the virtual domain. The VirtualImage type defaults to TFixedImage.
If the user does not set the virtual domain explicitly, then it is created during the call to Initialize
from the fixed image by copying its information. See ObjectToObjectMetric for more discussion on the virtual domain.
At a minimum, the user must: 1) Set images using SetFixedImage and SetMovingImage. 2) Call Initialize.
Image gradient calculations
Image gradients can be calculated in one of two ways: 1) Using a gradient image filter, by setting Use
[Fixed|Moving]ImageGradientFilter to true. By default this is set as an itkGradientRecursiveGaussianImageFilter, a smoothed gradient filter. A filter uses more memory, because it calculates all gradients at once and stores them in an image. The advantage of pre-calculation is for the fixed image gradients, since they only need be calculated once, and for metrics that need to access image gradients more than once for a particular point. The fixed image gradients are only calculated once when this option is set, during Initialize
. 2) Otherwise, an image gradient calculator based on ImageFunction is used. By default the CentralDifferenceImageFunction is used. This calculation is not smoothed and gives different results than GradientRecursiveGaussianImageFilter. The advantage is that less memory is used. However for the fixed image, it means needlessly computing the image gradients at each iteration of a registration instead of just computing once at the beginning. The user can supply a different function by calling SetFixedImageGradientCalculator and/or SetMovingImageGradientCalculator.
Both image gradient calculation methods are threaded. Generally it is not recommended to use different image gradient methods for the fixed and moving images because the methods return different results.
Image Masks
Image masks are supported using SetMovingImageMask or SetFixedImageMask. If the image mask is sparse, see the comments for use of sparse point sets.
Sparse Sampling
Sparse sampling is performed by supplying an arbitrary point list over which to evaluate the metric. It's presumed that the user will be working in terms of the fixed image domain, and thus the point list is expected to be in the fixed domain. Internally, the points are transformed into the virtual domain as needed.
Vector Images
To support vector images, the class must be declared using the VectorImageToImageMetricTraitsv4 class in the template declaration, as described above. Derived classes must provide special handling for vector pixel types. MeanSquaresImageToImageMetricv4 can be used as an example.
Threading
This class is threaded. Threading is handled by friend classes ImageToImageMetricv4GetValueAndDerivativeThreaderBase and ImageToImageMetricv4GetValueAndDerivativeThreader. Dense and sparse evaluation are handled by template specialization of the ImageToImageMetricv4GetValueAndDerivativeThreader::ThreadedExecution method, in order to iterate over either all points in the virtual space in the case of dense evaluation, or a list of points in the sparse case.
Methods and members of ImageToImageMetricv4 are accessed by the threading class using its m_Associate member, which points to the containing instance of ImageToImageMetricv4.
Pre- and post-processing for threaded operation is handled in ImageToImageMetricv4GetValueAndDerivativeThreaderBase::BeforeThreadedExecution, and ImageToImageMetricv4GetValueAndDerivativeThreaderBase::AfterThreadedExecution, respectively.
Derived classes:
The GetValue method may be overridden to provide better-optimized or otherwise different behavior as needed. Otherwise, the m_ComputeDerivative member should be checked to avoid computing derivatives when the caller has called GetValue(). See GetComputeDerivative() in this class and in this metric's threader class.
Derived classes must derive a threader class from ImageToImageMetricv4GetValueAndDerivativeThreader, from which a DenseGetValueAndDerivativeThreader and SparseGetValueAndDerivativeThreader must be defined. Then,
must be called in the constructor.
The ProcessPoint method of the derived threader must be overriden to provide the metric-specific evaluation.
To access methods and members within the derived metric class from the derived threader class, the user must cast m_Associate to the type of the derived metric class.
See ImageToImageMetricv4Test
for a clear example of what a derived class must implement and do.
Definition at line 174 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::ConstPointer = SmartPointer<const Self> |
Definition at line 190 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::CoordinateRepresentationType = typename Superclass::CoordinateRepresentationType |
Type used for representing parameter values
Definition at line 201 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::DefaultFixedImageGradientCalculator = typename MetricTraits::DefaultFixedImageGradientCalculator |
Default image gradient calculator types
Definition at line 348 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::DefaultFixedImageGradientFilter = typename MetricTraits::DefaultFixedImageGradientFilter |
Default image gradient filter types
Definition at line 336 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::DefaultMovingImageGradientCalculator = typename MetricTraits::DefaultMovingImageGradientCalculator |
Definition at line 349 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::DefaultMovingImageGradientFilter = typename MetricTraits::DefaultMovingImageGradientFilter |
Definition at line 337 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::DerivativeType = typename Superclass::DerivativeType |
Type of the metric derivative.
Definition at line 355 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::DerivativeValueType = typename DerivativeType::ValueType |
Definition at line 356 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::DimensionType = typename Superclass::DimensionType |
Dimension type
Definition at line 211 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::FixedGradientPixelType = typename MetricTraits::FixedGradientPixelType |
Definition at line 319 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::FixedImageComponentGradientType = CovariantVector<typename FixedImageGradientType::ValueType, FixedImageDimension> |
Definition at line 302 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::FixedImageConstPointer = typename FixedImageType::ConstPointer |
Definition at line 238 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::FixedImageGradientCalculatorPointer = typename FixedImageGradientCalculatorType::Pointer |
Definition at line 344 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::FixedImageGradientCalculatorType = typename MetricTraits::FixedImageGradientCalculatorType |
Image gradient calculator types. The TOutput template parameter is chosen to match that of CentralDiffererenceImageFunction.
Definition at line 341 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::FixedImageGradientFilterPointer = typename FixedImageGradientFilterType::Pointer |
Definition at line 331 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::FixedImageGradientFilterType = typename MetricTraits::FixedImageGradientFilterType |
Definition at line 328 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::FixedImageGradientImagePointer = typename FixedImageGradientImageType::Pointer |
Definition at line 325 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::FixedImageGradientImageType = typename MetricTraits::FixedImageGradientImageType |
Definition at line 322 of file itkImageToImageMetricv4.h.
|
protected |
Only floating-point images are currently supported. To support integer images, several small changes must be made
Definition at line 635 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::FixedImageGradientType = typename MetricTraits::FixedImageGradientType |
Image derivatives types
Definition at line 297 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::FixedImageIndexType = typename FixedImageType::IndexType |
Definition at line 240 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::FixedImageMaskConstPointer = typename FixedImageMaskType::ConstPointer |
Definition at line 277 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::FixedImageMaskPointer = typename FixedImageMaskType::Pointer |
Definition at line 276 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::FixedImageMaskType = SpatialObject<Self::FixedImageDimension> |
Type for the mask of the fixed image. Only pixels that are "inside" this mask will be considered for the computation of the metric
Definition at line 275 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::FixedImagePixelType = typename FixedImageType::PixelType |
Definition at line 235 of file itkImageToImageMetricv4.h.
|
private |
Only floating-point images are currently supported. To support integer images, several small changes must be made
Definition at line 859 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::FixedImagePointer = typename FixedImageType::Pointer |
Definition at line 237 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::FixedImagePointType = typename FixedImageType::PointType |
Definition at line 239 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::FixedImageType = TFixedImage |
Image-accessor type alias
Definition at line 234 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::FixedInputPointType = typename Superclass::FixedInputPointType |
Definition at line 217 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::FixedInterpolatorPointer = typename FixedInterpolatorType::Pointer |
Definition at line 293 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::FixedInterpolatorType = InterpolateImageFunction<FixedImageType, CoordinateRepresentationType> |
Type of the Interpolator Base class
Definition at line 291 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::FixedOutputPointType = typename Superclass::FixedOutputPointType |
Definition at line 218 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::FixedPixelType = FixedImagePixelType |
Definition at line 236 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::FixedRealType = typename MetricTraits::FixedRealType |
Type of the filter used to calculate the gradients. Note that RealType is always double (or long double for long double pixel-type).
Definition at line 313 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::FixedSampledPointSetConstPointer = typename FixedSampledPointSetType::ConstPointer |
Definition at line 288 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::FixedSampledPointSetPointer = typename FixedSampledPointSetType::Pointer |
Definition at line 287 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::FixedSampledPointSetType = PointSet<typename FixedImageType::PixelType, Self::FixedImageDimension> |
Type of the point set used for sparse sampling.
Definition at line 286 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::FixedScalarRealType = typename NumericTraits<FixedRealType>::ScalarRealType |
Definition at line 316 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::FixedTransformJacobianType = typename Superclass::FixedTransformJacobianType |
Definition at line 228 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::FixedTransformParametersType = typename Superclass::FixedTransformParametersType |
Definition at line 219 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::FixedTransformPointer = typename Superclass::FixedTransformPointer |
Definition at line 216 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::FixedTransformType = typename Superclass::FixedTransformType |
Transform types from Superclass
Definition at line 215 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::GradientSourceEnum = typename Superclass::GradientSourceEnum |
Gradient source type
Definition at line 208 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::ImageDimensionType = typename Superclass::DimensionType |
Definition at line 212 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::InternalComputationValueType = TInternalComputationValueType |
Type used internally for computations It should be possible to derive the internal computation type from the class object.
Definition at line 198 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::JacobianType = typename Superclass::JacobianType |
Definition at line 227 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::MeasureType = typename Superclass::MeasureType |
Type of the measure.
Definition at line 352 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::MetricCategoryType = typename Superclass::MetricCategoryType |
Only floating-point images are currently supported. To support integer images, several small changes must be made
Definition at line 623 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::MetricTraits = TMetricTraits |
Typedef for traits class
Definition at line 266 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::MovingGradientPixelType = typename MetricTraits::MovingGradientPixelType |
Definition at line 320 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::MovingImageComponentGradientType = CovariantVector<typename MovingImageGradientType::ValueType, MovingImageDimension> |
Definition at line 305 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::MovingImageConstPointer = typename MovingImageType::ConstPointer |
Definition at line 245 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::MovingImageGradientCalculatorPointer = typename MovingImageGradientCalculatorType::Pointer |
Definition at line 345 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::MovingImageGradientCalculatorType = typename MetricTraits::MovingImageGradientCalculatorType |
Definition at line 342 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::MovingImageGradientFilterPointer = typename MovingImageGradientFilterType::Pointer |
Definition at line 332 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::MovingImageGradientFilterType = typename MetricTraits::MovingImageGradientFilterType |
Definition at line 329 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::MovingImageGradientImagePointer = typename MovingImageGradientImageType::Pointer |
Definition at line 326 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::MovingImageGradientImageType = typename MetricTraits::MovingImageGradientImageType |
Definition at line 323 of file itkImageToImageMetricv4.h.
|
protected |
Only floating-point images are currently supported. To support integer images, several small changes must be made
Definition at line 637 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::MovingImageGradientType = typename MetricTraits::MovingImageGradientType |
Definition at line 298 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::MovingImageIndexType = typename MovingImageType::IndexType |
Definition at line 248 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::MovingImageMaskConstPointer = typename MovingImageMaskType::ConstPointer |
Definition at line 283 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::MovingImageMaskPointer = typename MovingImageMaskType::Pointer |
Definition at line 282 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::MovingImageMaskType = SpatialObject<Self::MovingImageDimension> |
Type for the mask of the moving image. Only pixels that are "inside" this mask will be considered for the computation of the metric
Definition at line 281 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::MovingImagePixelType = typename MovingImageType::PixelType |
Definition at line 242 of file itkImageToImageMetricv4.h.
|
private |
Only floating-point images are currently supported. To support integer images, several small changes must be made
Definition at line 860 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::MovingImagePointer = typename MovingImageType::Pointer |
Definition at line 244 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::MovingImagePointType = typename MovingImageType::PointType |
Definition at line 246 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::MovingImageRegionType = typename MovingImageType::RegionType |
Definition at line 247 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::MovingImageType = TMovingImage |
Definition at line 241 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::MovingInputPointType = typename Superclass::MovingInputPointType |
Definition at line 223 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::MovingInterpolatorPointer = typename MovingInterpolatorType::Pointer |
Definition at line 294 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::MovingInterpolatorType = InterpolateImageFunction<MovingImageType, CoordinateRepresentationType> |
Definition at line 292 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::MovingOutputPointType = typename Superclass::MovingOutputPointType |
Definition at line 224 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::MovingPixelType = MovingImagePixelType |
Definition at line 243 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::MovingRealType = typename MetricTraits::MovingRealType |
Definition at line 314 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::MovingScalarRealType = typename NumericTraits<MovingRealType>::ScalarRealType |
Definition at line 317 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::MovingTransformJacobianType = typename Superclass::MovingTransformJacobianType |
Definition at line 229 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::MovingTransformParametersType = typename Superclass::MovingTransformParametersType |
Definition at line 225 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::MovingTransformPointer = typename Superclass::MovingTransformPointer |
Definition at line 222 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::MovingTransformType = typename Superclass::MovingTransformType |
Definition at line 221 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::NumberOfParametersType = typename Superclass::NumberOfParametersType |
Type to represent the number of parameters that are being optimized at any given iteration of the optimizer.
Definition at line 360 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::ObjectType = typename Superclass::ObjectType |
Definition at line 231 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::ParametersType = typename Superclass::ParametersType |
Type of the parameters.
Definition at line 204 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::ParametersValueType = typename Superclass::ParametersValueType |
Definition at line 205 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::Pointer = SmartPointer<Self> |
Definition at line 189 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::Self = ImageToImageMetricv4 |
Standard class type aliases.
Definition at line 184 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::Superclass = ObjectToObjectMetric<TFixedImage::ImageDimension, TMovingImage::ImageDimension, TVirtualImage, TInternalComputationValueType> |
Definition at line 188 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::VirtualDirectionType = typename Superclass::VirtualDirectionType |
Definition at line 259 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::VirtualImageComponentGradientType = CovariantVector<typename VirtualImageGradientType::ValueType, VirtualImageDimension> |
Definition at line 308 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::VirtualImageGradientType = typename MetricTraits::VirtualImageGradientType |
Definition at line 299 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::VirtualImagePointer = typename Superclass::VirtualImagePointer |
Definition at line 252 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::VirtualImageType = typename Superclass::VirtualImageType |
Types for the virtual domain
Definition at line 251 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::VirtualIndexType = typename Superclass::VirtualIndexType |
Definition at line 261 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::VirtualOriginType = typename Superclass::VirtualPointType |
Definition at line 257 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::VirtualPixelType = typename Superclass::VirtualPixelType |
Definition at line 253 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::VirtualPointSetPointer = typename Superclass::VirtualPointSetPointer |
Definition at line 263 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::VirtualPointSetType = typename Superclass::VirtualPointSetType |
Definition at line 262 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::VirtualPointType = typename Superclass::VirtualPointType |
Definition at line 258 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::VirtualRadiusType = typename Superclass::VirtualSizeType |
Definition at line 260 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::VirtualRegionType = typename Superclass::VirtualRegionType |
Definition at line 254 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::VirtualSizeType = typename Superclass::VirtualSizeType |
Definition at line 255 of file itkImageToImageMetricv4.h.
using itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::VirtualSpacingType = typename Superclass::VirtualSpacingType |
Definition at line 256 of file itkImageToImageMetricv4.h.
|
protected |
Only floating-point images are currently supported. To support integer images, several small changes must be made
|
overrideprotecteddefault |
Only floating-point images are currently supported. To support integer images, several small changes must be made
|
protectedvirtual |
Compute image derivatives for a Fixed point.
|
protectedvirtual |
Computes the gradients of the fixed image, using the GradientFilter, assigning the output to to m_FixedImageGradientImage.
|
protectedvirtual |
Compute image derivatives for a moving point.
|
protectedvirtual |
Computes the gradients of the moving image, using the GradientFilter, assigning the output to to m_MovingImageGradientImage.
|
inlinevirtual |
Finalize the per-thread components for computing metric. Some threads can accumulate their data as the thread finishes rather than waiting for all threads to finish before the accumulation occurs.
Reimplemented in itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >.
Definition at line 537 of file itkImageToImageMetricv4.h.
|
protectedvirtual |
Get accessor for flag to calculate derivative.
|
overridevirtual |
Only floating-point images are currently supported. To support integer images, several small changes must be made
Implements itk::ObjectToObjectMetricBaseTemplate< TInternalComputationValueType >.
|
virtual |
Only floating-point images are currently supported. To support integer images, several small changes must be made
|
virtual |
Only floating-point images are currently supported. To support integer images, several small changes must be made
|
virtual |
Only floating-point images are currently supported. To support integer images, several small changes must be made
|
virtual |
Only floating-point images are currently supported. To support integer images, several small changes must be made
|
virtual |
Only floating-point images are currently supported. To support integer images, several small changes must be made
|
virtual |
Only floating-point images are currently supported. To support integer images, several small changes must be made
|
virtual |
Only floating-point images are currently supported. To support integer images, several small changes must be made
|
virtual |
Only floating-point images are currently supported. To support integer images, several small changes must be made
|
virtual |
Only floating-point images are currently supported. To support integer images, several small changes must be made
|
inlineoverridevirtual |
Get metric category
Reimplemented from itk::ObjectToObjectMetricBaseTemplate< TInternalComputationValueType >.
Definition at line 627 of file itkImageToImageMetricv4.h.
|
virtual |
Only floating-point images are currently supported. To support integer images, several small changes must be made
|
virtual |
Only floating-point images are currently supported. To support integer images, several small changes must be made
|
virtual |
Get Fixed Gradient Image.
|
virtual |
Get a pointer to the fixed interpolator.
|
virtual |
Only floating-point images are currently supported. To support integer images, several small changes must be made
|
virtual |
Only floating-point images are currently supported. To support integer images, several small changes must be made
|
virtual |
Get Moving Gradient Image.
|
virtual |
Get a pointer to the Moving interpolator.
|
virtual |
Only floating-point images are currently supported. To support integer images, several small changes must be made
|
virtual |
Only floating-point images are currently supported. To support integer images, several small changes must be made
|
virtual |
Only floating-point images are currently supported. To support integer images, several small changes must be made
|
virtual |
Only floating-point images are currently supported. To support integer images, several small changes must be made
|
virtual |
Only floating-point images are currently supported. To support integer images, several small changes must be made
|
virtual |
Only floating-point images are currently supported. To support integer images, several small changes must be made
|
virtual |
Run-time type information (and related methods).
Reimplemented from itk::ObjectToObjectMetric< TFixedImage::ImageDimension, TMovingImage::ImageDimension, TVirtualImage, TInternalComputationValueType >.
Reimplemented in itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >, itk::ANTSNeighborhoodCorrelationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >, itk::CorrelationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >, itk::DemonsImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >, itk::JointHistogramMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >, and itk::MeanSquaresImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >.
SizeValueType itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::GetNumberOfDomainPoints | ( | ) | const |
Get the number of points in the domain used to evaluate the metric. This will differ depending on whether a sampled point set or dense sampling is used, and will be greater than or equal to GetNumberOfValidPoints().
|
virtual |
Get the number of sampled fixed sampled points that are deemed invalid during conversion to virtual domain in Initialize(). For informational purposes.
|
inlineoverridevirtual |
Get number of valid points from most recent update
Reimplemented from itk::ObjectToObjectMetric< TFixedImage::ImageDimension, TMovingImage::ImageDimension, TVirtualImage, TInternalComputationValueType >.
Definition at line 549 of file itkImageToImageMetricv4.h.
|
virtual |
Get number of work units to used in the the most recent evaluation. Only valid after GetValueAndDerivative() or GetValue() has been called.
|
virtual |
Only floating-point images are currently supported. To support integer images, several small changes must be made
|
virtual |
Only floating-point images are currently supported. To support integer images, several small changes must be made
|
virtual |
Only floating-point images are currently supported. To support integer images, several small changes must be made
|
virtual |
Only floating-point images are currently supported. To support integer images, several small changes must be made
|
virtual |
Only floating-point images are currently supported. To support integer images, several small changes must be made
|
overridevirtual |
Only floating-point images are currently supported. To support integer images, several small changes must be made
Implements itk::ObjectToObjectMetricBaseTemplate< TInternalComputationValueType >.
Reimplemented in itk::JointHistogramMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >.
|
overridevirtual |
Calculate and return both the value for the metric and its derivative. This calls the SparseGetValueAndDerivativeThreader if UsedFixedSampledPointSet
is true, and DenseGetValueAndDerivativeThreader otherwise. The threaders in turn call ProcessPoint
on each point in the domain to be examined.
Implements itk::ObjectToObjectMetricBaseTemplate< TInternalComputationValueType >.
|
protectedvirtual |
Perform the actual threaded processing, using the appropriate GetValueAndDerivativeThreader. Results get written to member vars. This is available as a separate method so it can be used by derived classes that implement their own GetValueAndDerivative, and/or need to run the processing loop more than once.
|
virtual |
Only floating-point images are currently supported. To support integer images, several small changes must be made
|
overridevirtual |
Only floating-point images are currently supported. To support integer images, several small changes must be made
Implements itk::ObjectToObjectMetricBaseTemplate< TInternalComputationValueType >.
Reimplemented in itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >, and itk::JointHistogramMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >.
|
protectedvirtual |
Initialize the default image gradient filters. This must only be called once the fixed and moving images have been set.
|
protectedvirtual |
Only floating-point images are currently supported. To support integer images, several small changes must be made
|
protectedvirtual |
Perform any initialization required before each evaluation of GetValueAndDerivative
. This is distinct from Initialize, which is called only once before a number of iterations, e.g. before a registration loop.
Reimplemented in itk::JointHistogramMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >, and itk::CorrelationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >.
|
inlineprivate |
Only floating-point images are currently supported. To support integer images, several small changes must be made
Definition at line 827 of file itkImageToImageMetricv4.h.
|
inlineprivate |
Only floating-point images are currently supported. To support integer images, several small changes must be made
Definition at line 803 of file itkImageToImageMetricv4.h.
|
inlineprivate |
Only floating-point images are currently supported. To support integer images, several small changes must be made
Definition at line 816 of file itkImageToImageMetricv4.h.
|
inlineprivate |
Transform a point. Avoid cast if possible
Definition at line 795 of file itkImageToImageMetricv4.h.
|
private |
Map the fixed point set samples to the virtual domain
|
overrideprotectedvirtual |
Only floating-point images are currently supported. To support integer images, several small changes must be made
Reimplemented from itk::ObjectToObjectMetricBaseTemplate< TInternalComputationValueType >.
Reimplemented in itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >, itk::JointHistogramMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >, and itk::MeanSquaresImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >.
|
virtual |
Only floating-point images are currently supported. To support integer images, several small changes must be made
|
virtual |
Set/Get gradient calculators
|
virtual |
Set/Get the gradient filter
|
virtual |
Only floating-point images are currently supported. To support integer images, several small changes must be made
|
virtual |
Set/Get the fixed image mask.
|
virtual |
Connect the fixed interpolator.
|
inlineoverridevirtual |
Set fixed image
Reimplemented from itk::ObjectToObjectMetricBaseTemplate< TInternalComputationValueType >.
Definition at line 364 of file itkImageToImageMetricv4.h.
|
virtual |
Only floating-point images are currently supported. To support integer images, several small changes must be made
|
virtual |
Set/Get the fixed image domain sampling point set See main documentation regarding using fixed vs virtual domain for the point set.
|
virtual |
Set/Get the floating point resolution used optionally by the derivatives. If this is set, for example to 1e5, then the derivative will have precision up to 5 points beyond the decimal point. And precision beyond that will be truncated.
|
virtual |
Set number of work units to use. This the maximum number of work units to use when multithreaded. The actual number of work units used (may be less than this value) can be obtained with GetNumberOfWorkUnitsUsed
.
|
virtual |
Get/Set the Moving Image.
|
virtual |
Only floating-point images are currently supported. To support integer images, several small changes must be made
|
virtual |
Only floating-point images are currently supported. To support integer images, several small changes must be made
|
virtual |
Only floating-point images are currently supported. To support integer images, several small changes must be made
|
virtual |
Set/Get the moving image mask.
|
virtual |
Connect the Moving interpolator.
|
inlineoverridevirtual |
Set moving image
Reimplemented from itk::ObjectToObjectMetricBaseTemplate< TInternalComputationValueType >.
Definition at line 380 of file itkImageToImageMetricv4.h.
|
virtual |
Set/Get gradient computation via an image filter, for fixed image.
|
virtual |
Set/Get the option for applying floating point resolution truncation to derivative calculations in global support cases. False by default. It is only applied in global support cases (i.e. with global-support transforms) because in these cases, the per-point derivative values are added cumulatively, which can lead to loss of precision when the sum becomes much larger than the values being added. The goal is more consistent results across the number of threads used for an evaluation. The resolution can be changed using SetFloatingPointCorrectionResolution().
|
virtual |
Set/Get gradient computation via an image filter.
|
virtual |
Set/Get flag to use a domain sampling point set
|
virtual |
Set/Get flag to indicate of the VirtualSampledPointSet is set over the FixedSampledPointSet
|
virtual |
Set/Get the virtual image domain sampling point set
|
inlineoverridevirtual |
Only floating-point images are currently supported. To support integer images, several small changes must be made
Definition at line 618 of file itkImageToImageMetricv4.h.
|
protected |
Transform a point from VirtualImage domain to FixedImage domain and evaluate. This function also checks if mapped point is within the mask if one is set, and that is within the fixed image buffer, in which case the return value will be true. Parameters mappedFixedPoint
and mappedFixedPixelValue
are returned.
|
protected |
Transform and evaluate a point from VirtualImage domain to MovingImage domain.
|
virtual |
Only floating-point images are currently supported. To support integer images, several small changes must be made
|
virtual |
Only floating-point images are currently supported. To support integer images, several small changes must be made
|
virtual |
Only floating-point images are currently supported. To support integer images, several small changes must be made
|
virtual |
Only floating-point images are currently supported. To support integer images, several small changes must be made
|
virtual |
Only floating-point images are currently supported. To support integer images, several small changes must be made
|
virtual |
Only floating-point images are currently supported. To support integer images, several small changes must be made
|
virtual |
Only floating-point images are currently supported. To support integer images, several small changes must be made
|
virtual |
Only floating-point images are currently supported. To support integer images, several small changes must be made
|
virtual |
Only floating-point images are currently supported. To support integer images, several small changes must be made
|
virtual |
Only floating-point images are currently supported. To support integer images, several small changes must be made
|
friend |
Only floating-point images are currently supported. To support integer images, several small changes must be made
Definition at line 644 of file itkImageToImageMetricv4.h.
|
friend |
Only floating-point images are currently supported. To support integer images, several small changes must be made
Definition at line 645 of file itkImageToImageMetricv4.h.
|
friend |
Only floating-point images are currently supported. To support integer images, several small changes must be made
Definition at line 641 of file itkImageToImageMetricv4.h.
|
friend |
Only floating-point images are currently supported. To support integer images, several small changes must be made
Definition at line 642 of file itkImageToImageMetricv4.h.
|
staticconstexpr |
Definition at line 269 of file itkImageToImageMetricv4.h.
|
mutableprivate |
Flag to know if derivative should be calculated
Definition at line 854 of file itkImageToImageMetricv4.h.
|
protected |
Pointer to default gradient calculators. Used for easier initialization of the default filter.
Definition at line 748 of file itkImageToImageMetricv4.h.
|
protected |
Pointer to default gradient filter. Used for easier initialization of the default filter.
Definition at line 743 of file itkImageToImageMetricv4.h.
|
protected |
Only floating-point images are currently supported. To support integer images, several small changes must be made
Definition at line 749 of file itkImageToImageMetricv4.h.
|
protected |
Only floating-point images are currently supported. To support integer images, several small changes must be made
Definition at line 744 of file itkImageToImageMetricv4.h.
|
protected |
Only floating-point images are currently supported. To support integer images, several small changes must be made
Definition at line 651 of file itkImageToImageMetricv4.h.
|
mutableprotected |
Derivative results holder. Uses a raw pointer so we can point it to a user-provided object. This is used in internal methods so the user-provided variable does not have to be passed around. It also enables safely sharing a derivative object between metrics during multi-variate analysis, for memory efficiency. Will be nullptr if not set.
Definition at line 765 of file itkImageToImageMetricv4.h.
|
protected |
Only floating-point images are currently supported. To support integer images, several small changes must be made
Definition at line 721 of file itkImageToImageMetricv4.h.
|
protected |
Image gradient calculators
Definition at line 756 of file itkImageToImageMetricv4.h.
|
protected |
Gradient filters
Definition at line 738 of file itkImageToImageMetricv4.h.
|
mutableprotected |
Gradient images to store gradient filter output.
Definition at line 752 of file itkImageToImageMetricv4.h.
|
protected |
Only floating-point images are currently supported. To support integer images, several small changes must be made
Definition at line 729 of file itkImageToImageMetricv4.h.
|
protected |
Masks
Definition at line 768 of file itkImageToImageMetricv4.h.
|
protected |
Pointers to interpolators
Definition at line 727 of file itkImageToImageMetricv4.h.
|
protected |
Sampled point sets
Definition at line 772 of file itkImageToImageMetricv4.h.
|
private |
Only floating-point images are currently supported. To support integer images, several small changes must be made
Definition at line 849 of file itkImageToImageMetricv4.h.
|
mutableprivate |
Flag for warning about use of GetValue. Will be removed when GetValue implementation is improved.
Definition at line 841 of file itkImageToImageMetricv4.h.
|
private |
Only floating-point images are currently supported. To support integer images, several small changes must be made
Definition at line 851 of file itkImageToImageMetricv4.h.
|
protected |
Only floating-point images are currently supported. To support integer images, several small changes must be made
Definition at line 724 of file itkImageToImageMetricv4.h.
|
protected |
Only floating-point images are currently supported. To support integer images, several small changes must be made
Definition at line 757 of file itkImageToImageMetricv4.h.
|
protected |
Only floating-point images are currently supported. To support integer images, several small changes must be made
Definition at line 739 of file itkImageToImageMetricv4.h.
|
mutableprotected |
Only floating-point images are currently supported. To support integer images, several small changes must be made
Definition at line 753 of file itkImageToImageMetricv4.h.
|
protected |
Only floating-point images are currently supported. To support integer images, several small changes must be made
Definition at line 730 of file itkImageToImageMetricv4.h.
|
protected |
Only floating-point images are currently supported. To support integer images, several small changes must be made
Definition at line 769 of file itkImageToImageMetricv4.h.
|
protected |
Only floating-point images are currently supported. To support integer images, several small changes must be made
Definition at line 728 of file itkImageToImageMetricv4.h.
|
private |
Keep track of the number of sampled fixed points that are deemed invalid during conversion to virtual domain. For informational purposes.
Definition at line 846 of file itkImageToImageMetricv4.h.
|
protected |
Only floating-point images are currently supported. To support integer images, several small changes must be made
Definition at line 656 of file itkImageToImageMetricv4.h.
|
protected |
Flag to control use of precomputed gradient filter image or gradient calculator for image gradient calculations.
Definition at line 734 of file itkImageToImageMetricv4.h.
|
private |
Only floating-point images are currently supported. To support integer images, several small changes must be made
Definition at line 848 of file itkImageToImageMetricv4.h.
|
protected |
Only floating-point images are currently supported. To support integer images, several small changes must be made
Definition at line 735 of file itkImageToImageMetricv4.h.
|
protected |
Flag to use a SampledPointSet, i.e. Sparse sampling.
Definition at line 776 of file itkImageToImageMetricv4.h.
|
protected |
Flag to indicate the user set VirtualSampledPointSet over FixedSampledPointSet
Definition at line 780 of file itkImageToImageMetricv4.h.
|
protected |
Only floating-point images are currently supported. To support integer images, several small changes must be made
Definition at line 773 of file itkImageToImageMetricv4.h.
|
staticconstexpr |
Definition at line 270 of file itkImageToImageMetricv4.h.
|
staticconstexpr |
Definition at line 271 of file itkImageToImageMetricv4.h.