![]() |
Orfeo Toolbox
3.16
|
This class is an Adaptor that allows to pass itk::MultipleValuedCostFunctions to vnl_optimizers expecting a vnl_cost_function. More...
#include <itkMultipleValuedVnlCostFunctionAdaptor.h>
Collaboration diagram for itk::MultipleValuedVnlCostFunctionAdaptor:Public Types | |
| typedef MultipleValuedCostFunction::DerivativeType | DerivativeType |
| typedef vnl_matrix< double > | InternalDerivativeType |
| typedef vnl_vector< double > | InternalMeasureType |
| typedef vnl_vector< double > | InternalParametersType |
| typedef MultipleValuedCostFunction::MeasureType | MeasureType |
| typedef MultipleValuedCostFunction::ParametersType | ParametersType |
| typedef Array< double > | ScalesType |
Protected Member Functions | |
| void | ReportIteration (const EventObject &event) const |
This class is an Adaptor that allows to pass itk::MultipleValuedCostFunctions to vnl_optimizers expecting a vnl_cost_function.
This class returns a single valued.
Definition at line 36 of file itkMultipleValuedVnlCostFunctionAdaptor.h.
| typedef MultipleValuedCostFunction::DerivativeType itk::MultipleValuedVnlCostFunctionAdaptor::DerivativeType |
Derivatives of the MultipleValuedCostFunction
Definition at line 57 of file itkMultipleValuedVnlCostFunctionAdaptor.h.
InternalGradientType typedef.
Definition at line 48 of file itkMultipleValuedVnlCostFunctionAdaptor.h.
InternalMeasureType typedef.
Definition at line 45 of file itkMultipleValuedVnlCostFunctionAdaptor.h.
InternalParametersType typedef.
Definition at line 42 of file itkMultipleValuedVnlCostFunctionAdaptor.h.
| typedef MultipleValuedCostFunction::MeasureType itk::MultipleValuedVnlCostFunctionAdaptor::MeasureType |
MeasureType of the MultipleValuedCostFunction
Definition at line 51 of file itkMultipleValuedVnlCostFunctionAdaptor.h.
| typedef MultipleValuedCostFunction::ParametersType itk::MultipleValuedVnlCostFunctionAdaptor::ParametersType |
Parameters of the MultipleValuedCostFunction
Definition at line 54 of file itkMultipleValuedVnlCostFunctionAdaptor.h.
| typedef Array<double> itk::MultipleValuedVnlCostFunctionAdaptor::ScalesType |
Scales typedef
Definition at line 60 of file itkMultipleValuedVnlCostFunctionAdaptor.h.
| itk::MultipleValuedVnlCostFunctionAdaptor::MultipleValuedVnlCostFunctionAdaptor | ( | unsigned int | spaceDimension, |
| unsigned int | numberOfValues | ||
| ) |
Constructor with size
Constructor.
Definition at line 27 of file itkMultipleValuedVnlCostFunctionAdaptor.cxx.
References itk::Object::New().
| unsigned long itk::MultipleValuedVnlCostFunctionAdaptor::AddObserver | ( | const EventObject & | event, |
| Command * | command | ||
| ) | const |
This AddObserver method allows to simulate that this class derives from an itkObject for the purpose of reporting iteration events. The goal of this method is to allow ITK-vnl optimizer adaptors to get iteration events despite the fact that VNL does not provide callbacks.
Connects a Command/Observer to the internal reporter class. This is useful for reporting iteration event to potential observers.
Definition at line 233 of file itkMultipleValuedVnlCostFunctionAdaptor.cxx.
|
virtual |
Delegate computation of value and gradient to the costFunction.
Delegate computation of value and gradient to the costfunction.
Definition at line 122 of file itkMultipleValuedVnlCostFunctionAdaptor.cxx.
| void itk::MultipleValuedVnlCostFunctionAdaptor::ConvertExternalToInternalGradient | ( | const DerivativeType & | input, |
| InternalDerivativeType & | output | ||
| ) |
Convert external derviative measures into internal type
Definition at line 159 of file itkMultipleValuedVnlCostFunctionAdaptor.cxx.
| void itk::MultipleValuedVnlCostFunctionAdaptor::ConvertExternalToInternalMeasures | ( | const MeasureType & | input, |
| InternalMeasureType & | output | ||
| ) |
Convert external measures into internal type
Convert external Measures into internal type
Definition at line 183 of file itkMultipleValuedVnlCostFunctionAdaptor.cxx.
|
virtual |
Delegate computation of the value to the CostFunction.
Definition at line 48 of file itkMultipleValuedVnlCostFunctionAdaptor.cxx.
References itk::ExceptionObject::SetDescription(), and itk::ExceptionObject::SetLocation().
| const MultipleValuedVnlCostFunctionAdaptor::ParametersType & itk::MultipleValuedVnlCostFunctionAdaptor::GetCachedCurrentParameters | ( | ) | const |
Return the cached value of the parameters used for computing the function
Definition at line 259 of file itkMultipleValuedVnlCostFunctionAdaptor.cxx.
Referenced by itk::MultipleValuedNonLinearVnlOptimizer::IterationReport().
| const MultipleValuedVnlCostFunctionAdaptor::DerivativeType & itk::MultipleValuedVnlCostFunctionAdaptor::GetCachedDerivative | ( | ) | const |
Return the cached value of the cost function derivative
Definition at line 251 of file itkMultipleValuedVnlCostFunctionAdaptor.cxx.
Referenced by itk::MultipleValuedNonLinearVnlOptimizer::IterationReport().
| const MultipleValuedVnlCostFunctionAdaptor::MeasureType & itk::MultipleValuedVnlCostFunctionAdaptor::GetCachedValue | ( | ) | const |
Return the value of the last evaluation to the value of the cost function. Note that this method DOES NOT triggers a computation of the function or the derivatives, it only returns previous values. Therefore the values here are only valid after you invoke the f() or gradf() methods.
Return the cached value of the cost function
Definition at line 242 of file itkMultipleValuedVnlCostFunctionAdaptor.cxx.
Referenced by itk::MultipleValuedNonLinearVnlOptimizer::IterationReport().
|
inline |
Get the CostFunction deriving from MultipleValuedCostFunction
Definition at line 71 of file itkMultipleValuedVnlCostFunctionAdaptor.h.
| bool itk::MultipleValuedVnlCostFunctionAdaptor::GetUseGradient | ( | ) | const |
Return true if the cost function will provide a Gradient computation
Definition at line 209 of file itkMultipleValuedVnlCostFunctionAdaptor.cxx.
|
virtual |
Delegate computation of the gradient to the costFunction.
Delegate computation of the gradient to the costfunction.
Definition at line 88 of file itkMultipleValuedVnlCostFunctionAdaptor.cxx.
References itk::ExceptionObject::SetDescription(), and itk::ExceptionObject::SetLocation().
|
protected |
This method is intended to be called by the derived classes in order to notify of an iteration event to any Command/Observers
This method reports iterations events. It is intended to help monitoring the progress of the optimization process.
Definition at line 222 of file itkMultipleValuedVnlCostFunctionAdaptor.cxx.
|
inline |
Set the CostFunction deriving from MultipleValuedCostFunction
Definition at line 67 of file itkMultipleValuedVnlCostFunctionAdaptor.h.
| void itk::MultipleValuedVnlCostFunctionAdaptor::SetScales | ( | const ScalesType & | scales | ) |
Set current parameters scaling.
Definition at line 39 of file itkMultipleValuedVnlCostFunctionAdaptor.cxx.
| void itk::MultipleValuedVnlCostFunctionAdaptor::SetUseGradient | ( | bool | useGradient | ) |
Define if the Cost function should provide a customized Gradient computation or the gradient can be computed internally using a default approach
Define if the cost function will provide a Gradient computation
Definition at line 197 of file itkMultipleValuedVnlCostFunctionAdaptor.cxx.
|
inline |
Definition at line 102 of file itkMultipleValuedVnlCostFunctionAdaptor.h.
|
inline |
Definition at line 101 of file itkMultipleValuedVnlCostFunctionAdaptor.h.
|
mutableprivate |
Definition at line 139 of file itkMultipleValuedVnlCostFunctionAdaptor.h.
|
mutableprivate |
Definition at line 138 of file itkMultipleValuedVnlCostFunctionAdaptor.h.
|
mutableprivate |
Definition at line 137 of file itkMultipleValuedVnlCostFunctionAdaptor.h.
|
private |
Definition at line 131 of file itkMultipleValuedVnlCostFunctionAdaptor.h.
|
private |
Definition at line 135 of file itkMultipleValuedVnlCostFunctionAdaptor.h.
|
private |
Definition at line 134 of file itkMultipleValuedVnlCostFunctionAdaptor.h.
|
private |
Definition at line 133 of file itkMultipleValuedVnlCostFunctionAdaptor.h.