18 #ifndef itkObjectToObjectMetric_h
19 #define itkObjectToObjectMetric_h
87 template<
unsigned int TFixedDimension,
unsigned int TMovingDimension,
typename TVirtualImage = Image<
double, TFixedDimension>,
88 typename TParametersValueType=
double>
132 static constexpr
DimensionType VirtualDimension = TVirtualImage::ImageDimension;
154 TVirtualImage::ImageDimension,
157 TVirtualImage::ImageDimension,
178 void Initialize()
override;
184 bool HasLocalSupport()
const override;
185 void UpdateTransformParameters(
const DerivativeType & derivative, TParametersValueType factor)
override;
237 virtual
bool SupportsArbitraryVirtualDomainSamples() const = 0;
244 virtual const
TimeStamp& GetVirtualDomainTimeStamp() const;
297 MetricCategoryType GetMetricCategory()
const override
299 return Superclass::OBJECT_METRIC;
306 void PrintSelf(std::ostream & os,
Indent indent)
const override;
310 virtual void VerifyDisplacementFieldSizeAndPhysicalSpace();
312 bool TransformPhysicalPointToVirtualIndex(
const VirtualPointType &, VirtualIndexType & )
const;
313 void TransformVirtualIndexToPhysicalPoint(
const VirtualIndexType &, VirtualPointType & )
const;
319 const MovingDisplacementFieldTransformType * GetMovingDisplacementFieldTransform()
const;
327 bool VerifyNumberOfValidPoints( MeasureType & value, DerivativeType & derivative )
const;
346 #ifndef ITK_MANUAL_INSTANTIATION
347 #include "itkObjectToObjectMetric.hxx"
typename VirtualImageType::ConstPointer VirtualImageConstPointer
typename VirtualImageType::SizeType VirtualRadiusType
Light weight base class for most itk classes.
typename VirtualImageType::RegionType VirtualRegionType
typename FixedTransformType::ParametersType FixedTransformParametersType
typename FixedTransformType::Pointer FixedTransformPointer
typename VirtualPointSetType::Pointer VirtualPointSetPointer
typename VirtualImageType::PixelType VirtualPixelType
unsigned long SizeValueType
typename VirtualImageType::PointType VirtualPointType
typename DerivativeType::ValueType DerivativeValueType
Computes similarity between regions of two objects.
typename FixedTransformType::InputPointType FixedInputPointType
typename FixedTransformType::JacobianType JacobianType
Base class for all object-to-object similarlity metrics added in ITKv4.
TInternalComputationValueType InternalComputationValueType
typename Superclass::MeasureType MeasureType
typename MovingTransformType::OutputPointType MovingOutputPointType
TInternalComputationValueType CoordinateRepresentationType
typename VirtualImageType::PointType VirtualOriginType
Array2D class representing a 2D array with size defined at construction time.
ImageBaseType::SizeType SizeType
ImageBaseType::DirectionType DirectionType
typename FixedTransformType::OutputPointType FixedOutputPointType
ImageBaseType::IndexType IndexType
A superclass of the N-dimensional mesh structure; supports point (geometric coordinate and attribute)...
Generate a unique, increasing time value.
FixedTransformPointer m_FixedTransform
VirtualImagePointer m_VirtualImage
typename Superclass::SpacingType SpacingType
typename FixedTransformType::JacobianType FixedTransformJacobianType
unsigned int NumberOfParametersType
typename VirtualImageType::IndexType VirtualIndexType
typename VirtualImageType::Pointer VirtualImagePointer
typename MovingTransformType::ParametersType MovingTransformParametersType
SizeValueType DimensionType
typename MovingTransformType::Pointer MovingTransformPointer
Control indentation during Print() invocation.
ImageBaseType::PointType PointType
typename VirtualRegionType::SizeType VirtualSizeType
typename Superclass::DerivativeType DerivativeType
typename VirtualImageType::SpacingType VirtualSpacingType
Base class for most ITK classes.
ImageBaseType::RegionType RegionType
MovingTransformPointer m_MovingTransform
A templated class holding a geometric point in n-Dimensional space.
typename VirtualImageType::DirectionType VirtualDirectionType
typename MovingTransformType::InputPointType MovingInputPointType
signed long OffsetValueType
typename MovingTransformType::JacobianType MovingTransformJacobianType
Templated n-dimensional image class.
bool m_UserHasSetVirtualDomain