template<typename TFixedPointSet, typename TMovingPointSet = TFixedPointSet, class TInternalComputationValueType = double>
class itk::LabeledPointSetToPointSetMetricv4< TFixedPointSet, TMovingPointSet, TInternalComputationValueType >
Computes the distance metric and gradient between two labeled point sets.
This class is generic in that it takes an unlabeled point set metric, such as one of the following options
where it is assumed that the point set PixelType
associated with each point is a label (i.e. LabelType
). This class is used to find the total metric and total derivative based on the matching between the separate fixed and moving labeled point sets. This class first determines the common label set between the fixed and moving point sets. For each common label, the specified unlabeled point set metric is cloned and the fixed and moving point subset associated with that common label is specified as the fixed and moving point set input. Functionality in the base class (PointSetToPointSetMetric
) is used to accumulated the value and gradient.
- Author
- Nick Tustison
Definition at line 54 of file itkLabeledPointSetToPointSetMetricv4.h.
|
typedef SmartPointer< const Self > | ConstPointer |
|
typedef Superclass::DerivativeType | DerivativeType |
|
typedef FixedPointSetType::Pointer | FixedPointSetPointer |
|
typedef TFixedPointSet | FixedPointSetType |
|
typedef std::vector< LabelType > | LabelSetType |
|
typedef Superclass::PixelType | LabelType |
|
typedef
Superclass::LocalDerivativeType | LocalDerivativeType |
|
typedef Superclass::MeasureType | MeasureType |
|
typedef MovingPointSetType::Pointer | MovingPointSetPointer |
|
typedef TMovingPointSet | MovingPointSetType |
|
typedef SmartPointer< Self > | Pointer |
|
typedef Superclass::PointIdentifier | PointIdentifier |
|
typedef PointSetMetricType::Pointer | PointSetMetricPointer |
|
typedef Superclass | PointSetMetricType |
|
typedef Superclass::PointType | PointType |
|
typedef
LabeledPointSetToPointSetMetricv4 | Self |
|
typedef
PointSetToPointSetMetricv4
< TFixedPointSet,
TMovingPointSet,
TInternalComputationValueType > | Superclass |
|
typedef SmartPointer< const Self > | ConstPointer |
|
typedef PointType::CoordRepType | CoordRepType |
|
typedef Superclass::DerivativeType | DerivativeType |
|
typedef DerivativeType::ValueType | DerivativeValueType |
|
typedef Superclass::DimensionType | DimensionType |
|
typedef
Superclass::MovingDisplacementFieldTransformType | DisplacementFieldTransformType |
|
typedef
Superclass::FixedInputPointType | FixedInputPointType |
|
typedef
Superclass::FixedOutputPointType | FixedOutputPointType |
|
typedef TFixedPointSet::PixelType | FixedPixelType |
|
typedef
TFixedPointSet::PointsContainer | FixedPointsContainer |
|
typedef TFixedPointSet | FixedPointSetType |
|
typedef TFixedPointSet::PointType | FixedPointType |
|
typedef PointSet
< FixedPixelType,
itkGetStaticConstMacro(PointDimension)> | FixedTransformedPointSetType |
|
typedef
Superclass::FixedTransformJacobianType | FixedTransformJacobianType |
|
typedef
Superclass::FixedTransformParametersType | FixedTransformParametersType |
|
typedef
Superclass::FixedTransformPointer | FixedTransformPointer |
|
typedef
Superclass::FixedTransformType | FixedTransformType |
|
typedef Superclass::JacobianType | JacobianType |
|
typedef FixedArray
< DerivativeValueType,
itkGetStaticConstMacro(PointDimension)> | LocalDerivativeType |
|
typedef Superclass::MeasureType | MeasureType |
|
typedef
Superclass::MovingInputPointType | MovingInputPointType |
|
typedef
Superclass::MovingOutputPointType | MovingOutputPointType |
|
typedef TMovingPointSet::PixelType | MovingPixelType |
|
typedef
TMovingPointSet::PointsContainer | MovingPointsContainer |
|
typedef TMovingPointSet | MovingPointSetType |
|
typedef TMovingPointSet::PointType | MovingPointType |
|
typedef PointSet
< MovingPixelType,
itkGetStaticConstMacro(PointDimension)> | MovingTransformedPointSetType |
|
typedef
Superclass::MovingTransformJacobianType | MovingTransformJacobianType |
|
typedef
Superclass::MovingTransformParametersType | MovingTransformParametersType |
|
typedef
Superclass::MovingTransformPointer | MovingTransformPointer |
|
typedef
Superclass::MovingTransformType | MovingTransformType |
|
typedef
PointsLocatorType::NeighborsIdentifierType | NeighborsIdentifierType |
|
typedef
Superclass::NumberOfParametersType | NumberOfParametersType |
|
typedef Superclass::ObjectType | ObjectType |
|
typedef Superclass::ParametersType | ParametersType |
|
typedef
Superclass::ParametersValueType | ParametersValueType |
|
typedef FixedPixelType | PixelType |
|
typedef SmartPointer< Self > | Pointer |
|
typedef
PointsContainer::ElementIdentifier | PointIdentifier |
|
typedef
PointsContainer::ConstIterator | PointsConstIterator |
|
typedef FixedPointsContainer | PointsContainer |
|
typedef PointsLocator
< PointsContainer > | PointsLocatorType |
|
typedef FixedPointType | PointType |
|
typedef PointSetToPointSetMetricv4 | Self |
|
typedef ObjectToObjectMetric
< TFixedPointSet::PointDimension,
TMovingPointSet::PointDimension,
Image
< TInternalComputationValueType,
TFixedPointSet::PointDimension >
, TInternalComputationValueType > | Superclass |
|
typedef
Superclass::VirtualDirectionType | VirtualDirectionType |
|
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 |
|
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,
Image
< TInternalComputationValueType,
TFixedPointSet::PointDimension >
::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,
Image
< TInternalComputationValueType,
TFixedPointSet::PointDimension >
::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 Image
< TInternalComputationValueType,
TFixedPointSet::PointDimension > | 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 |
|
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 |
|
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 |
|
typedef SmartPointer< const Self > | ConstPointer |
|
typedef OptimizerParameters
< TInternalComputationValueType > | ParametersType |
|
typedef
TInternalComputationValueType | ParametersValueType |
|
typedef SmartPointer< Self > | Pointer |
|
typedef CostFunctionTemplate | Self |
|
typedef Object | Superclass |
|
typedef SmartPointer< const Self > | ConstPointer |
|
typedef SmartPointer< Self > | Pointer |
|
typedef Object | Self |
|
typedef LightObject | Superclass |
|
typedef SmartPointer< const Self > | ConstPointer |
|
typedef SmartPointer< Self > | Pointer |
|
typedef LightObject | Self |
|
|
virtual ::itk::LightObject::Pointer | CreateAnother () const |
|
virtual MeasureType | GetLocalNeighborhoodValue (const PointType &, const LabelType &) const override |
|
virtual void | GetLocalNeighborhoodValueAndDerivative (const PointType &, MeasureType &, LocalDerivativeType &, const LabelType &) const override |
|
virtual const char * | GetNameOfClass () const |
|
virtual void | Initialize (void) override |
|
|
virtual void | SetPointSetMetric (PointSetMetricType *_arg) |
|
virtual PointSetMetricType * | GetModifiablePointSetMetric () |
|
virtual const PointSetMetricType * | GetPointSetMetric () const |
|
virtual void | GetDerivative (DerivativeType &) const override |
|
virtual const
FixedTransformedPointSetType * | GetFixedTransformedPointSet () const |
|
virtual LocalDerivativeType | GetLocalNeighborhoodDerivative (const PointType &, const PixelType &pixel) const |
|
virtual MeasureType | GetLocalNeighborhoodValue (const PointType &, const PixelType &pixel) const =0 |
|
virtual void | GetLocalNeighborhoodValueAndDerivative (const PointType &, MeasureType &, LocalDerivativeType &, const PixelType &pixel) const =0 |
|
virtual
FixedTransformedPointSetType * | GetModifiableFixedTransformedPointSet () |
|
virtual
MovingTransformedPointSetType * | GetModifiableMovingTransformedPointSet () |
|
virtual const
MovingTransformedPointSetType * | GetMovingTransformedPointSet () const |
|
SizeValueType | GetNumberOfComponents () const |
|
virtual MeasureType | GetValue () const override |
|
virtual void | GetValueAndDerivative (MeasureType &, DerivativeType &) const override |
|
const VirtualPointSetType * | GetVirtualTransformedPointSet () const |
|
virtual bool | SupportsArbitraryVirtualDomainSamples (void) const override |
|
virtual void | SetFixedObject (const ObjectType *object) override |
|
virtual void | SetMovingObject (const ObjectType *object) override |
|
virtual void | SetFixedPointSet (const FixedPointSetType *_arg) |
|
virtual const FixedPointSetType * | GetFixedPointSet () const |
|
virtual void | SetMovingPointSet (const MovingPointSetType *_arg) |
|
virtual const MovingPointSetType * | GetMovingPointSet () const |
|
virtual void | SetStoreDerivativeAsSparseFieldForLocalSupportTransforms (bool _arg) |
|
virtual bool | GetStoreDerivativeAsSparseFieldForLocalSupportTransforms () const |
|
virtual void | StoreDerivativeAsSparseFieldForLocalSupportTransformsOn () |
|
virtual void | StoreDerivativeAsSparseFieldForLocalSupportTransformsOff () |
|
virtual void | SetCalculateValueAndDerivativeInTangentSpace (bool _arg) |
|
virtual bool | GetCalculateValueAndDerivativeInTangentSpace () const |
|
virtual void | CalculateValueAndDerivativeInTangentSpaceOn () |
|
virtual void | CalculateValueAndDerivativeInTangentSpaceOff () |
|
OffsetValueType | ComputeParameterOffsetFromVirtualIndex (const VirtualIndexType &index, const NumberOfParametersType &numberOfLocalParameters) const |
|
OffsetValueType | ComputeParameterOffsetFromVirtualPoint (const VirtualPointType &point, const NumberOfParametersType &numberOfLocalParameters) const |
|
virtual const FixedTransformType * | GetFixedTransform () const |
|
virtual FixedTransformType * | GetModifiableFixedTransform () |
|
virtual MovingTransformType * | GetModifiableMovingTransform () |
|
virtual VirtualImageType * | GetModifiableVirtualImage () |
|
virtual const MovingTransformType * | GetMovingTransform () const |
|
virtual NumberOfParametersType | GetNumberOfLocalParameters () const override |
|
virtual NumberOfParametersType | GetNumberOfParameters () const override |
|
virtual SizeValueType | GetNumberOfValidPoints () const |
|
virtual const ParametersType & | GetParameters () const override |
|
const MovingTransformType * | GetTransform () |
|
VirtualDirectionType | GetVirtualDirection () const |
|
virtual const TimeStamp & | GetVirtualDomainTimeStamp () const |
|
virtual const VirtualImageType * | GetVirtualImage () const |
|
VirtualOriginType | GetVirtualOrigin () const |
|
const VirtualRegionType & | GetVirtualRegion () const |
|
VirtualSpacingType | GetVirtualSpacing () const |
|
virtual bool | HasLocalSupport () const override |
|
virtual void | SetFixedTransform (FixedTransformType *_arg) |
|
virtual void | SetMovingTransform (MovingTransformType *_arg) |
|
virtual void | SetParameters (ParametersType ¶ms) override |
|
void | SetTransform (MovingTransformType *transform) |
|
void | SetVirtualDomain (const VirtualSpacingType &spacing, const VirtualOriginType &origin, const VirtualDirectionType &direction, const VirtualRegionType ®ion) |
|
void | SetVirtualDomainFromImage (const VirtualImageType *virtualImage) |
|
virtual void | UpdateTransformParameters (const DerivativeType &derivative, TInternalComputationValueTypefactor) override |
|
bool | IsInsideVirtualDomain (const VirtualPointType &point) const |
|
bool | IsInsideVirtualDomain (const VirtualIndexType &index) const |
|
MeasureType | GetCurrentValue () const |
|
virtual GradientSourceType | GetGradientSource () const |
|
bool | GetGradientSourceIncludesFixed () const |
|
bool | GetGradientSourceIncludesMoving () const |
|
virtual void | GetValueAndDerivative (MeasureType &value, DerivativeType &derivative) const override=0 |
|
virtual void | SetGradientSource (GradientSourceType _arg) |
|
virtual const ObjectType * | GetFixedObject () const |
|
virtual const ObjectType * | GetMovingObject () const |
|
virtual void | GetValueAndDerivative (MeasureType &value, DerivativeType &derivative) const =0 |
|
unsigned long | AddObserver (const EventObject &event, Command *) |
|
unsigned long | AddObserver (const EventObject &event, Command *) const |
|
virtual void | DebugOff () const |
|
virtual void | DebugOn () const |
|
Command * | GetCommand (unsigned long tag) |
|
bool | GetDebug () const |
|
MetaDataDictionary & | GetMetaDataDictionary () |
|
const MetaDataDictionary & | GetMetaDataDictionary () const |
|
virtual ModifiedTimeType | GetMTime () const |
|
virtual const TimeStamp & | GetTimeStamp () const |
|
bool | HasObserver (const EventObject &event) const |
|
void | InvokeEvent (const EventObject &) |
|
void | InvokeEvent (const EventObject &) const |
|
virtual void | Modified () const |
|
virtual void | Register () const override |
|
void | RemoveAllObservers () |
|
void | RemoveObserver (unsigned long tag) |
|
void | SetDebug (bool debugFlag) const |
|
void | SetMetaDataDictionary (const MetaDataDictionary &rhs) |
|
virtual void | SetReferenceCount (int) override |
|
virtual void | UnRegister () const noexceptoverride |
|
virtual void | SetObjectName (std::string _arg) |
|
virtual const std::string & | GetObjectName () const |
|
virtual void | Delete () |
|
virtual int | GetReferenceCount () const |
|
| itkCloneMacro (Self) |
|
void | Print (std::ostream &os, Indent indent=0) const |
|
|
| LabeledPointSetToPointSetMetricv4 () |
|
void | PrintSelf (std::ostream &os, Indent indent) const override |
|
virtual | ~LabeledPointSetToPointSetMetricv4 () override |
|
virtual SizeValueType | CalculateNumberOfValidFixedPoints () const |
|
void | CalculateValueAndDerivative (MeasureType &value, DerivativeType &derivative, bool calculateValue) const |
|
virtual MetricCategoryType | GetMetricCategory () const override |
|
virtual void | InitializeForIteration () const |
|
virtual void | InitializePointSets () const |
|
void | InitializePointsLocators () const |
|
| PointSetToPointSetMetricv4 () |
|
void | PrintSelf (std::ostream &os, Indent indent) const override |
|
void | StorePointDerivative (const VirtualPointType &, const DerivativeType &, DerivativeType &) const |
|
void | TransformFixedAndCreateVirtualPointSet () const |
|
void | TransformMovingPointSet () const |
|
virtual | ~PointSetToPointSetMetricv4 () override |
|
const
MovingDisplacementFieldTransformType * | GetMovingDisplacementFieldTransform () const |
|
| ObjectToObjectMetric () |
|
void | PrintSelf (std::ostream &os, Indent indent) const override |
|
bool | TransformPhysicalPointToVirtualIndex (const VirtualPointType &, VirtualIndexType &) const |
|
void | TransformVirtualIndexToPhysicalPoint (const VirtualIndexType &, VirtualPointType &) const |
|
virtual void | VerifyDisplacementFieldSizeAndPhysicalSpace () |
|
bool | VerifyNumberOfValidPoints (MeasureType &value, DerivativeType &derivative) const |
|
virtual | ~ObjectToObjectMetric () override |
|
| ObjectToObjectMetricBaseTemplate () |
|
virtual | ~ObjectToObjectMetricBaseTemplate () override |
|
| SingleValuedCostFunctionv4Template () |
|
virtual | ~SingleValuedCostFunctionv4Template () override |
|
| CostFunctionTemplate () |
|
virtual | ~CostFunctionTemplate () override |
|
| Object () |
|
bool | PrintObservers (std::ostream &os, Indent indent) const |
|
virtual void | SetTimeStamp (const TimeStamp &time) |
|
virtual | ~Object () override |
|
virtual LightObject::Pointer | InternalClone () const |
|
| LightObject () |
|
virtual void | PrintHeader (std::ostream &os, Indent indent) const |
|
virtual void | PrintTrailer (std::ostream &os, Indent indent) const |
|
virtual | ~LightObject () |
|