ITK
4.2.0
Insight Segmentation and Registration Toolkit
|
#include <itkOptimizer.h>
Public Types | |
typedef SmartPointer< const Self > | ConstPointer |
typedef OptimizerParameters < double > | ParametersType |
typedef SmartPointer< Self > | Pointer |
typedef Array< double > | ScalesType |
typedef Optimizer | Self |
typedef Object | Superclass |
Public Types inherited from itk::Object | |
Public Types inherited from itk::LightObject |
Public Member Functions | |
virtual ::itk::LightObject::Pointer | CreateAnother (void) const |
virtual const ParametersType & | GetCurrentPosition () |
virtual const ParametersType & | GetInitialPosition () |
virtual const char * | GetNameOfClass () const |
virtual const ScalesType & | GetScales () |
virtual const std::string | GetStopConditionDescription () const |
virtual void | SetInitialPosition (const ParametersType ¶m) |
void | SetScales (const ScalesType &scales) |
virtual void | StartOptimization () |
Public Member Functions inherited from itk::Object | |
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 (void) |
const MetaDataDictionary & | GetMetaDataDictionary (void) const |
virtual unsigned long | 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 |
void | RemoveAllObservers () |
void | RemoveObserver (unsigned long tag) |
void | SetDebug (bool debugFlag) const |
void | SetMetaDataDictionary (const MetaDataDictionary &rhs) |
virtual void | SetReferenceCount (int) |
virtual void | UnRegister () const |
Public Member Functions inherited from itk::LightObject | |
virtual void | Delete () |
virtual int | GetReferenceCount () const |
itkCloneMacro (Self) | |
void | Print (std::ostream &os, Indent indent=0) const |
Static Public Member Functions | |
static Pointer | New () |
Static Public Member Functions inherited from itk::Object | |
static bool | GetGlobalWarningDisplay () |
static void | GlobalWarningDisplayOff () |
static void | GlobalWarningDisplayOn () |
static void | SetGlobalWarningDisplay (bool flag) |
Static Public Member Functions inherited from itk::LightObject | |
static void | BreakOnError () |
Protected Member Functions | |
Optimizer () | |
void | PrintSelf (std::ostream &os, Indent indent) const |
virtual void | SetCurrentPosition (const ParametersType ¶m) |
virtual | ~Optimizer () |
Protected Member Functions inherited from itk::Object | |
Object () | |
bool | PrintObservers (std::ostream &os, Indent indent) const |
virtual void | SetTimeStamp (const TimeStamp &time) |
virtual | ~Object () |
Protected Member Functions inherited from itk::LightObject | |
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 () |
Protected Attributes | |
ParametersType | m_CurrentPosition |
bool | m_ScalesInitialized |
Private Member Functions | |
void | operator= (const Self &) |
Optimizer (const Self &) |
Private Attributes | |
ParametersType | m_InitialPosition |
ScalesType | m_Scales |
Generic representation for an optimization method.
This class is a base for a hierarchy of optimizers. It is not intended to be instantiated.
Definition at line 37 of file itkOptimizer.h.
typedef SmartPointer< const Self > itk::Optimizer::ConstPointer |
Reimplemented from itk::Object.
Reimplemented in itk::ExhaustiveOptimizer, itk::InitializationBiasedParticleSwarmOptimizer, itk::OnePlusOneEvolutionaryOptimizer, itk::AmoebaOptimizer, itk::LBFGSBOptimizer, itk::PowellOptimizer, itk::ParticleSwarmOptimizer, itk::ParticleSwarmOptimizerBase, itk::QuaternionRigidTransformGradientDescentOptimizer, itk::VersorTransformOptimizer, itk::GradientDescentOptimizer, itk::VersorRigid3DTransformOptimizer, itk::FRPROptimizer, itk::CumulativeGaussianOptimizer, itk::SPSAOptimizer, itk::MultipleValuedNonLinearVnlOptimizer, itk::SingleValuedNonLinearVnlOptimizer, itk::ConjugateGradientOptimizer, itk::NonLinearOptimizer, itk::SingleValuedNonLinearOptimizer, itk::MultipleValuedNonLinearOptimizer, itk::LBFGSOptimizer, itk::LevenbergMarquardtOptimizer, itk::RegularStepGradientDescentBaseOptimizer, and itk::RegularStepGradientDescentOptimizer.
Definition at line 44 of file itkOptimizer.h.
typedef OptimizerParameters< double > itk::Optimizer::ParametersType |
Parameters type. It defines a position in the optimization search space.
Reimplemented in itk::AmoebaOptimizer, itk::PowellOptimizer, itk::QuaternionRigidTransformGradientDescentOptimizer, itk::FRPROptimizer, itk::MultipleValuedNonLinearOptimizer, itk::SingleValuedNonLinearOptimizer, itk::MultipleValuedNonLinearVnlOptimizer, and itk::NonLinearOptimizer.
Definition at line 50 of file itkOptimizer.h.
typedef SmartPointer< Self > itk::Optimizer::Pointer |
Reimplemented from itk::Object.
Reimplemented in itk::ExhaustiveOptimizer, itk::InitializationBiasedParticleSwarmOptimizer, itk::OnePlusOneEvolutionaryOptimizer, itk::AmoebaOptimizer, itk::LBFGSBOptimizer, itk::PowellOptimizer, itk::ParticleSwarmOptimizer, itk::ParticleSwarmOptimizerBase, itk::QuaternionRigidTransformGradientDescentOptimizer, itk::VersorTransformOptimizer, itk::GradientDescentOptimizer, itk::VersorRigid3DTransformOptimizer, itk::FRPROptimizer, itk::CumulativeGaussianOptimizer, itk::SPSAOptimizer, itk::MultipleValuedNonLinearVnlOptimizer, itk::SingleValuedNonLinearVnlOptimizer, itk::ConjugateGradientOptimizer, itk::NonLinearOptimizer, itk::SingleValuedNonLinearOptimizer, itk::MultipleValuedNonLinearOptimizer, itk::LBFGSOptimizer, itk::LevenbergMarquardtOptimizer, itk::RegularStepGradientDescentBaseOptimizer, and itk::RegularStepGradientDescentOptimizer.
Definition at line 43 of file itkOptimizer.h.
typedef Array< double > itk::Optimizer::ScalesType |
Scale type. This array defines scale to be applied to parameters before being evaluated in the cost function. This allows to map to a more convenient space. In particular this is used to normalize parameter spaces in which some parameters have a different dynamic range.
Reimplemented in itk::NonLinearOptimizer.
Definition at line 62 of file itkOptimizer.h.
typedef Optimizer itk::Optimizer::Self |
Standard class typedefs.
Reimplemented from itk::Object.
Reimplemented in itk::ExhaustiveOptimizer, itk::InitializationBiasedParticleSwarmOptimizer, itk::OnePlusOneEvolutionaryOptimizer, itk::AmoebaOptimizer, itk::LBFGSBOptimizer, itk::PowellOptimizer, itk::ParticleSwarmOptimizer, itk::ParticleSwarmOptimizerBase, itk::QuaternionRigidTransformGradientDescentOptimizer, itk::VersorTransformOptimizer, itk::GradientDescentOptimizer, itk::VersorRigid3DTransformOptimizer, itk::FRPROptimizer, itk::CumulativeGaussianOptimizer, itk::SPSAOptimizer, itk::MultipleValuedNonLinearVnlOptimizer, itk::SingleValuedNonLinearVnlOptimizer, itk::ConjugateGradientOptimizer, itk::NonLinearOptimizer, itk::SingleValuedNonLinearOptimizer, itk::MultipleValuedNonLinearOptimizer, itk::LBFGSOptimizer, itk::LevenbergMarquardtOptimizer, itk::RegularStepGradientDescentBaseOptimizer, and itk::RegularStepGradientDescentOptimizer.
Definition at line 41 of file itkOptimizer.h.
typedef Object itk::Optimizer::Superclass |
Reimplemented from itk::Object.
Reimplemented in itk::ExhaustiveOptimizer, itk::InitializationBiasedParticleSwarmOptimizer, itk::OnePlusOneEvolutionaryOptimizer, itk::AmoebaOptimizer, itk::LBFGSBOptimizer, itk::PowellOptimizer, itk::ParticleSwarmOptimizer, itk::ParticleSwarmOptimizerBase, itk::QuaternionRigidTransformGradientDescentOptimizer, itk::VersorTransformOptimizer, itk::GradientDescentOptimizer, itk::VersorRigid3DTransformOptimizer, itk::FRPROptimizer, itk::CumulativeGaussianOptimizer, itk::SPSAOptimizer, itk::MultipleValuedNonLinearVnlOptimizer, itk::SingleValuedNonLinearVnlOptimizer, itk::ConjugateGradientOptimizer, itk::NonLinearOptimizer, itk::SingleValuedNonLinearOptimizer, itk::MultipleValuedNonLinearOptimizer, itk::LBFGSOptimizer, itk::LevenbergMarquardtOptimizer, itk::RegularStepGradientDescentBaseOptimizer, and itk::RegularStepGradientDescentOptimizer.
Definition at line 42 of file itkOptimizer.h.
|
protected |
|
inlineprotectedvirtual |
Definition at line 87 of file itkOptimizer.h.
|
private |
|
virtual |
Create an object from an instance, potentially deferring to a factory. This method allows you to create an instance of an object that is exactly the same type as the referring object. This is useful in cases where an object has been cast back to a base class.
Reimplemented from itk::Object.
Reimplemented in itk::ExhaustiveOptimizer, itk::InitializationBiasedParticleSwarmOptimizer, itk::OnePlusOneEvolutionaryOptimizer, itk::PowellOptimizer, itk::AmoebaOptimizer, itk::LBFGSBOptimizer, itk::ParticleSwarmOptimizer, itk::CumulativeGaussianOptimizer, itk::FRPROptimizer, itk::QuaternionRigidTransformGradientDescentOptimizer, itk::VersorTransformOptimizer, itk::GradientDescentOptimizer, itk::VersorRigid3DTransformOptimizer, itk::SPSAOptimizer, itk::MultipleValuedNonLinearOptimizer, itk::ConjugateGradientOptimizer, itk::NonLinearOptimizer, itk::SingleValuedNonLinearOptimizer, itk::LBFGSOptimizer, itk::LevenbergMarquardtOptimizer, itk::RegularStepGradientDescentBaseOptimizer, and itk::RegularStepGradientDescentOptimizer.
|
virtual |
Get current position of the optimization.
|
virtual |
Get the position to initialize the optimization.
|
virtual |
Run-time type information (and related methods).
Reimplemented from itk::Object.
Reimplemented in itk::ExhaustiveOptimizer, itk::InitializationBiasedParticleSwarmOptimizer, itk::OnePlusOneEvolutionaryOptimizer, itk::PowellOptimizer, itk::AmoebaOptimizer, itk::LBFGSBOptimizer, itk::ParticleSwarmOptimizer, itk::CumulativeGaussianOptimizer, itk::ParticleSwarmOptimizerBase, itk::QuaternionRigidTransformGradientDescentOptimizer, itk::VersorTransformOptimizer, itk::FRPROptimizer, itk::VersorRigid3DTransformOptimizer, itk::GradientDescentOptimizer, itk::SPSAOptimizer, itk::MultipleValuedNonLinearOptimizer, itk::SingleValuedNonLinearOptimizer, itk::ConjugateGradientOptimizer, itk::MultipleValuedNonLinearVnlOptimizer, itk::NonLinearOptimizer, itk::SingleValuedNonLinearVnlOptimizer, itk::RegularStepGradientDescentBaseOptimizer, itk::RegularStepGradientDescentOptimizer, itk::LBFGSOptimizer, and itk::LevenbergMarquardtOptimizer.
|
virtual |
Get current parameters scaling.
|
virtual |
Get the reason for termination
Reimplemented in itk::SPSAOptimizer, itk::ParticleSwarmOptimizerBase, itk::LBFGSBOptimizer, itk::OnePlusOneEvolutionaryOptimizer, itk::AmoebaOptimizer, itk::PowellOptimizer, itk::ExhaustiveOptimizer, itk::GradientDescentOptimizer, itk::LBFGSOptimizer, itk::RegularStepGradientDescentBaseOptimizer, itk::CumulativeGaussianOptimizer, and itk::LevenbergMarquardtOptimizer.
|
static |
Method for creation through the object factory.
Reimplemented from itk::Object.
Reimplemented in itk::ExhaustiveOptimizer, itk::InitializationBiasedParticleSwarmOptimizer, itk::OnePlusOneEvolutionaryOptimizer, itk::PowellOptimizer, itk::AmoebaOptimizer, itk::LBFGSBOptimizer, itk::ParticleSwarmOptimizer, itk::CumulativeGaussianOptimizer, itk::FRPROptimizer, itk::QuaternionRigidTransformGradientDescentOptimizer, itk::VersorTransformOptimizer, itk::GradientDescentOptimizer, itk::VersorRigid3DTransformOptimizer, itk::SPSAOptimizer, itk::MultipleValuedNonLinearOptimizer, itk::ConjugateGradientOptimizer, itk::NonLinearOptimizer, itk::SingleValuedNonLinearOptimizer, itk::LBFGSOptimizer, itk::LevenbergMarquardtOptimizer, itk::RegularStepGradientDescentBaseOptimizer, and itk::RegularStepGradientDescentOptimizer.
|
private |
Mutex lock to protect modification to the reference count
Reimplemented from itk::Object.
Reimplemented in itk::SPSAOptimizer, itk::ParticleSwarmOptimizerBase, itk::LBFGSBOptimizer, itk::AmoebaOptimizer, itk::ExhaustiveOptimizer, itk::GradientDescentOptimizer, itk::RegularStepGradientDescentBaseOptimizer, itk::InitializationBiasedParticleSwarmOptimizer, itk::LBFGSOptimizer, itk::SingleValuedNonLinearVnlOptimizer, itk::MultipleValuedNonLinearVnlOptimizer, itk::ParticleSwarmOptimizer, itk::SingleValuedNonLinearOptimizer, itk::LevenbergMarquardtOptimizer, itk::VersorRigid3DTransformOptimizer, itk::QuaternionRigidTransformGradientDescentOptimizer, itk::VersorTransformOptimizer, itk::ConjugateGradientOptimizer, itk::MultipleValuedNonLinearOptimizer, itk::RegularStepGradientDescentOptimizer, and itk::NonLinearOptimizer.
|
protectedvirtual |
Methods invoked by Print() to print information about the object including superclasses. Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes.
Reimplemented from itk::Object.
Reimplemented in itk::SPSAOptimizer, itk::ParticleSwarmOptimizerBase, itk::LBFGSBOptimizer, itk::OnePlusOneEvolutionaryOptimizer, itk::AmoebaOptimizer, itk::PowellOptimizer, itk::GradientDescentOptimizer, itk::ExhaustiveOptimizer, itk::InitializationBiasedParticleSwarmOptimizer, itk::LBFGSOptimizer, itk::RegularStepGradientDescentBaseOptimizer, itk::SingleValuedNonLinearVnlOptimizer, itk::ParticleSwarmOptimizer, itk::CumulativeGaussianOptimizer, itk::MultipleValuedNonLinearVnlOptimizer, itk::FRPROptimizer, itk::SingleValuedNonLinearOptimizer, and itk::MultipleValuedNonLinearOptimizer.
|
protectedvirtual |
Set the current position.
|
virtual |
Set the position to initialize the optimization.
void itk::Optimizer::SetScales | ( | const ScalesType & | scales | ) |
Set current parameters scaling.
|
inlinevirtual |
Start optimization.
Reimplemented in itk::OnePlusOneEvolutionaryOptimizer, itk::PowellOptimizer, itk::ParticleSwarmOptimizerBase, itk::ExhaustiveOptimizer, itk::LBFGSBOptimizer, itk::GradientDescentOptimizer, itk::AmoebaOptimizer, itk::CumulativeGaussianOptimizer, itk::FRPROptimizer, itk::RegularStepGradientDescentBaseOptimizer, itk::SPSAOptimizer, itk::ConjugateGradientOptimizer, itk::LBFGSOptimizer, and itk::LevenbergMarquardtOptimizer.
Definition at line 80 of file itkOptimizer.h.
|
protected |
Definition at line 98 of file itkOptimizer.h.
|
private |
Definition at line 103 of file itkOptimizer.h.
|
private |
Definition at line 104 of file itkOptimizer.h.
|
protected |
Definition at line 93 of file itkOptimizer.h.