![]() |
Home | Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | File List | Namespace Members | Data Fields | Globals | Related Pages |
#include <elxFullSearchOptimizer.h>
An optimizer based on the itk::FullSearchOptimizer.
Optimizer that scans a subspace of the parameter space and searches for the best parameters.
The results are written to the output-directory as an image OptimizationSurface.<elastixlevel>.R<resolution>.mhd", which is an N-dimensional float image, where N is the dimension of the search space.
The parameters used in this class are:
Optimizer: Select this optimizer as follows:
(Optimizer "FullSearch")
FullSearchSpace<r>: Defines for resolution r a range of parameters to scan.
Full syntax: (FullSearchSpace<r> <parameter_name> <parameter_nr> <min> <max> <stepsize> [...] )
example: (FullSearchSpace0 "translation_x" 2 -4.0 3.0 1.0 "rotation_y" 3 -1.0 1.0 0.5)
This varies the second transform parameter in the range [-4.0 3.0] with steps of 1.0 and the third parameter in the range [-1.0 1.0] with steps of 0.5. The names are used as column headers in the screen output.
Definition at line 57 of file elxFullSearchOptimizer.h.
Public Types | |
using | ConstPointer = itk::SmartPointer< const Self > |
using | DimensionNameMapType = std::map< unsigned int, std::string > |
using | ITKBaseType = typename Superclass2::ITKBaseType |
using | NameIteratorType = typename DimensionNameMapType::const_iterator |
using | NDImagePointer = typename NDImageType::Pointer |
using | NDImageType = itk::NDImageBase< float > |
using | ParameterValueType = ParametersType::ValueType |
using | Pointer = itk::SmartPointer< Self > |
using | RangeType = FixedArray< RangeValueType, 3 > |
using | RangeValueType = ParameterValueType |
using | SearchSpaceIndexType = Array< IndexValueType > |
using | SearchSpaceIteratorType = SearchSpaceType::ConstIterator |
using | SearchSpacePointer = SearchSpaceType::Pointer |
using | SearchSpacePointType = Array< ParameterValueType > |
using | SearchSpaceSizeType = Array< SizeValueType > |
using | SearchSpaceType = MapContainer< unsigned int, RangeType > |
using | Self = FullSearch |
using | Superclass1 = itk::FullSearchOptimizer |
using | Superclass2 = OptimizerBase< TElastix > |
![]() | |
using | ConstPointer = SmartPointer< const Self > |
using | ParameterValueType = ParametersType::ValueType |
using | Pointer = SmartPointer< Self > |
using | RangeType = FixedArray< RangeValueType, 3 > |
using | RangeValueType = ParameterValueType |
using | SearchSpaceIndexType = Array< IndexValueType > |
using | SearchSpaceIteratorType = SearchSpaceType::ConstIterator |
using | SearchSpacePointer = SearchSpaceType::Pointer |
using | SearchSpacePointType = Array< ParameterValueType > |
using | SearchSpaceSizeType = Array< SizeValueType > |
using | SearchSpaceType = MapContainer< unsigned int, RangeType > |
using | Self = FullSearchOptimizer |
enum | StopConditionType { FullRangeSearched , MetricError } |
using | Superclass = SingleValuedNonLinearOptimizer |
![]() | |
using | ElastixType = TElastix |
using | ITKBaseType = itk::Optimizer |
using | ParametersType = typename ITKBaseType::ParametersType |
using | RegistrationType = typename ElastixType::RegistrationBaseType |
using | Self = OptimizerBase |
using | Superclass = BaseComponentSE< TElastix > |
![]() | |
using | ConfigurationPointer = Configuration::Pointer |
using | ElastixType = TElastix |
using | RegistrationType = typename ElastixType::RegistrationBaseType |
using | Self = BaseComponentSE |
using | Superclass = BaseComponent |
Static Public Member Functions | |
static Pointer | New () |
![]() | |
static Pointer | New () |
![]() | |
template<typename TBaseComponent > | |
static auto | AsITKBaseType (TBaseComponent *const baseComponent) -> decltype(baseComponent->GetAsITKBaseType()) |
static void | InitializeElastixExecutable () |
static bool | IsElastixLibrary () |
Protected Member Functions | |
virtual bool | CheckSearchSpaceRangeDefinition (const std::string &fullFieldName, const bool found, const unsigned int entry_nr) const |
FullSearch () | |
~FullSearch () override=default | |
![]() | |
FullSearchOptimizer () | |
virtual void | ProcessSearchSpaceChanges () |
~FullSearchOptimizer () override=default | |
![]() | |
virtual bool | GetNewSamplesEveryIteration () const |
OptimizerBase ()=default | |
virtual void | SelectNewSamples () |
~OptimizerBase () override=default | |
![]() | |
BaseComponentSE ()=default | |
~BaseComponentSE () override=default | |
![]() | |
BaseComponent ()=default | |
virtual | ~BaseComponent ()=default |
Protected Attributes | |
NDImagePointer | m_OptimizationSurface |
DimensionNameMapType | m_SearchSpaceDimensionNames |
![]() | |
SearchSpaceIndexType | m_BestIndexInSearchSpace |
SearchSpacePointType | m_BestPointInSearchSpace |
double | m_BestValue { 0.0 } |
SearchSpaceIndexType | m_CurrentIndexInSearchSpace |
SearchSpacePointType | m_CurrentPointInSearchSpace |
unsigned long | m_LastSearchSpaceChanges { 0 } |
bool | m_Maximize { false } |
unsigned int | m_NumberOfSearchSpaceDimensions { 0 } |
SearchSpacePointer | m_SearchSpace { nullptr } |
SearchSpaceSizeType | m_SearchSpaceSize |
bool | m_Stop { false } |
StopConditionType | m_StopCondition { FullRangeSearched } |
double | m_Value { 0.0 } |
![]() | |
ConfigurationPointer | m_Configuration {} |
itk::WeakPointer< TElastix > | m_Elastix {} |
RegistrationType * | m_Registration {} |
Private Attributes | |
elxOverrideGetSelfMacro | |
using elastix::FullSearch< TElastix >::ConstPointer = itk::SmartPointer<const Self> |
Definition at line 69 of file elxFullSearchOptimizer.h.
using elastix::FullSearch< TElastix >::DimensionNameMapType = std::map<unsigned int, std::string> |
To store the names of the search space dimensions
Definition at line 108 of file elxFullSearchOptimizer.h.
using elastix::FullSearch< TElastix >::ITKBaseType = typename Superclass2::ITKBaseType |
Definition at line 101 of file elxFullSearchOptimizer.h.
using elastix::FullSearch< TElastix >::NameIteratorType = typename DimensionNameMapType::const_iterator |
Definition at line 109 of file elxFullSearchOptimizer.h.
using elastix::FullSearch< TElastix >::NDImagePointer = typename NDImageType::Pointer |
Definition at line 105 of file elxFullSearchOptimizer.h.
using elastix::FullSearch< TElastix >::NDImageType = itk::NDImageBase<float> |
To store the results of the full search
Definition at line 104 of file elxFullSearchOptimizer.h.
using itk::FullSearchOptimizer::ParameterValueType = ParametersType::ValueType |
Definition at line 76 of file itkFullSearchOptimizer.h.
using elastix::FullSearch< TElastix >::Pointer = itk::SmartPointer<Self> |
Definition at line 68 of file elxFullSearchOptimizer.h.
using itk::FullSearchOptimizer::RangeType = FixedArray<RangeValueType, 3> |
Definition at line 78 of file itkFullSearchOptimizer.h.
using itk::FullSearchOptimizer::RangeValueType = ParameterValueType |
Definition at line 77 of file itkFullSearchOptimizer.h.
using itk::FullSearchOptimizer::SearchSpaceIndexType = Array<IndexValueType> |
The same values, but transformed to integer indices. These can be used to create an image visualizing the search space.
Definition at line 89 of file itkFullSearchOptimizer.h.
using itk::FullSearchOptimizer::SearchSpaceIteratorType = SearchSpaceType::ConstIterator |
Definition at line 81 of file itkFullSearchOptimizer.h.
using itk::FullSearchOptimizer::SearchSpacePointer = SearchSpaceType::Pointer |
Definition at line 80 of file itkFullSearchOptimizer.h.
using itk::FullSearchOptimizer::SearchSpacePointType = Array<ParameterValueType> |
Type that stores the parameter values of the parameters to be optimized. Updated every iteration.
Definition at line 85 of file itkFullSearchOptimizer.h.
using itk::FullSearchOptimizer::SearchSpaceSizeType = Array<SizeValueType> |
The size of each dimension to be searched ((max-min)/step))
Definition at line 92 of file itkFullSearchOptimizer.h.
using itk::FullSearchOptimizer::SearchSpaceType = MapContainer<unsigned int, RangeType> |
Definition at line 79 of file itkFullSearchOptimizer.h.
using elastix::FullSearch< TElastix >::Self = FullSearch |
Standard ITK.
Definition at line 65 of file elxFullSearchOptimizer.h.
using elastix::FullSearch< TElastix >::Superclass1 = itk::FullSearchOptimizer |
Definition at line 66 of file elxFullSearchOptimizer.h.
using elastix::FullSearch< TElastix >::Superclass2 = OptimizerBase<TElastix> |
Definition at line 67 of file elxFullSearchOptimizer.h.
|
protected |
|
overrideprotecteddefault |
|
overridevirtual |
Reimplemented from elastix::BaseComponent.
|
overridevirtual |
Reimplemented from elastix::BaseComponent.
|
overridevirtual |
Reimplemented from elastix::BaseComponent.
|
overridevirtual |
Reimplemented from elastix::BaseComponent.
|
overridevirtual |
Methods that have to be present everywhere.
Reimplemented from elastix::BaseComponent.
|
protectedvirtual |
Checks if an error generated while reading the search space ranges from the parameter file is a real error. Prints some error message if so.
elastix::FullSearch< TElastix >::elxClassNameMacro | ( | "FullSearch< TElastix >" | ) |
Name of this class. Use this name in the parameter file to select this specific optimizer.
example: (Optimizer "FullSearch")
|
virtual |
Run-time type information (and related methods).
Reimplemented from itk::FullSearchOptimizer.
elastix::FullSearch< TElastix >::ITK_DISALLOW_COPY_AND_MOVE | ( | FullSearch< TElastix > | ) |
elastix::FullSearch< TElastix >::itkGetModifiableObjectMacro | ( | OptimizationSurface | , |
NDImageType | |||
) |
Get a pointer to the image containing the optimization surface.
|
static |
Method for creation through the object factory.
|
private |
Definition at line 152 of file elxFullSearchOptimizer.h.
|
protected |
Definition at line 136 of file elxFullSearchOptimizer.h.
|
protected |
Definition at line 138 of file elxFullSearchOptimizer.h.
Generated on 2023-01-13
for elastix by ![]() |
![]() |