ITK
4.1.0
Insight Segmentation and Registration Toolkit
|
#include <itkSingleValuedCostFunctionv4.h>
Public Types | |
typedef SmartPointer< const Self > | ConstPointer |
typedef Array < ParametersValueType > | DerivativeType |
typedef double | MeasureType |
typedef Superclass::ParametersType | ParametersType |
typedef Superclass::ParametersValueType | ParametersValueType |
typedef SmartPointer< Self > | Pointer |
typedef SingleValuedCostFunctionv4 | Self |
typedef CostFunction | Superclass |
Public Member Functions | |
virtual const char * | GetNameOfClass () const |
virtual MeasureType | GetValue () const =0 |
virtual void | GetValueAndDerivative (MeasureType &value, DerivativeType &derivative) const =0 |
Protected Member Functions | |
SingleValuedCostFunctionv4 () | |
virtual | ~SingleValuedCostFunctionv4 () |
Private Member Functions | |
void | operator= (const Self &) |
SingleValuedCostFunctionv4 (const Self &) |
This class is a base for a CostFunction that returns a single value.
This class differs from the SingleValuedCostFunction in that it is fine tunned for managing very large numbers of parameters. For example, to be used in conditions where the number of parameters is in the range of thousands or even millions. Due to the large number of parameters, the API of this class avoids any copying of the parameters array, and of the classes that have dimensionality related to the size of the parameters array.
As you look at the code of this class, keep in mind that the types ParametersType and DerivativeType will be some sort of array-like type with millions of elements.
Derived classes must provide implementations for: GetValue GetValueAndDerivative
Definition at line 48 of file itkSingleValuedCostFunctionv4.h.
typedef SmartPointer< const Self > itk::SingleValuedCostFunctionv4::ConstPointer |
Reimplemented from itk::CostFunction.
Reimplemented in itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >, itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >, itk::ANTSNeighborhoodCorrelationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >, itk::CorrelationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >, itk::JensenHavrdaCharvatTsallisPointSetToPointSetMetricv4< TPointSet >, itk::ObjectToObjectMetric, itk::JointHistogramMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >, itk::ExpectationBasedPointSetToPointSetMetricv4< TFixedPointSet, TMovingPointSet >, itk::PointSetToPointSetMetricv4< TFixedPointSet, TMovingPointSet >, itk::PointSetToPointSetMetricv4< TPointSet, TPointSet >, itk::EuclideanDistancePointSetToPointSetMetricv4< TFixedPointSet, TMovingPointSet >, and itk::MeanSquaresImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >.
Definition at line 56 of file itkSingleValuedCostFunctionv4.h.
DerivativeType typedef. It defines a type used to return the cost function derivative.
Reimplemented in itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >, itk::PointSetToPointSetMetricv4< TFixedPointSet, TMovingPointSet >, itk::PointSetToPointSetMetricv4< TPointSet, TPointSet >, itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >, itk::ANTSNeighborhoodCorrelationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >, itk::CorrelationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >, itk::JensenHavrdaCharvatTsallisPointSetToPointSetMetricv4< TPointSet >, itk::JointHistogramMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >, itk::ObjectToObjectMetric, itk::ExpectationBasedPointSetToPointSetMetricv4< TFixedPointSet, TMovingPointSet >, itk::EuclideanDistancePointSetToPointSetMetricv4< TFixedPointSet, TMovingPointSet >, and itk::MeanSquaresImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >.
Definition at line 72 of file itkSingleValuedCostFunctionv4.h.
typedef double itk::SingleValuedCostFunctionv4::MeasureType |
MeasureType typedef. It defines a type used to return the cost function value.
Reimplemented in itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >, itk::PointSetToPointSetMetricv4< TFixedPointSet, TMovingPointSet >, itk::PointSetToPointSetMetricv4< TPointSet, TPointSet >, itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >, itk::ANTSNeighborhoodCorrelationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >, itk::CorrelationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >, itk::JensenHavrdaCharvatTsallisPointSetToPointSetMetricv4< TPointSet >, itk::JointHistogramMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >, itk::ObjectToObjectMetric, itk::ExpectationBasedPointSetToPointSetMetricv4< TFixedPointSet, TMovingPointSet >, itk::EuclideanDistancePointSetToPointSetMetricv4< TFixedPointSet, TMovingPointSet >, and itk::MeanSquaresImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >.
Definition at line 59 of file itkSingleValuedCostFunctionv4.h.
ParametersType typedef. It defines a position in the optimization search space.
Reimplemented from itk::CostFunction.
Reimplemented in itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >, itk::PointSetToPointSetMetricv4< TFixedPointSet, TMovingPointSet >, itk::PointSetToPointSetMetricv4< TPointSet, TPointSet >, itk::ObjectToObjectMetric, and itk::JointHistogramMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >.
Definition at line 67 of file itkSingleValuedCostFunctionv4.h.
ParametersType typedef. It defines a position in the optimization search space.
Reimplemented from itk::CostFunction.
Reimplemented in itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >, itk::ObjectToObjectMetric, and itk::JointHistogramMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >.
Definition at line 68 of file itkSingleValuedCostFunctionv4.h.
Reimplemented from itk::CostFunction.
Reimplemented in itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >, itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >, itk::ANTSNeighborhoodCorrelationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >, itk::CorrelationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >, itk::JensenHavrdaCharvatTsallisPointSetToPointSetMetricv4< TPointSet >, itk::ObjectToObjectMetric, itk::JointHistogramMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >, itk::ExpectationBasedPointSetToPointSetMetricv4< TFixedPointSet, TMovingPointSet >, itk::PointSetToPointSetMetricv4< TFixedPointSet, TMovingPointSet >, itk::PointSetToPointSetMetricv4< TPointSet, TPointSet >, itk::EuclideanDistancePointSetToPointSetMetricv4< TFixedPointSet, TMovingPointSet >, and itk::MeanSquaresImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >.
Definition at line 55 of file itkSingleValuedCostFunctionv4.h.
Standard class typedefs.
Reimplemented from itk::CostFunction.
Reimplemented in itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >, itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >, itk::ANTSNeighborhoodCorrelationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >, itk::CorrelationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >, itk::JensenHavrdaCharvatTsallisPointSetToPointSetMetricv4< TPointSet >, itk::ObjectToObjectMetric, itk::JointHistogramMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >, itk::ExpectationBasedPointSetToPointSetMetricv4< TFixedPointSet, TMovingPointSet >, itk::PointSetToPointSetMetricv4< TFixedPointSet, TMovingPointSet >, itk::PointSetToPointSetMetricv4< TPointSet, TPointSet >, itk::EuclideanDistancePointSetToPointSetMetricv4< TFixedPointSet, TMovingPointSet >, and itk::MeanSquaresImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >.
Definition at line 53 of file itkSingleValuedCostFunctionv4.h.
Reimplemented from itk::CostFunction.
Reimplemented in itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >, itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >, itk::ANTSNeighborhoodCorrelationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >, itk::CorrelationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >, itk::JensenHavrdaCharvatTsallisPointSetToPointSetMetricv4< TPointSet >, itk::ObjectToObjectMetric, itk::JointHistogramMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >, itk::ExpectationBasedPointSetToPointSetMetricv4< TFixedPointSet, TMovingPointSet >, itk::PointSetToPointSetMetricv4< TFixedPointSet, TMovingPointSet >, itk::PointSetToPointSetMetricv4< TPointSet, TPointSet >, itk::EuclideanDistancePointSetToPointSetMetricv4< TFixedPointSet, TMovingPointSet >, and itk::MeanSquaresImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >.
Definition at line 54 of file itkSingleValuedCostFunctionv4.h.
itk::SingleValuedCostFunctionv4::SingleValuedCostFunctionv4 | ( | ) | [inline, protected] |
Definition at line 85 of file itkSingleValuedCostFunctionv4.h.
virtual itk::SingleValuedCostFunctionv4::~SingleValuedCostFunctionv4 | ( | ) | [inline, protected, virtual] |
Definition at line 86 of file itkSingleValuedCostFunctionv4.h.
itk::SingleValuedCostFunctionv4::SingleValuedCostFunctionv4 | ( | const Self & | ) | [private] |
virtual const char* itk::SingleValuedCostFunctionv4::GetNameOfClass | ( | ) | const [virtual] |
Run-time type information (and related methods).
Reimplemented from itk::CostFunction.
Reimplemented in itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >, itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >, itk::ANTSNeighborhoodCorrelationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >, itk::CorrelationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >, itk::JensenHavrdaCharvatTsallisPointSetToPointSetMetricv4< TPointSet >, itk::ObjectToObjectMetric, itk::JointHistogramMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >, itk::ExpectationBasedPointSetToPointSetMetricv4< TFixedPointSet, TMovingPointSet >, itk::EuclideanDistancePointSetToPointSetMetricv4< TFixedPointSet, TMovingPointSet >, itk::PointSetToPointSetMetricv4< TFixedPointSet, TMovingPointSet >, itk::PointSetToPointSetMetricv4< TPointSet, TPointSet >, and itk::MeanSquaresImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >.
virtual MeasureType itk::SingleValuedCostFunctionv4::GetValue | ( | ) | const [pure virtual] |
This method returns the value of the cost function corresponding to the specified parameters.
Implemented in itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >, itk::PointSetToPointSetMetricv4< TFixedPointSet, TMovingPointSet >, itk::PointSetToPointSetMetricv4< TPointSet, TPointSet >, itk::JointHistogramMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >, and itk::JensenHavrdaCharvatTsallisPointSetToPointSetMetricv4< TPointSet >.
virtual void itk::SingleValuedCostFunctionv4::GetValueAndDerivative | ( | MeasureType & | value, |
DerivativeType & | derivative | ||
) | const [pure virtual] |
This method returns the value and derivative of the cost function. derivative
will be sized and allocated as needed by metric. If it's already proper size, no new allocation is done.
void itk::SingleValuedCostFunctionv4::operator= | ( | const Self & | ) | [private] |
Mutex lock to protect modification to the reference count
Reimplemented from itk::CostFunction.
Reimplemented in itk::ImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >, itk::PointSetToPointSetMetricv4< TFixedPointSet, TMovingPointSet >, itk::PointSetToPointSetMetricv4< TPointSet, TPointSet >, itk::MattesMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >, itk::JensenHavrdaCharvatTsallisPointSetToPointSetMetricv4< TPointSet >, itk::ANTSNeighborhoodCorrelationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >, itk::JointHistogramMutualInformationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >, itk::CorrelationImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >, itk::ObjectToObjectMetric, itk::MeanSquaresImageToImageMetricv4< TFixedImage, TMovingImage, TVirtualImage >, itk::EuclideanDistancePointSetToPointSetMetricv4< TFixedPointSet, TMovingPointSet >, and itk::ExpectationBasedPointSetToPointSetMetricv4< TFixedPointSet, TMovingPointSet >.