ITK
4.13.0
Insight Segmentation and Registration Toolkit
|
#include <itkCorrelationImageToImageMetricv4.h>
Class implementing normalized cross correlation image metric.
Definition of the normalized cross correlation metric used here:
negative square of normalized cross correlation
in which, f, m are the vectors of image pixel intensities, and are the mean values of f and m. <,> denotes inner product, denotes the 2-norm of the vector. The minus sign makes the metric to optimize towards its minimal value. Note that this uses the square of the mathematical notion of normalized cross correlation to avoid the square root computation in practice.
Moving image (m) is a function of the parameters (p) of the moving transforms. So GetValueAndDerivative will return the value as and the derivative as
in which, , (Note: there should be a minus sign of mathematically, which is not in the implementation to match the requirement of the metricv4 optimization framework.
See CorrelationImageToImageMetricv4GetValueAndDerivativeThreader::ProcessPoint for algorithm implementation.
This metric only works with the global transform. It throws an exception if the transform has local support.
Definition at line 76 of file itkCorrelationImageToImageMetricv4.h.
Public Types | |
typedef SmartPointer< const Self > | ConstPointer |
typedef Superclass::DerivativeType | DerivativeType |
typedef Superclass::FixedImageGradientType | FixedImageGradientType |
typedef Superclass::FixedImagePixelType | FixedImagePixelType |
typedef Superclass::FixedImagePointType | FixedImagePointType |
typedef Superclass::JacobianType | JacobianType |
typedef Superclass::MeasureType | MeasureType |
typedef Superclass::MovingImageGradientType | MovingImageGradientType |
typedef Superclass::MovingImagePixelType | MovingImagePixelType |
typedef Superclass::MovingImagePointType | MovingImagePointType |
typedef Superclass::MovingTransformType | MovingTransformType |
typedef SmartPointer< Self > | Pointer |
typedef CorrelationImageToImageMetricv4 | Self |
typedef ImageToImageMetricv4 < TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits > | Superclass |
typedef Superclass::VirtualImageType | VirtualImageType |
typedef Superclass::VirtualIndexType | VirtualIndexType |
typedef Superclass::VirtualPointSetType | VirtualPointSetType |
typedef Superclass::VirtualPointType | VirtualPointType |
Public Types inherited from itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits > | |
typedef SmartPointer< const Self > | ConstPointer |
typedef Superclass::CoordinateRepresentationType | CoordinateRepresentationType |
typedef MetricTraits::DefaultFixedImageGradientCalculator | DefaultFixedImageGradientCalculator |
typedef MetricTraits::DefaultFixedImageGradientFilter | DefaultFixedImageGradientFilter |
typedef MetricTraits::DefaultMovingImageGradientCalculator | DefaultMovingImageGradientCalculator |
typedef MetricTraits::DefaultMovingImageGradientFilter | DefaultMovingImageGradientFilter |
typedef Superclass::DerivativeType | DerivativeType |
typedef DerivativeType::ValueType | DerivativeValueType |
typedef Superclass::DimensionType | DimensionType |
typedef MetricTraits::FixedGradientPixelType | FixedGradientPixelType |
typedef CovariantVector < typename FixedImageGradientType::ValueType, FixedImageDimension > | FixedImageComponentGradientType |
typedef FixedImageType::ConstPointer | FixedImageConstPointer |
typedef FixedImageGradientCalculatorType::Pointer | FixedImageGradientCalculatorPointer |
typedef MetricTraits::FixedImageGradientCalculatorType | FixedImageGradientCalculatorType |
typedef FixedImageGradientFilterType::Pointer | FixedImageGradientFilterPointer |
typedef MetricTraits::FixedImageGradientFilterType | FixedImageGradientFilterType |
typedef FixedImageGradientImageType::Pointer | FixedImageGradientImagePointer |
typedef MetricTraits::FixedImageGradientImageType | FixedImageGradientImageType |
typedef MetricTraits::FixedImageGradientType | FixedImageGradientType |
typedef FixedImageType::IndexType | FixedImageIndexType |
typedef FixedImageMaskType::ConstPointer | FixedImageMaskConstPointer |
typedef FixedImageMaskType::Pointer | FixedImageMaskPointer |
typedef SpatialObject < itkGetStaticConstMacro(FixedImageDimension) > | FixedImageMaskType |
typedef FixedImageType::PixelType | FixedImagePixelType |
typedef FixedImageType::Pointer | FixedImagePointer |
typedef FixedImageType::PointType | FixedImagePointType |
typedef TFixedImage | FixedImageType |
typedef Superclass::FixedInputPointType | FixedInputPointType |
typedef FixedInterpolatorType::Pointer | FixedInterpolatorPointer |
typedef InterpolateImageFunction < FixedImageType, CoordinateRepresentationType > | FixedInterpolatorType |
typedef Superclass::FixedOutputPointType | FixedOutputPointType |
typedef FixedImagePixelType | FixedPixelType |
typedef MetricTraits::FixedRealType | FixedRealType |
typedef FixedSampledPointSetType::ConstPointer | FixedSampledPointSetConstPointer |
typedef FixedSampledPointSetType::Pointer | FixedSampledPointSetPointer |
typedef PointSet< typename FixedImageType::PixelType, itkGetStaticConstMacro(FixedImageDimension)> | FixedSampledPointSetType |
typedef NumericTraits < FixedRealType > ::ScalarRealType | FixedScalarRealType |
typedef Superclass::FixedTransformJacobianType | FixedTransformJacobianType |
typedef Superclass::FixedTransformParametersType | FixedTransformParametersType |
typedef Superclass::FixedTransformPointer | FixedTransformPointer |
typedef Superclass::FixedTransformType | FixedTransformType |
typedef Superclass::GradientSourceType | GradientSourceType |
typedef Superclass::DimensionType | ImageDimensionType |
typedef TInternalComputationValueType | InternalComputationValueType |
typedef Superclass::JacobianType | JacobianType |
typedef Superclass::MeasureType | MeasureType |
typedef Superclass::MetricCategoryType | MetricCategoryType |
typedef TMetricTraits | MetricTraits |
typedef MetricTraits::MovingGradientPixelType | MovingGradientPixelType |
typedef CovariantVector < typename MovingImageGradientType::ValueType, MovingImageDimension > | MovingImageComponentGradientType |
typedef MovingImageType::ConstPointer | MovingImageConstPointer |
typedef MovingImageGradientCalculatorType::Pointer | MovingImageGradientCalculatorPointer |
typedef MetricTraits::MovingImageGradientCalculatorType | MovingImageGradientCalculatorType |
typedef MovingImageGradientFilterType::Pointer | MovingImageGradientFilterPointer |
typedef MetricTraits::MovingImageGradientFilterType | MovingImageGradientFilterType |
typedef MovingImageGradientImageType::Pointer | MovingImageGradientImagePointer |
typedef MetricTraits::MovingImageGradientImageType | MovingImageGradientImageType |
typedef MetricTraits::MovingImageGradientType | MovingImageGradientType |
typedef MovingImageType::IndexType | MovingImageIndexType |
typedef MovingImageMaskType::ConstPointer | MovingImageMaskConstPointer |
typedef MovingImageMaskType::Pointer | MovingImageMaskPointer |
typedef SpatialObject < itkGetStaticConstMacro(MovingImageDimension) > | MovingImageMaskType |
typedef MovingImageType::PixelType | MovingImagePixelType |
typedef MovingImageType::Pointer | MovingImagePointer |
typedef MovingImageType::PointType | MovingImagePointType |
typedef MovingImageType::RegionType | MovingImageRegionType |
typedef TMovingImage | MovingImageType |
typedef Superclass::MovingInputPointType | MovingInputPointType |
typedef MovingInterpolatorType::Pointer | MovingInterpolatorPointer |
typedef InterpolateImageFunction < MovingImageType, CoordinateRepresentationType > | MovingInterpolatorType |
typedef Superclass::MovingOutputPointType | MovingOutputPointType |
typedef MovingImagePixelType | MovingPixelType |
typedef MetricTraits::MovingRealType | MovingRealType |
typedef NumericTraits < MovingRealType > ::ScalarRealType | MovingScalarRealType |
typedef Superclass::MovingTransformJacobianType | MovingTransformJacobianType |
typedef Superclass::MovingTransformParametersType | MovingTransformParametersType |
typedef Superclass::MovingTransformPointer | MovingTransformPointer |
typedef Superclass::MovingTransformType | MovingTransformType |
typedef Superclass::NumberOfParametersType | NumberOfParametersType |
typedef Superclass::ObjectType | ObjectType |
typedef Superclass::ParametersType | ParametersType |
typedef Superclass::ParametersValueType | ParametersValueType |
typedef SmartPointer< Self > | Pointer |
typedef ImageToImageMetricv4 | Self |
typedef ObjectToObjectMetric < TFixedImage::ImageDimension, TMovingImage::ImageDimension, TVirtualImage, TInternalComputationValueType > | Superclass |
typedef Superclass::VirtualDirectionType | VirtualDirectionType |
typedef CovariantVector < typename VirtualImageGradientType::ValueType, VirtualImageDimension > | VirtualImageComponentGradientType |
typedef MetricTraits::VirtualImageGradientType | VirtualImageGradientType |
typedef Superclass::VirtualImagePointer | VirtualImagePointer |
typedef Superclass::VirtualImageType | VirtualImageType |
typedef Superclass::VirtualIndexType | VirtualIndexType |
typedef Superclass::VirtualPointType | VirtualOriginType |
typedef Superclass::VirtualPixelType | VirtualPixelType |
typedef Superclass::VirtualPointSetPointer | VirtualPointSetPointer |
typedef Superclass::VirtualPointSetType | VirtualPointSetType |
typedef Superclass::VirtualPointType | VirtualPointType |
typedef Superclass::VirtualSizeType | VirtualRadiusType |
typedef Superclass::VirtualRegionType | VirtualRegionType |
typedef Superclass::VirtualSizeType | VirtualSizeType |
typedef Superclass::VirtualSpacingType | VirtualSpacingType |
Public Types inherited from itk::ObjectToObjectMetric< TFixedImage::ImageDimension, TMovingImage::ImageDimension, TVirtualImage, TInternalComputationValueType > | |
typedef SmartPointer< const Self > | ConstPointer |
typedef TInternalComputationValueType | CoordinateRepresentationType |
typedef Superclass::DerivativeType | DerivativeType |
typedef Superclass::DerivativeValueType | DerivativeValueType |
typedef SizeValueType | DimensionType |
typedef FixedTransformType::InputPointType | FixedInputPointType |
typedef FixedTransformType::OutputPointType | FixedOutputPointType |
typedef FixedTransformType::JacobianType | FixedTransformJacobianType |
typedef FixedTransformType::ParametersType | FixedTransformParametersType |
typedef FixedTransformType::Pointer | FixedTransformPointer |
typedef Transform < TInternalComputationValueType, TVirtualImage::ImageDimension, TFixedDimension > | FixedTransformType |
typedef Superclass::GradientSourceType | GradientSourceType |
typedef TInternalComputationValueType | InternalComputationValueType |
typedef FixedTransformType::JacobianType | JacobianType |
typedef Superclass::MeasureType | MeasureType |
typedef Superclass::MetricCategoryType | MetricCategoryType |
typedef DisplacementFieldTransform < CoordinateRepresentationType, itkGetStaticConstMacro(MovingDimension) > | MovingDisplacementFieldTransformType |
typedef MovingTransformType::InputPointType | MovingInputPointType |
typedef MovingTransformType::OutputPointType | MovingOutputPointType |
typedef MovingTransformType::JacobianType | MovingTransformJacobianType |
typedef MovingTransformType::ParametersType | MovingTransformParametersType |
typedef MovingTransformType::Pointer | MovingTransformPointer |
typedef Transform < TInternalComputationValueType, TVirtualImage::ImageDimension, TMovingDimension > | MovingTransformType |
typedef Superclass::NumberOfParametersType | NumberOfParametersType |
typedef Superclass::Object | ObjectType |
typedef Superclass::ParametersType | ParametersType |
typedef SmartPointer< Self > | Pointer |
typedef ObjectToObjectMetric | Self |
typedef ObjectToObjectMetricBaseTemplate < TInternalComputationValueType > | Superclass |
typedef VirtualImageType::DirectionType | VirtualDirectionType |
typedef VirtualImageType::ConstPointer | VirtualImageConstPointer |
typedef VirtualImageType::Pointer | VirtualImagePointer |
typedef TVirtualImage | VirtualImageType |
typedef VirtualImageType::IndexType | VirtualIndexType |
typedef VirtualImageType::PointType | VirtualOriginType |
typedef VirtualImageType::PixelType | VirtualPixelType |
typedef VirtualPointSetType::Pointer | VirtualPointSetPointer |
typedef PointSet < VirtualPixelType, itkGetStaticConstMacro(VirtualDimension)> | VirtualPointSetType |
typedef VirtualImageType::PointType | VirtualPointType |
typedef VirtualImageType::SizeType | VirtualRadiusType |
typedef VirtualImageType::RegionType | VirtualRegionType |
typedef VirtualRegionType::SizeType | VirtualSizeType |
typedef VirtualImageType::SpacingType | VirtualSpacingType |
Public Types inherited from itk::ObjectToObjectMetricBaseTemplate< TInternalComputationValueType > | |
typedef SmartPointer< const Self > | ConstPointer |
typedef TInternalComputationValueType | CoordinateRepresentationType |
typedef Superclass::DerivativeType | DerivativeType |
typedef DerivativeType::ValueType | DerivativeValueType |
enum | GradientSourceType { GRADIENT_SOURCE_FIXED =0, GRADIENT_SOURCE_MOVING, GRADIENT_SOURCE_BOTH } |
typedef Superclass::MeasureType | MeasureType |
enum | MetricCategoryType { UNKNOWN_METRIC = 0, OBJECT_METRIC = 1, IMAGE_METRIC = 2, POINT_SET_METRIC = 3, MULTI_METRIC = 4 } |
typedef unsigned int | NumberOfParametersType |
typedef ObjectType::ConstPointer | ObjectConstPointer |
typedef Object | ObjectType |
typedef Superclass::ParametersType | ParametersType |
typedef TInternalComputationValueType | ParametersValueType |
typedef SmartPointer< Self > | Pointer |
typedef ObjectToObjectMetricBaseTemplate | Self |
typedef SingleValuedCostFunctionv4Template < TInternalComputationValueType > | Superclass |
Public Types inherited from itk::SingleValuedCostFunctionv4Template< TInternalComputationValueType > | |
typedef SmartPointer< const Self > | ConstPointer |
typedef Array < TInternalComputationValueType > | DerivativeType |
typedef TInternalComputationValueType | MeasureType |
typedef Superclass::ParametersType | ParametersType |
typedef SmartPointer< Self > | Pointer |
typedef SingleValuedCostFunctionv4Template | Self |
typedef CostFunctionTemplate < TInternalComputationValueType > | Superclass |
Public Types inherited from itk::CostFunctionTemplate< TInternalComputationValueType > | |
typedef SmartPointer< const Self > | ConstPointer |
typedef OptimizerParameters < TInternalComputationValueType > | ParametersType |
typedef TInternalComputationValueType | ParametersValueType |
typedef SmartPointer< Self > | Pointer |
typedef CostFunctionTemplate | Self |
typedef Object | Superclass |
Public Types inherited from itk::Object | |
typedef SmartPointer< const Self > | ConstPointer |
typedef SmartPointer< Self > | Pointer |
typedef Object | Self |
typedef LightObject | Superclass |
Public Types inherited from itk::LightObject | |
typedef SmartPointer< const Self > | ConstPointer |
typedef SmartPointer< Self > | Pointer |
typedef LightObject | Self |
Static Public Member Functions | |
static Pointer | New () |
Static Public Member Functions inherited from itk::Object | |
static bool | GetGlobalWarningDisplay () |
static void | GlobalWarningDisplayOff () |
static void | GlobalWarningDisplayOn () |
static Pointer | New () |
static void | SetGlobalWarningDisplay (bool flag) |
Static Public Member Functions inherited from itk::LightObject | |
static void | BreakOnError () |
static Pointer | New () |
typedef SmartPointer<const Self> itk::CorrelationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::ConstPointer |
Definition at line 85 of file itkCorrelationImageToImageMetricv4.h.
|
protected |
Definition at line 135 of file itkCorrelationImageToImageMetricv4.h.
|
protected |
Definition at line 143 of file itkCorrelationImageToImageMetricv4.h.
|
protected |
Definition at line 145 of file itkCorrelationImageToImageMetricv4.h.
|
protected |
Definition at line 137 of file itkCorrelationImageToImageMetricv4.h.
typedef Superclass::DerivativeType itk::CorrelationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::DerivativeType |
Definition at line 95 of file itkCorrelationImageToImageMetricv4.h.
typedef Superclass::FixedImageGradientType itk::CorrelationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::FixedImageGradientType |
Definition at line 99 of file itkCorrelationImageToImageMetricv4.h.
typedef Superclass::FixedImagePixelType itk::CorrelationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::FixedImagePixelType |
Definition at line 98 of file itkCorrelationImageToImageMetricv4.h.
typedef Superclass::FixedImagePointType itk::CorrelationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::FixedImagePointType |
Definition at line 97 of file itkCorrelationImageToImageMetricv4.h.
typedef Superclass::JacobianType itk::CorrelationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::JacobianType |
Definition at line 106 of file itkCorrelationImageToImageMetricv4.h.
typedef Superclass::MeasureType itk::CorrelationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::MeasureType |
Superclass types
Definition at line 91 of file itkCorrelationImageToImageMetricv4.h.
typedef Superclass::MovingImageGradientType itk::CorrelationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::MovingImageGradientType |
Definition at line 103 of file itkCorrelationImageToImageMetricv4.h.
typedef Superclass::MovingImagePixelType itk::CorrelationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::MovingImagePixelType |
Definition at line 102 of file itkCorrelationImageToImageMetricv4.h.
typedef Superclass::MovingImagePointType itk::CorrelationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::MovingImagePointType |
Definition at line 101 of file itkCorrelationImageToImageMetricv4.h.
typedef Superclass::MovingTransformType itk::CorrelationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::MovingTransformType |
Definition at line 105 of file itkCorrelationImageToImageMetricv4.h.
typedef SmartPointer<Self> itk::CorrelationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::Pointer |
Definition at line 84 of file itkCorrelationImageToImageMetricv4.h.
typedef CorrelationImageToImageMetricv4 itk::CorrelationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::Self |
Standard class typedefs.
Definition at line 81 of file itkCorrelationImageToImageMetricv4.h.
typedef ImageToImageMetricv4<TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType,TMetricTraits> itk::CorrelationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::Superclass |
Definition at line 83 of file itkCorrelationImageToImageMetricv4.h.
typedef Superclass::VirtualImageType itk::CorrelationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::VirtualImageType |
Definition at line 107 of file itkCorrelationImageToImageMetricv4.h.
typedef Superclass::VirtualIndexType itk::CorrelationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::VirtualIndexType |
Definition at line 108 of file itkCorrelationImageToImageMetricv4.h.
typedef Superclass::VirtualPointSetType itk::CorrelationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::VirtualPointSetType |
Definition at line 110 of file itkCorrelationImageToImageMetricv4.h.
typedef Superclass::VirtualPointType itk::CorrelationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >::VirtualPointType |
Definition at line 109 of file itkCorrelationImageToImageMetricv4.h.
|
protected |
|
overrideprotectedvirtual |
|
virtual |
Create an object from an instance, potentially deferring to a factory. This method allows you to create an instance of an object that is exactly the same type as the referring object. This is useful in cases where an object has been cast back to a base class.
Reimplemented from itk::Object.
|
virtual |
Run-time type information (and related methods).
Reimplemented from itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >.
|
overrideprotectedvirtual |
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 from itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage, TInternalComputationValueType, TMetricTraits >.
|
static |
Method for creation through the object factory.
|
overrideprotectedvirtual |
Methods invoked by Print() to print information about the object including superclasses. Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes.
Reimplemented from itk::ObjectToObjectMetricBaseTemplate< TInternalComputationValueType >.
|
friend |
Definition at line 132 of file itkCorrelationImageToImageMetricv4.h.
|
friend |
Definition at line 133 of file itkCorrelationImageToImageMetricv4.h.
|
friend |
Definition at line 139 of file itkCorrelationImageToImageMetricv4.h.
|
friend |
Definition at line 140 of file itkCorrelationImageToImageMetricv4.h.
|
friend |
Definition at line 129 of file itkCorrelationImageToImageMetricv4.h.
|
friend |
Definition at line 130 of file itkCorrelationImageToImageMetricv4.h.
|
friend |
Definition at line 127 of file itkCorrelationImageToImageMetricv4.h.
|
friend |
Definition at line 128 of file itkCorrelationImageToImageMetricv4.h.
|
static |
Definition at line 114 of file itkCorrelationImageToImageMetricv4.h.
|
mutableprotected |
Definition at line 153 of file itkCorrelationImageToImageMetricv4.h.
|
mutableprotected |
Definition at line 154 of file itkCorrelationImageToImageMetricv4.h.
|
protected |
Definition at line 147 of file itkCorrelationImageToImageMetricv4.h.
|
protected |
Definition at line 148 of file itkCorrelationImageToImageMetricv4.h.
|
static |
Definition at line 115 of file itkCorrelationImageToImageMetricv4.h.
|
static |
Definition at line 113 of file itkCorrelationImageToImageMetricv4.h.