![]() |
Home | Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | File List | Namespace Members | Data Fields | Globals | Related Pages |
#include <elxConjugateGradient.h>
An optimizer based on the itk::GenericConjugateGradientOptimizer.
A ConjugateGradient optimizer, using the itk::MoreThuenteLineSearchOptimizer. Different conjugate gradient methods can be selected with this optimizer.
This optimizer support the NewSamplesEveryIteration option. It requests new samples for the computation of each search direction (not during the line search). Actually this makes no sense for a conjugate gradient optimizer. So, think twice before using the NewSamplesEveryIteration option.
The parameters used in this class are:
(Optimizer "ConjugateGradient")
(GenerateLineSearchIterations "true")
(MaximumNumberOfIterations 100 100 50)
(MaximumNumberOfIterations 10 10 5)
(StepLength 2.0 1.0 0.5)
(LineSearchValueTolerance 0.0001 0.0001 0.0001)
(LineSearchGradientTolerance 0.9 0.9 0.9)
(ValueTolerance 0.001 0.0001 0.000001)
(GradientMagnitudeTolerance 0.001 0.0001 0.000001)
(ConjugateGradientType "FletcherReeves" "PolakRibiere")
(StopIfWolfeNotSatisfied "true" "false")
Definition at line 90 of file elxConjugateGradient.h.
typedef Superclass2::ConfigurationPointer elastix::ConjugateGradient< TElastix >::ConfigurationPointer |
Reimplemented from elastix::OptimizerBase< TElastix >.
Definition at line 129 of file elxConjugateGradient.h.
typedef Superclass2::ConfigurationType elastix::ConjugateGradient< TElastix >::ConfigurationType |
Reimplemented from elastix::OptimizerBase< TElastix >.
Definition at line 128 of file elxConjugateGradient.h.
typedef SmartPointer<const Self> elastix::ConjugateGradient< TElastix >::ConstPointer |
Reimplemented from itk::GenericConjugateGradientOptimizer.
Definition at line 103 of file elxConjugateGradient.h.
typedef Superclass1::CostFunctionPointer elastix::ConjugateGradient< TElastix >::CostFunctionPointer |
Definition at line 119 of file elxConjugateGradient.h.
typedef Superclass1::CostFunctionType elastix::ConjugateGradient< TElastix >::CostFunctionType |
Typedef's inherited from Superclass1.
Reimplemented from itk::GenericConjugateGradientOptimizer.
Definition at line 118 of file elxConjugateGradient.h.
typedef Superclass1::DerivativeType elastix::ConjugateGradient< TElastix >::DerivativeType |
Reimplemented from itk::GenericConjugateGradientOptimizer.
Definition at line 122 of file elxConjugateGradient.h.
typedef Superclass2::ElastixPointer elastix::ConjugateGradient< TElastix >::ElastixPointer |
Reimplemented from elastix::OptimizerBase< TElastix >.
Definition at line 127 of file elxConjugateGradient.h.
typedef Superclass2::ElastixType elastix::ConjugateGradient< TElastix >::ElastixType |
Typedef's inherited from Elastix.
Reimplemented from elastix::OptimizerBase< TElastix >.
Definition at line 126 of file elxConjugateGradient.h.
typedef EventPassThroughType::Pointer elastix::ConjugateGradient< TElastix >::EventPassThroughPointer |
Definition at line 138 of file elxConjugateGradient.h.
typedef ReceptorMemberCommand<Self> elastix::ConjugateGradient< TElastix >::EventPassThroughType |
Definition at line 137 of file elxConjugateGradient.h.
typedef Superclass2::ITKBaseType elastix::ConjugateGradient< TElastix >::ITKBaseType |
Reimplemented from elastix::OptimizerBase< TElastix >.
Definition at line 132 of file elxConjugateGradient.h.
typedef LineOptimizerType::Pointer elastix::ConjugateGradient< TElastix >::LineOptimizerPointer |
Definition at line 136 of file elxConjugateGradient.h.
typedef MoreThuenteLineSearchOptimizer elastix::ConjugateGradient< TElastix >::LineOptimizerType |
Extra typedefs
Definition at line 135 of file elxConjugateGradient.h.
typedef Superclass1::ParametersType elastix::ConjugateGradient< TElastix >::ParametersType |
Reimplemented from itk::GenericConjugateGradientOptimizer.
Definition at line 121 of file elxConjugateGradient.h.
typedef SmartPointer<Self> elastix::ConjugateGradient< TElastix >::Pointer |
Reimplemented from itk::GenericConjugateGradientOptimizer.
Definition at line 102 of file elxConjugateGradient.h.
typedef Superclass2::RegistrationPointer elastix::ConjugateGradient< TElastix >::RegistrationPointer |
Reimplemented from elastix::OptimizerBase< TElastix >.
Definition at line 131 of file elxConjugateGradient.h.
typedef Superclass2::RegistrationType elastix::ConjugateGradient< TElastix >::RegistrationType |
Reimplemented from elastix::OptimizerBase< TElastix >.
Definition at line 130 of file elxConjugateGradient.h.
typedef Superclass1::ScalesType elastix::ConjugateGradient< TElastix >::ScalesType |
Reimplemented from itk::GenericConjugateGradientOptimizer.
Definition at line 123 of file elxConjugateGradient.h.
typedef ConjugateGradient elastix::ConjugateGradient< TElastix >::Self |
Standard ITK.
Reimplemented from itk::GenericConjugateGradientOptimizer.
Definition at line 99 of file elxConjugateGradient.h.
typedef Superclass1::StopConditionType elastix::ConjugateGradient< TElastix >::StopConditionType |
Reimplemented from itk::GenericConjugateGradientOptimizer.
Definition at line 120 of file elxConjugateGradient.h.
typedef GenericConjugateGradientOptimizer elastix::ConjugateGradient< TElastix >::Superclass1 |
Definition at line 100 of file elxConjugateGradient.h.
typedef OptimizerBase<TElastix> elastix::ConjugateGradient< TElastix >::Superclass2 |
Definition at line 101 of file elxConjugateGradient.h.
elastix::ConjugateGradient< TElastix >::ConjugateGradient | ( | ) | [protected] |
virtual elastix::ConjugateGradient< TElastix >::~ConjugateGradient | ( | ) | [inline, protected, virtual] |
Definition at line 158 of file elxConjugateGradient.h.
elastix::ConjugateGradient< TElastix >::ConjugateGradient | ( | const Self & | ) | [private] |
virtual void elastix::ConjugateGradient< TElastix >::AfterEachIteration | ( | void | ) | [virtual] |
Reimplemented from elastix::BaseComponent.
virtual void elastix::ConjugateGradient< TElastix >::AfterEachResolution | ( | void | ) | [virtual] |
Reimplemented from elastix::BaseComponent.
virtual void elastix::ConjugateGradient< TElastix >::AfterRegistration | ( | void | ) | [virtual] |
Reimplemented from elastix::BaseComponent.
virtual void elastix::ConjugateGradient< TElastix >::BeforeEachResolution | ( | void | ) | [virtual] |
Reimplemented from elastix::BaseComponent.
virtual void elastix::ConjugateGradient< TElastix >::BeforeRegistration | ( | void | ) | [virtual] |
Methods to set parameters and print output at different stages in the registration process.
Reimplemented from elastix::BaseComponent.
virtual std::string elastix::ConjugateGradient< TElastix >::DeterminePhase | ( | void | ) | const [protected, virtual] |
Generate a string, representing the phase of optimisation (line search, main)
elastix::ConjugateGradient< TElastix >::elxClassNameMacro | ( | "ConjugateGradient< TElastix >" | ) |
Name of this class. Use this name in the parameter file to select this specific optimizer.
example: (Optimizer "ConjugateGradient")
virtual const char* elastix::ConjugateGradient< TElastix >::GetClassName | ( | ) | const [virtual] |
Run-time type information (and related methods).
Reimplemented from itk::GenericConjugateGradientOptimizer.
virtual std::string elastix::ConjugateGradient< TElastix >::GetLineSearchStopCondition | ( | void | ) | const [protected, virtual] |
Convert the line search stop condition to a string
virtual bool elastix::ConjugateGradient< TElastix >::GetStartLineSearch | ( | ) | const [virtual] |
void elastix::ConjugateGradient< TElastix >::InvokeIterationEvent | ( | const EventObject & | event | ) | [private] |
virtual void elastix::ConjugateGradient< TElastix >::LineSearch | ( | const ParametersType | searchDir, |
double & | step, | ||
ParametersType & | x, | ||
MeasureType & | f, | ||
DerivativeType & | g | ||
) | [protected, virtual] |
Call the superclass' implementation. If an ExceptionObject is caught, because the line search optimizer tried a too big step, the exception is printed, but ignored further. The optimizer stops, but elastix just goes on to the next resolution.
Reimplemented from itk::GenericConjugateGradientOptimizer.
static Pointer elastix::ConjugateGradient< TElastix >::New | ( | ) | [static] |
Method for creation through the object factory.
Reimplemented from itk::GenericConjugateGradientOptimizer.
void elastix::ConjugateGradient< TElastix >::operator= | ( | const Self & | ) | [private] |
Reimplemented from itk::GenericConjugateGradientOptimizer.
virtual void elastix::ConjugateGradient< TElastix >::StartOptimization | ( | void | ) | [virtual] |
Check if any scales are set, and set the UseScales flag on or off; after that call the superclass' implementation
Reimplemented from itk::GenericConjugateGradientOptimizer.
virtual bool elastix::ConjugateGradient< TElastix >::TestConvergence | ( | bool | firstLineSearchDone | ) | [protected, virtual] |
Reimplement the superclass. Calls the superclass' implementation and checks if the MoreThuente line search routine has stopped with Wolfe conditions satisfied.
Reimplemented from itk::GenericConjugateGradientOptimizer.
EventPassThroughPointer elastix::ConjugateGradient< TElastix >::m_EventPasser [private] |
Definition at line 192 of file elxConjugateGradient.h.
bool elastix::ConjugateGradient< TElastix >::m_GenerateLineSearchIterations [private] |
Definition at line 195 of file elxConjugateGradient.h.
LineOptimizerPointer elastix::ConjugateGradient< TElastix >::m_LineOptimizer [protected] |
Definition at line 158 of file elxConjugateGradient.h.
double elastix::ConjugateGradient< TElastix >::m_SearchDirectionMagnitude [private] |
Definition at line 193 of file elxConjugateGradient.h.
bool elastix::ConjugateGradient< TElastix >::m_StartLineSearch [private] |
Definition at line 194 of file elxConjugateGradient.h.
bool elastix::ConjugateGradient< TElastix >::m_StopIfWolfeNotSatisfied [private] |
Definition at line 196 of file elxConjugateGradient.h.
bool elastix::ConjugateGradient< TElastix >::m_WolfeIsStopCondition [private] |
Definition at line 197 of file elxConjugateGradient.h.
Generated on 11-05-2012 for elastix by ![]() |
![]() |