Class ImageRegistrationMethod
java.lang.Object
org.itk.simple.ProcessObject
org.itk.simple.ImageRegistrationMethod
An interface method to the modular ITKv4 registration framework.
This interface method class encapsulates typical registration usage by
incorporating all the necessary elements for performing a simple image
registration between two images. This method also allows for
multistage registration whereby each stage is characterized by
possibly different transforms and different image metrics. For
example, many users will want to perform a linear registration
followed by deformable registration where both stages are performed in
multiple levels. Each level can be characterized by:
the resolution of the virtual domain image (see below)
smoothing of the fixed and moving images
 Multiple stages are handled by linking multiple instantiations of
this class where the output transform is added to the optional
composite transform input.
See:
 itk::ImageRegistrationMethodv4
 itk::ImageToImageMetricv4
 itk::ObjectToObjectOptimizerBaseTemplate
C++ includes: sitkImageRegistrationMethod.h
- 
Nested Class SummaryNested ClassesModifier and TypeClassDescriptionstatic final classstatic final class
- 
Field SummaryFields inherited from class org.itk.simple.ProcessObjectswigCMemOwn
- 
Constructor SummaryConstructorsModifierConstructorDescriptionitk::simple::ImageRegistrationMethod::ImageRegistrationMethod()protectedImageRegistrationMethod(long cPtr, boolean cMemoryOwn) 
- 
Method SummaryModifier and TypeMethodDescriptionvoiddelete()itk::simple::ImageRegistrationMethod::~ImageRegistrationMethod() overrideTransform itk::simple::ImageRegistrationMethod::Execute(const Image &fixed, const Image &moving) Optimize the configured registration problem.protected voidfinalize()protected static longlongunsigned int itk::simple::ImageRegistrationMethod::GetCurrentLevel() constbooleanuint64_t itk::simple::ImageRegistrationMethod::GetMetricNumberOfValidPoints() const Current number of points used of metric evaluation This is a active measurement connected to the registration processes during registration.const std::vector<double>& itk::simple::ImageRegistrationMethod::GetMetricSamplingPercentagePerLevel() const Get the percentage of pixels used for metric evaluation.doubledouble itk::simple::ImageRegistrationMethod::GetMetricValue() constgetName()std::string itk::simple::ImageRegistrationMethod::GetName() const override return user readable name for the filterdoubledouble itk::simple::ImageRegistrationMethod::GetOptimizerConvergenceValue() constlongunsigned int itk::simple::ImageRegistrationMethod::GetOptimizerIteration() const Active measurements which can be obtained during call backs.doubledouble itk::simple::ImageRegistrationMethod::GetOptimizerLearningRate() conststd::vector<double> itk::simple::ImageRegistrationMethod::GetOptimizerPosition() conststd::vector<double> itk::simple::ImageRegistrationMethod::GetOptimizerScales() const Get the OptimizerScales.std::string itk::simple::ImageRegistrationMethod::GetOptimizerStopConditionDescription() const Measurement updated at the end of execution.doublemetricEvaluate(Image fixed, Image moving) double itk::simple::ImageRegistrationMethod::MetricEvaluate(const Image &fixed, const Image &moving) Get the value of the metric given the state of the method.voidvoidvoidvoidvoidsetFixedInitialTransform(Transform transform) voidsetInitialTransform(Transform transform) voidsetInitialTransform(Transform transform, boolean inPlace) voidsetInitialTransformAsBSpline(BSplineTransform transform) void itk::simple::ImageRegistrationMethod::SetInitialTransformAsBSpline(BSplineTransform &transform, bool inPlace=true, const std::vector< unsigned int > &scaleFactors=std::vector< unsigned int >()) Set an initial BSpline transform to optimize.voidsetInitialTransformAsBSpline(BSplineTransform transform, boolean inPlace) void itk::simple::ImageRegistrationMethod::SetInitialTransformAsBSpline(BSplineTransform &transform, bool inPlace=true, const std::vector< unsigned int > &scaleFactors=std::vector< unsigned int >()) Set an initial BSpline transform to optimize.voidsetInitialTransformAsBSpline(BSplineTransform transform, boolean inPlace, VectorUInt32 scaleFactors) void itk::simple::ImageRegistrationMethod::SetInitialTransformAsBSpline(BSplineTransform &transform, bool inPlace=true, const std::vector< unsigned int > &scaleFactors=std::vector< unsigned int >()) Set an initial BSpline transform to optimize.voidsetInterpolator(InterpolatorEnum Interpolator) voidsetMetricAsANTSNeighborhoodCorrelation(long radius) Self& itk::simple::ImageRegistrationMethod::SetMetricAsANTSNeighborhoodCorrelation(unsigned int radius) Use normalized cross correlation using a small neighborhood for each voxel between two images, with speed optimizations for dense registration.voidSelf& itk::simple::ImageRegistrationMethod::SetMetricAsCorrelation() Use negative normalized cross correlation image metric.voidSelf& itk::simple::ImageRegistrationMethod::SetMetricAsDemons(double intensityDifferenceThreshold=0.001) Use demons image metric.voidsetMetricAsDemons(double intensityDifferenceThreshold) Self& itk::simple::ImageRegistrationMethod::SetMetricAsDemons(double intensityDifferenceThreshold=0.001) Use demons image metric.voidSelf& itk::simple::ImageRegistrationMethod::SetMetricAsJointHistogramMutualInformation(unsigned int numberOfHistogramBins=20, double varianceForJointPDFSmoothing=1.5) Use mutual information between two images.voidsetMetricAsJointHistogramMutualInformation(long numberOfHistogramBins) Self& itk::simple::ImageRegistrationMethod::SetMetricAsJointHistogramMutualInformation(unsigned int numberOfHistogramBins=20, double varianceForJointPDFSmoothing=1.5) Use mutual information between two images.voidsetMetricAsJointHistogramMutualInformation(long numberOfHistogramBins, double varianceForJointPDFSmoothing) Self& itk::simple::ImageRegistrationMethod::SetMetricAsJointHistogramMutualInformation(unsigned int numberOfHistogramBins=20, double varianceForJointPDFSmoothing=1.5) Use mutual information between two images.voidSelf& itk::simple::ImageRegistrationMethod::SetMetricAsMattesMutualInformation(unsigned int numberOfHistogramBins=50) Use the mutual information between two images to be registered using the method of Mattes et al.voidsetMetricAsMattesMutualInformation(long numberOfHistogramBins) Self& itk::simple::ImageRegistrationMethod::SetMetricAsMattesMutualInformation(unsigned int numberOfHistogramBins=50) Use the mutual information between two images to be registered using the method of Mattes et al.voidSelf& itk::simple::ImageRegistrationMethod::SetMetricAsMeanSquares() Use negative means squares image metric.voidsetMetricFixedMask(Image binaryMask) Self& itk::simple::ImageRegistrationMethod::SetMetricFixedMask(const Image &binaryMask) Set an image mask in order to restrict the sampled points for the metric.voidsetMetricMovingMask(Image binaryMask) Self& itk::simple::ImageRegistrationMethod::SetMetricMovingMask(const Image &binaryMask) Set an image mask in order to restrict the sampled points for the metric in the moving image space.voidsetMetricSamplingPercentage(double percentage) voidsetMetricSamplingPercentage(double percentage, long seed) voidsetMetricSamplingPercentagePerLevel(VectorDouble percentage) voidsetMetricSamplingPercentagePerLevel(VectorDouble percentage, long seed) voidSelf& itk::simple::ImageRegistrationMethod::SetMetricSamplingStrategy(MetricSamplingStrategyType strategy) Set sampling strategy for sample generation.voidsetMetricUseFixedImageGradientFilter(boolean arg0) voidsetMetricUseMovingImageGradientFilter(boolean arg0) voidsetMovingInitialTransform(Transform transform) voidsetOptimizerAsAmoeba(double simplexDelta, long numberOfIterations) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsAmoeba(double simplexDelta, unsigned int numberOfIterations, double parametersConvergenceTolerance=1e-8, double functionConvergenceTolerance=1e-4, bool withRestarts=false) Set optimizer to Nelder-Mead downhill simplex algorithm.voidsetOptimizerAsAmoeba(double simplexDelta, long numberOfIterations, double parametersConvergenceTolerance) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsAmoeba(double simplexDelta, unsigned int numberOfIterations, double parametersConvergenceTolerance=1e-8, double functionConvergenceTolerance=1e-4, bool withRestarts=false) Set optimizer to Nelder-Mead downhill simplex algorithm.voidsetOptimizerAsAmoeba(double simplexDelta, long numberOfIterations, double parametersConvergenceTolerance, double functionConvergenceTolerance) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsAmoeba(double simplexDelta, unsigned int numberOfIterations, double parametersConvergenceTolerance=1e-8, double functionConvergenceTolerance=1e-4, bool withRestarts=false) Set optimizer to Nelder-Mead downhill simplex algorithm.voidsetOptimizerAsAmoeba(double simplexDelta, long numberOfIterations, double parametersConvergenceTolerance, double functionConvergenceTolerance, boolean withRestarts) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsAmoeba(double simplexDelta, unsigned int numberOfIterations, double parametersConvergenceTolerance=1e-8, double functionConvergenceTolerance=1e-4, bool withRestarts=false) Set optimizer to Nelder-Mead downhill simplex algorithm.voidsetOptimizerAsConjugateGradientLineSearch(double learningRate, long numberOfIterations) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsConjugateGradientLineSearch(double learningRate, unsigned int numberOfIterations, double convergenceMinimumValue=1e-6, unsigned int convergenceWindowSize=10, double lineSearchLowerLimit=0, double lineSearchUpperLimit=5.0, double lineSearchEpsilon=0.01, unsigned int lineSearchMaximumIterations=20, EstimateLearningRateType estimateLearningRate=Once, double maximumStepSizeInPhysicalUnits=0.0) Conjugate gradient descent optimizer with a golden section line search for nonlinear optimization.voidsetOptimizerAsConjugateGradientLineSearch(double learningRate, long numberOfIterations, double convergenceMinimumValue) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsConjugateGradientLineSearch(double learningRate, unsigned int numberOfIterations, double convergenceMinimumValue=1e-6, unsigned int convergenceWindowSize=10, double lineSearchLowerLimit=0, double lineSearchUpperLimit=5.0, double lineSearchEpsilon=0.01, unsigned int lineSearchMaximumIterations=20, EstimateLearningRateType estimateLearningRate=Once, double maximumStepSizeInPhysicalUnits=0.0) Conjugate gradient descent optimizer with a golden section line search for nonlinear optimization.voidsetOptimizerAsConjugateGradientLineSearch(double learningRate, long numberOfIterations, double convergenceMinimumValue, long convergenceWindowSize) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsConjugateGradientLineSearch(double learningRate, unsigned int numberOfIterations, double convergenceMinimumValue=1e-6, unsigned int convergenceWindowSize=10, double lineSearchLowerLimit=0, double lineSearchUpperLimit=5.0, double lineSearchEpsilon=0.01, unsigned int lineSearchMaximumIterations=20, EstimateLearningRateType estimateLearningRate=Once, double maximumStepSizeInPhysicalUnits=0.0) Conjugate gradient descent optimizer with a golden section line search for nonlinear optimization.voidsetOptimizerAsConjugateGradientLineSearch(double learningRate, long numberOfIterations, double convergenceMinimumValue, long convergenceWindowSize, double lineSearchLowerLimit) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsConjugateGradientLineSearch(double learningRate, unsigned int numberOfIterations, double convergenceMinimumValue=1e-6, unsigned int convergenceWindowSize=10, double lineSearchLowerLimit=0, double lineSearchUpperLimit=5.0, double lineSearchEpsilon=0.01, unsigned int lineSearchMaximumIterations=20, EstimateLearningRateType estimateLearningRate=Once, double maximumStepSizeInPhysicalUnits=0.0) Conjugate gradient descent optimizer with a golden section line search for nonlinear optimization.voidsetOptimizerAsConjugateGradientLineSearch(double learningRate, long numberOfIterations, double convergenceMinimumValue, long convergenceWindowSize, double lineSearchLowerLimit, double lineSearchUpperLimit) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsConjugateGradientLineSearch(double learningRate, unsigned int numberOfIterations, double convergenceMinimumValue=1e-6, unsigned int convergenceWindowSize=10, double lineSearchLowerLimit=0, double lineSearchUpperLimit=5.0, double lineSearchEpsilon=0.01, unsigned int lineSearchMaximumIterations=20, EstimateLearningRateType estimateLearningRate=Once, double maximumStepSizeInPhysicalUnits=0.0) Conjugate gradient descent optimizer with a golden section line search for nonlinear optimization.voidsetOptimizerAsConjugateGradientLineSearch(double learningRate, long numberOfIterations, double convergenceMinimumValue, long convergenceWindowSize, double lineSearchLowerLimit, double lineSearchUpperLimit, double lineSearchEpsilon) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsConjugateGradientLineSearch(double learningRate, unsigned int numberOfIterations, double convergenceMinimumValue=1e-6, unsigned int convergenceWindowSize=10, double lineSearchLowerLimit=0, double lineSearchUpperLimit=5.0, double lineSearchEpsilon=0.01, unsigned int lineSearchMaximumIterations=20, EstimateLearningRateType estimateLearningRate=Once, double maximumStepSizeInPhysicalUnits=0.0) Conjugate gradient descent optimizer with a golden section line search for nonlinear optimization.voidsetOptimizerAsConjugateGradientLineSearch(double learningRate, long numberOfIterations, double convergenceMinimumValue, long convergenceWindowSize, double lineSearchLowerLimit, double lineSearchUpperLimit, double lineSearchEpsilon, long lineSearchMaximumIterations) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsConjugateGradientLineSearch(double learningRate, unsigned int numberOfIterations, double convergenceMinimumValue=1e-6, unsigned int convergenceWindowSize=10, double lineSearchLowerLimit=0, double lineSearchUpperLimit=5.0, double lineSearchEpsilon=0.01, unsigned int lineSearchMaximumIterations=20, EstimateLearningRateType estimateLearningRate=Once, double maximumStepSizeInPhysicalUnits=0.0) Conjugate gradient descent optimizer with a golden section line search for nonlinear optimization.voidsetOptimizerAsConjugateGradientLineSearch(double learningRate, long numberOfIterations, double convergenceMinimumValue, long convergenceWindowSize, double lineSearchLowerLimit, double lineSearchUpperLimit, double lineSearchEpsilon, long lineSearchMaximumIterations, ImageRegistrationMethod.EstimateLearningRateType estimateLearningRate) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsConjugateGradientLineSearch(double learningRate, unsigned int numberOfIterations, double convergenceMinimumValue=1e-6, unsigned int convergenceWindowSize=10, double lineSearchLowerLimit=0, double lineSearchUpperLimit=5.0, double lineSearchEpsilon=0.01, unsigned int lineSearchMaximumIterations=20, EstimateLearningRateType estimateLearningRate=Once, double maximumStepSizeInPhysicalUnits=0.0) Conjugate gradient descent optimizer with a golden section line search for nonlinear optimization.voidsetOptimizerAsConjugateGradientLineSearch(double learningRate, long numberOfIterations, double convergenceMinimumValue, long convergenceWindowSize, double lineSearchLowerLimit, double lineSearchUpperLimit, double lineSearchEpsilon, long lineSearchMaximumIterations, ImageRegistrationMethod.EstimateLearningRateType estimateLearningRate, double maximumStepSizeInPhysicalUnits) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsConjugateGradientLineSearch(double learningRate, unsigned int numberOfIterations, double convergenceMinimumValue=1e-6, unsigned int convergenceWindowSize=10, double lineSearchLowerLimit=0, double lineSearchUpperLimit=5.0, double lineSearchEpsilon=0.01, unsigned int lineSearchMaximumIterations=20, EstimateLearningRateType estimateLearningRate=Once, double maximumStepSizeInPhysicalUnits=0.0) Conjugate gradient descent optimizer with a golden section line search for nonlinear optimization.voidsetOptimizerAsExhaustive(VectorUInt32 numberOfSteps) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsExhaustive(const std::vector< unsigned int > &numberOfSteps, double stepLength=1.0) Set the optimizer to sample the metric at regular steps.voidsetOptimizerAsExhaustive(VectorUInt32 numberOfSteps, double stepLength) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsExhaustive(const std::vector< unsigned int > &numberOfSteps, double stepLength=1.0) Set the optimizer to sample the metric at regular steps.voidsetOptimizerAsGradientDescent(double learningRate, long numberOfIterations) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsGradientDescent(double learningRate, unsigned int numberOfIterations, double convergenceMinimumValue=1e-6, unsigned int convergenceWindowSize=10, EstimateLearningRateType estimateLearningRate=Once, double maximumStepSizeInPhysicalUnits=0.0) Gradient descent optimizer.voidsetOptimizerAsGradientDescent(double learningRate, long numberOfIterations, double convergenceMinimumValue) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsGradientDescent(double learningRate, unsigned int numberOfIterations, double convergenceMinimumValue=1e-6, unsigned int convergenceWindowSize=10, EstimateLearningRateType estimateLearningRate=Once, double maximumStepSizeInPhysicalUnits=0.0) Gradient descent optimizer.voidsetOptimizerAsGradientDescent(double learningRate, long numberOfIterations, double convergenceMinimumValue, long convergenceWindowSize) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsGradientDescent(double learningRate, unsigned int numberOfIterations, double convergenceMinimumValue=1e-6, unsigned int convergenceWindowSize=10, EstimateLearningRateType estimateLearningRate=Once, double maximumStepSizeInPhysicalUnits=0.0) Gradient descent optimizer.voidsetOptimizerAsGradientDescent(double learningRate, long numberOfIterations, double convergenceMinimumValue, long convergenceWindowSize, ImageRegistrationMethod.EstimateLearningRateType estimateLearningRate) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsGradientDescent(double learningRate, unsigned int numberOfIterations, double convergenceMinimumValue=1e-6, unsigned int convergenceWindowSize=10, EstimateLearningRateType estimateLearningRate=Once, double maximumStepSizeInPhysicalUnits=0.0) Gradient descent optimizer.voidsetOptimizerAsGradientDescent(double learningRate, long numberOfIterations, double convergenceMinimumValue, long convergenceWindowSize, ImageRegistrationMethod.EstimateLearningRateType estimateLearningRate, double maximumStepSizeInPhysicalUnits) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsGradientDescent(double learningRate, unsigned int numberOfIterations, double convergenceMinimumValue=1e-6, unsigned int convergenceWindowSize=10, EstimateLearningRateType estimateLearningRate=Once, double maximumStepSizeInPhysicalUnits=0.0) Gradient descent optimizer.voidsetOptimizerAsGradientDescentLineSearch(double learningRate, long numberOfIterations) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsGradientDescentLineSearch(double learningRate, unsigned int numberOfIterations, double convergenceMinimumValue=1e-6, unsigned int convergenceWindowSize=10, double lineSearchLowerLimit=0, double lineSearchUpperLimit=5.0, double lineSearchEpsilon=0.01, unsigned int lineSearchMaximumIterations=20, EstimateLearningRateType estimateLearningRate=Once, double maximumStepSizeInPhysicalUnits=0.0) Gradient descent optimizer with a golden section line search.voidsetOptimizerAsGradientDescentLineSearch(double learningRate, long numberOfIterations, double convergenceMinimumValue) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsGradientDescentLineSearch(double learningRate, unsigned int numberOfIterations, double convergenceMinimumValue=1e-6, unsigned int convergenceWindowSize=10, double lineSearchLowerLimit=0, double lineSearchUpperLimit=5.0, double lineSearchEpsilon=0.01, unsigned int lineSearchMaximumIterations=20, EstimateLearningRateType estimateLearningRate=Once, double maximumStepSizeInPhysicalUnits=0.0) Gradient descent optimizer with a golden section line search.voidsetOptimizerAsGradientDescentLineSearch(double learningRate, long numberOfIterations, double convergenceMinimumValue, long convergenceWindowSize) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsGradientDescentLineSearch(double learningRate, unsigned int numberOfIterations, double convergenceMinimumValue=1e-6, unsigned int convergenceWindowSize=10, double lineSearchLowerLimit=0, double lineSearchUpperLimit=5.0, double lineSearchEpsilon=0.01, unsigned int lineSearchMaximumIterations=20, EstimateLearningRateType estimateLearningRate=Once, double maximumStepSizeInPhysicalUnits=0.0) Gradient descent optimizer with a golden section line search.voidsetOptimizerAsGradientDescentLineSearch(double learningRate, long numberOfIterations, double convergenceMinimumValue, long convergenceWindowSize, double lineSearchLowerLimit) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsGradientDescentLineSearch(double learningRate, unsigned int numberOfIterations, double convergenceMinimumValue=1e-6, unsigned int convergenceWindowSize=10, double lineSearchLowerLimit=0, double lineSearchUpperLimit=5.0, double lineSearchEpsilon=0.01, unsigned int lineSearchMaximumIterations=20, EstimateLearningRateType estimateLearningRate=Once, double maximumStepSizeInPhysicalUnits=0.0) Gradient descent optimizer with a golden section line search.voidsetOptimizerAsGradientDescentLineSearch(double learningRate, long numberOfIterations, double convergenceMinimumValue, long convergenceWindowSize, double lineSearchLowerLimit, double lineSearchUpperLimit) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsGradientDescentLineSearch(double learningRate, unsigned int numberOfIterations, double convergenceMinimumValue=1e-6, unsigned int convergenceWindowSize=10, double lineSearchLowerLimit=0, double lineSearchUpperLimit=5.0, double lineSearchEpsilon=0.01, unsigned int lineSearchMaximumIterations=20, EstimateLearningRateType estimateLearningRate=Once, double maximumStepSizeInPhysicalUnits=0.0) Gradient descent optimizer with a golden section line search.voidsetOptimizerAsGradientDescentLineSearch(double learningRate, long numberOfIterations, double convergenceMinimumValue, long convergenceWindowSize, double lineSearchLowerLimit, double lineSearchUpperLimit, double lineSearchEpsilon) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsGradientDescentLineSearch(double learningRate, unsigned int numberOfIterations, double convergenceMinimumValue=1e-6, unsigned int convergenceWindowSize=10, double lineSearchLowerLimit=0, double lineSearchUpperLimit=5.0, double lineSearchEpsilon=0.01, unsigned int lineSearchMaximumIterations=20, EstimateLearningRateType estimateLearningRate=Once, double maximumStepSizeInPhysicalUnits=0.0) Gradient descent optimizer with a golden section line search.voidsetOptimizerAsGradientDescentLineSearch(double learningRate, long numberOfIterations, double convergenceMinimumValue, long convergenceWindowSize, double lineSearchLowerLimit, double lineSearchUpperLimit, double lineSearchEpsilon, long lineSearchMaximumIterations) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsGradientDescentLineSearch(double learningRate, unsigned int numberOfIterations, double convergenceMinimumValue=1e-6, unsigned int convergenceWindowSize=10, double lineSearchLowerLimit=0, double lineSearchUpperLimit=5.0, double lineSearchEpsilon=0.01, unsigned int lineSearchMaximumIterations=20, EstimateLearningRateType estimateLearningRate=Once, double maximumStepSizeInPhysicalUnits=0.0) Gradient descent optimizer with a golden section line search.voidsetOptimizerAsGradientDescentLineSearch(double learningRate, long numberOfIterations, double convergenceMinimumValue, long convergenceWindowSize, double lineSearchLowerLimit, double lineSearchUpperLimit, double lineSearchEpsilon, long lineSearchMaximumIterations, ImageRegistrationMethod.EstimateLearningRateType estimateLearningRate) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsGradientDescentLineSearch(double learningRate, unsigned int numberOfIterations, double convergenceMinimumValue=1e-6, unsigned int convergenceWindowSize=10, double lineSearchLowerLimit=0, double lineSearchUpperLimit=5.0, double lineSearchEpsilon=0.01, unsigned int lineSearchMaximumIterations=20, EstimateLearningRateType estimateLearningRate=Once, double maximumStepSizeInPhysicalUnits=0.0) Gradient descent optimizer with a golden section line search.voidsetOptimizerAsGradientDescentLineSearch(double learningRate, long numberOfIterations, double convergenceMinimumValue, long convergenceWindowSize, double lineSearchLowerLimit, double lineSearchUpperLimit, double lineSearchEpsilon, long lineSearchMaximumIterations, ImageRegistrationMethod.EstimateLearningRateType estimateLearningRate, double maximumStepSizeInPhysicalUnits) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsGradientDescentLineSearch(double learningRate, unsigned int numberOfIterations, double convergenceMinimumValue=1e-6, unsigned int convergenceWindowSize=10, double lineSearchLowerLimit=0, double lineSearchUpperLimit=5.0, double lineSearchEpsilon=0.01, unsigned int lineSearchMaximumIterations=20, EstimateLearningRateType estimateLearningRate=Once, double maximumStepSizeInPhysicalUnits=0.0) Gradient descent optimizer with a golden section line search.voidSelf& itk::simple::ImageRegistrationMethod::SetOptimizerAsLBFGS2(double solutionAccuracy=1e-5, unsigned int numberOfIterations=0, unsigned int hessianApproximateAccuracy=6, unsigned int deltaConvergenceDistance=0, double deltaConvergenceTolerance=1e-5, unsigned int lineSearchMaximumEvaluations=40, double lineSearchMinimumStep=1e-20, double lineSearchMaximumStep=1e20, double lineSearchAccuracy=1e-4) Limited memory Broyden Fletcher Goldfarb Shannon minimization without bounds.voidsetOptimizerAsLBFGS2(double solutionAccuracy) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsLBFGS2(double solutionAccuracy=1e-5, unsigned int numberOfIterations=0, unsigned int hessianApproximateAccuracy=6, unsigned int deltaConvergenceDistance=0, double deltaConvergenceTolerance=1e-5, unsigned int lineSearchMaximumEvaluations=40, double lineSearchMinimumStep=1e-20, double lineSearchMaximumStep=1e20, double lineSearchAccuracy=1e-4) Limited memory Broyden Fletcher Goldfarb Shannon minimization without bounds.voidsetOptimizerAsLBFGS2(double solutionAccuracy, long numberOfIterations) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsLBFGS2(double solutionAccuracy=1e-5, unsigned int numberOfIterations=0, unsigned int hessianApproximateAccuracy=6, unsigned int deltaConvergenceDistance=0, double deltaConvergenceTolerance=1e-5, unsigned int lineSearchMaximumEvaluations=40, double lineSearchMinimumStep=1e-20, double lineSearchMaximumStep=1e20, double lineSearchAccuracy=1e-4) Limited memory Broyden Fletcher Goldfarb Shannon minimization without bounds.voidsetOptimizerAsLBFGS2(double solutionAccuracy, long numberOfIterations, long hessianApproximateAccuracy) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsLBFGS2(double solutionAccuracy=1e-5, unsigned int numberOfIterations=0, unsigned int hessianApproximateAccuracy=6, unsigned int deltaConvergenceDistance=0, double deltaConvergenceTolerance=1e-5, unsigned int lineSearchMaximumEvaluations=40, double lineSearchMinimumStep=1e-20, double lineSearchMaximumStep=1e20, double lineSearchAccuracy=1e-4) Limited memory Broyden Fletcher Goldfarb Shannon minimization without bounds.voidsetOptimizerAsLBFGS2(double solutionAccuracy, long numberOfIterations, long hessianApproximateAccuracy, long deltaConvergenceDistance) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsLBFGS2(double solutionAccuracy=1e-5, unsigned int numberOfIterations=0, unsigned int hessianApproximateAccuracy=6, unsigned int deltaConvergenceDistance=0, double deltaConvergenceTolerance=1e-5, unsigned int lineSearchMaximumEvaluations=40, double lineSearchMinimumStep=1e-20, double lineSearchMaximumStep=1e20, double lineSearchAccuracy=1e-4) Limited memory Broyden Fletcher Goldfarb Shannon minimization without bounds.voidsetOptimizerAsLBFGS2(double solutionAccuracy, long numberOfIterations, long hessianApproximateAccuracy, long deltaConvergenceDistance, double deltaConvergenceTolerance) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsLBFGS2(double solutionAccuracy=1e-5, unsigned int numberOfIterations=0, unsigned int hessianApproximateAccuracy=6, unsigned int deltaConvergenceDistance=0, double deltaConvergenceTolerance=1e-5, unsigned int lineSearchMaximumEvaluations=40, double lineSearchMinimumStep=1e-20, double lineSearchMaximumStep=1e20, double lineSearchAccuracy=1e-4) Limited memory Broyden Fletcher Goldfarb Shannon minimization without bounds.voidsetOptimizerAsLBFGS2(double solutionAccuracy, long numberOfIterations, long hessianApproximateAccuracy, long deltaConvergenceDistance, double deltaConvergenceTolerance, long lineSearchMaximumEvaluations) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsLBFGS2(double solutionAccuracy=1e-5, unsigned int numberOfIterations=0, unsigned int hessianApproximateAccuracy=6, unsigned int deltaConvergenceDistance=0, double deltaConvergenceTolerance=1e-5, unsigned int lineSearchMaximumEvaluations=40, double lineSearchMinimumStep=1e-20, double lineSearchMaximumStep=1e20, double lineSearchAccuracy=1e-4) Limited memory Broyden Fletcher Goldfarb Shannon minimization without bounds.voidsetOptimizerAsLBFGS2(double solutionAccuracy, long numberOfIterations, long hessianApproximateAccuracy, long deltaConvergenceDistance, double deltaConvergenceTolerance, long lineSearchMaximumEvaluations, double lineSearchMinimumStep) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsLBFGS2(double solutionAccuracy=1e-5, unsigned int numberOfIterations=0, unsigned int hessianApproximateAccuracy=6, unsigned int deltaConvergenceDistance=0, double deltaConvergenceTolerance=1e-5, unsigned int lineSearchMaximumEvaluations=40, double lineSearchMinimumStep=1e-20, double lineSearchMaximumStep=1e20, double lineSearchAccuracy=1e-4) Limited memory Broyden Fletcher Goldfarb Shannon minimization without bounds.voidsetOptimizerAsLBFGS2(double solutionAccuracy, long numberOfIterations, long hessianApproximateAccuracy, long deltaConvergenceDistance, double deltaConvergenceTolerance, long lineSearchMaximumEvaluations, double lineSearchMinimumStep, double lineSearchMaximumStep) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsLBFGS2(double solutionAccuracy=1e-5, unsigned int numberOfIterations=0, unsigned int hessianApproximateAccuracy=6, unsigned int deltaConvergenceDistance=0, double deltaConvergenceTolerance=1e-5, unsigned int lineSearchMaximumEvaluations=40, double lineSearchMinimumStep=1e-20, double lineSearchMaximumStep=1e20, double lineSearchAccuracy=1e-4) Limited memory Broyden Fletcher Goldfarb Shannon minimization without bounds.voidsetOptimizerAsLBFGS2(double solutionAccuracy, long numberOfIterations, long hessianApproximateAccuracy, long deltaConvergenceDistance, double deltaConvergenceTolerance, long lineSearchMaximumEvaluations, double lineSearchMinimumStep, double lineSearchMaximumStep, double lineSearchAccuracy) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsLBFGS2(double solutionAccuracy=1e-5, unsigned int numberOfIterations=0, unsigned int hessianApproximateAccuracy=6, unsigned int deltaConvergenceDistance=0, double deltaConvergenceTolerance=1e-5, unsigned int lineSearchMaximumEvaluations=40, double lineSearchMinimumStep=1e-20, double lineSearchMaximumStep=1e20, double lineSearchAccuracy=1e-4) Limited memory Broyden Fletcher Goldfarb Shannon minimization without bounds.voidSelf& itk::simple::ImageRegistrationMethod::SetOptimizerAsLBFGSB(double gradientConvergenceTolerance=1e-5, unsigned int numberOfIterations=500, unsigned int maximumNumberOfCorrections=5, unsigned int maximumNumberOfFunctionEvaluations=2000, double costFunctionConvergenceFactor=1e+7, double lowerBound=std::numeric_limits< double >::min(), double upperBound=std::numeric_limits< double >::max(), bool trace=false) Limited memory Broyden Fletcher Goldfarb Shannon minimization with simple bounds.voidsetOptimizerAsLBFGSB(double gradientConvergenceTolerance) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsLBFGSB(double gradientConvergenceTolerance=1e-5, unsigned int numberOfIterations=500, unsigned int maximumNumberOfCorrections=5, unsigned int maximumNumberOfFunctionEvaluations=2000, double costFunctionConvergenceFactor=1e+7, double lowerBound=std::numeric_limits< double >::min(), double upperBound=std::numeric_limits< double >::max(), bool trace=false) Limited memory Broyden Fletcher Goldfarb Shannon minimization with simple bounds.voidsetOptimizerAsLBFGSB(double gradientConvergenceTolerance, long numberOfIterations) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsLBFGSB(double gradientConvergenceTolerance=1e-5, unsigned int numberOfIterations=500, unsigned int maximumNumberOfCorrections=5, unsigned int maximumNumberOfFunctionEvaluations=2000, double costFunctionConvergenceFactor=1e+7, double lowerBound=std::numeric_limits< double >::min(), double upperBound=std::numeric_limits< double >::max(), bool trace=false) Limited memory Broyden Fletcher Goldfarb Shannon minimization with simple bounds.voidsetOptimizerAsLBFGSB(double gradientConvergenceTolerance, long numberOfIterations, long maximumNumberOfCorrections) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsLBFGSB(double gradientConvergenceTolerance=1e-5, unsigned int numberOfIterations=500, unsigned int maximumNumberOfCorrections=5, unsigned int maximumNumberOfFunctionEvaluations=2000, double costFunctionConvergenceFactor=1e+7, double lowerBound=std::numeric_limits< double >::min(), double upperBound=std::numeric_limits< double >::max(), bool trace=false) Limited memory Broyden Fletcher Goldfarb Shannon minimization with simple bounds.voidsetOptimizerAsLBFGSB(double gradientConvergenceTolerance, long numberOfIterations, long maximumNumberOfCorrections, long maximumNumberOfFunctionEvaluations) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsLBFGSB(double gradientConvergenceTolerance=1e-5, unsigned int numberOfIterations=500, unsigned int maximumNumberOfCorrections=5, unsigned int maximumNumberOfFunctionEvaluations=2000, double costFunctionConvergenceFactor=1e+7, double lowerBound=std::numeric_limits< double >::min(), double upperBound=std::numeric_limits< double >::max(), bool trace=false) Limited memory Broyden Fletcher Goldfarb Shannon minimization with simple bounds.voidsetOptimizerAsLBFGSB(double gradientConvergenceTolerance, long numberOfIterations, long maximumNumberOfCorrections, long maximumNumberOfFunctionEvaluations, double costFunctionConvergenceFactor) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsLBFGSB(double gradientConvergenceTolerance=1e-5, unsigned int numberOfIterations=500, unsigned int maximumNumberOfCorrections=5, unsigned int maximumNumberOfFunctionEvaluations=2000, double costFunctionConvergenceFactor=1e+7, double lowerBound=std::numeric_limits< double >::min(), double upperBound=std::numeric_limits< double >::max(), bool trace=false) Limited memory Broyden Fletcher Goldfarb Shannon minimization with simple bounds.voidsetOptimizerAsLBFGSB(double gradientConvergenceTolerance, long numberOfIterations, long maximumNumberOfCorrections, long maximumNumberOfFunctionEvaluations, double costFunctionConvergenceFactor, double lowerBound) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsLBFGSB(double gradientConvergenceTolerance=1e-5, unsigned int numberOfIterations=500, unsigned int maximumNumberOfCorrections=5, unsigned int maximumNumberOfFunctionEvaluations=2000, double costFunctionConvergenceFactor=1e+7, double lowerBound=std::numeric_limits< double >::min(), double upperBound=std::numeric_limits< double >::max(), bool trace=false) Limited memory Broyden Fletcher Goldfarb Shannon minimization with simple bounds.voidsetOptimizerAsLBFGSB(double gradientConvergenceTolerance, long numberOfIterations, long maximumNumberOfCorrections, long maximumNumberOfFunctionEvaluations, double costFunctionConvergenceFactor, double lowerBound, double upperBound) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsLBFGSB(double gradientConvergenceTolerance=1e-5, unsigned int numberOfIterations=500, unsigned int maximumNumberOfCorrections=5, unsigned int maximumNumberOfFunctionEvaluations=2000, double costFunctionConvergenceFactor=1e+7, double lowerBound=std::numeric_limits< double >::min(), double upperBound=std::numeric_limits< double >::max(), bool trace=false) Limited memory Broyden Fletcher Goldfarb Shannon minimization with simple bounds.voidsetOptimizerAsLBFGSB(double gradientConvergenceTolerance, long numberOfIterations, long maximumNumberOfCorrections, long maximumNumberOfFunctionEvaluations, double costFunctionConvergenceFactor, double lowerBound, double upperBound, boolean trace) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsLBFGSB(double gradientConvergenceTolerance=1e-5, unsigned int numberOfIterations=500, unsigned int maximumNumberOfCorrections=5, unsigned int maximumNumberOfFunctionEvaluations=2000, double costFunctionConvergenceFactor=1e+7, double lowerBound=std::numeric_limits< double >::min(), double upperBound=std::numeric_limits< double >::max(), bool trace=false) Limited memory Broyden Fletcher Goldfarb Shannon minimization with simple bounds.voidSelf& itk::simple::ImageRegistrationMethod::SetOptimizerAsOnePlusOneEvolutionary(unsigned int numberOfIterations=100, double epsilon=1.5e-4, double initialRadius=1.01, double growthFactor=-1.0, double shrinkFactor=-1.0, unsigned int seed=sitkWallClock) 1+1 evolutionary optimizer strategy.voidsetOptimizerAsOnePlusOneEvolutionary(long numberOfIterations) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsOnePlusOneEvolutionary(unsigned int numberOfIterations=100, double epsilon=1.5e-4, double initialRadius=1.01, double growthFactor=-1.0, double shrinkFactor=-1.0, unsigned int seed=sitkWallClock) 1+1 evolutionary optimizer strategy.voidsetOptimizerAsOnePlusOneEvolutionary(long numberOfIterations, double epsilon) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsOnePlusOneEvolutionary(unsigned int numberOfIterations=100, double epsilon=1.5e-4, double initialRadius=1.01, double growthFactor=-1.0, double shrinkFactor=-1.0, unsigned int seed=sitkWallClock) 1+1 evolutionary optimizer strategy.voidsetOptimizerAsOnePlusOneEvolutionary(long numberOfIterations, double epsilon, double initialRadius) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsOnePlusOneEvolutionary(unsigned int numberOfIterations=100, double epsilon=1.5e-4, double initialRadius=1.01, double growthFactor=-1.0, double shrinkFactor=-1.0, unsigned int seed=sitkWallClock) 1+1 evolutionary optimizer strategy.voidsetOptimizerAsOnePlusOneEvolutionary(long numberOfIterations, double epsilon, double initialRadius, double growthFactor) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsOnePlusOneEvolutionary(unsigned int numberOfIterations=100, double epsilon=1.5e-4, double initialRadius=1.01, double growthFactor=-1.0, double shrinkFactor=-1.0, unsigned int seed=sitkWallClock) 1+1 evolutionary optimizer strategy.voidsetOptimizerAsOnePlusOneEvolutionary(long numberOfIterations, double epsilon, double initialRadius, double growthFactor, double shrinkFactor) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsOnePlusOneEvolutionary(unsigned int numberOfIterations=100, double epsilon=1.5e-4, double initialRadius=1.01, double growthFactor=-1.0, double shrinkFactor=-1.0, unsigned int seed=sitkWallClock) 1+1 evolutionary optimizer strategy.voidsetOptimizerAsOnePlusOneEvolutionary(long numberOfIterations, double epsilon, double initialRadius, double growthFactor, double shrinkFactor, long seed) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsOnePlusOneEvolutionary(unsigned int numberOfIterations=100, double epsilon=1.5e-4, double initialRadius=1.01, double growthFactor=-1.0, double shrinkFactor=-1.0, unsigned int seed=sitkWallClock) 1+1 evolutionary optimizer strategy.voidSelf& itk::simple::ImageRegistrationMethod::SetOptimizerAsPowell(unsigned int numberOfIterations=100, unsigned int maximumLineIterations=100, double stepLength=1, double stepTolerance=1e-6, double valueTolerance=1e-6) Powell optimization using Brent line search.voidsetOptimizerAsPowell(long numberOfIterations) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsPowell(unsigned int numberOfIterations=100, unsigned int maximumLineIterations=100, double stepLength=1, double stepTolerance=1e-6, double valueTolerance=1e-6) Powell optimization using Brent line search.voidsetOptimizerAsPowell(long numberOfIterations, long maximumLineIterations) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsPowell(unsigned int numberOfIterations=100, unsigned int maximumLineIterations=100, double stepLength=1, double stepTolerance=1e-6, double valueTolerance=1e-6) Powell optimization using Brent line search.voidsetOptimizerAsPowell(long numberOfIterations, long maximumLineIterations, double stepLength) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsPowell(unsigned int numberOfIterations=100, unsigned int maximumLineIterations=100, double stepLength=1, double stepTolerance=1e-6, double valueTolerance=1e-6) Powell optimization using Brent line search.voidsetOptimizerAsPowell(long numberOfIterations, long maximumLineIterations, double stepLength, double stepTolerance) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsPowell(unsigned int numberOfIterations=100, unsigned int maximumLineIterations=100, double stepLength=1, double stepTolerance=1e-6, double valueTolerance=1e-6) Powell optimization using Brent line search.voidsetOptimizerAsPowell(long numberOfIterations, long maximumLineIterations, double stepLength, double stepTolerance, double valueTolerance) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsPowell(unsigned int numberOfIterations=100, unsigned int maximumLineIterations=100, double stepLength=1, double stepTolerance=1e-6, double valueTolerance=1e-6) Powell optimization using Brent line search.voidsetOptimizerAsRegularStepGradientDescent(double learningRate, double minStep, long numberOfIterations) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsRegularStepGradientDescent(double learningRate, double minStep, unsigned int numberOfIterations, double relaxationFactor=0.5, double gradientMagnitudeTolerance=1e-4, EstimateLearningRateType estimateLearningRate=Never, double maximumStepSizeInPhysicalUnits=0.0) Regular Step Gradient descent optimizer.voidsetOptimizerAsRegularStepGradientDescent(double learningRate, double minStep, long numberOfIterations, double relaxationFactor) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsRegularStepGradientDescent(double learningRate, double minStep, unsigned int numberOfIterations, double relaxationFactor=0.5, double gradientMagnitudeTolerance=1e-4, EstimateLearningRateType estimateLearningRate=Never, double maximumStepSizeInPhysicalUnits=0.0) Regular Step Gradient descent optimizer.voidsetOptimizerAsRegularStepGradientDescent(double learningRate, double minStep, long numberOfIterations, double relaxationFactor, double gradientMagnitudeTolerance) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsRegularStepGradientDescent(double learningRate, double minStep, unsigned int numberOfIterations, double relaxationFactor=0.5, double gradientMagnitudeTolerance=1e-4, EstimateLearningRateType estimateLearningRate=Never, double maximumStepSizeInPhysicalUnits=0.0) Regular Step Gradient descent optimizer.voidsetOptimizerAsRegularStepGradientDescent(double learningRate, double minStep, long numberOfIterations, double relaxationFactor, double gradientMagnitudeTolerance, ImageRegistrationMethod.EstimateLearningRateType estimateLearningRate) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsRegularStepGradientDescent(double learningRate, double minStep, unsigned int numberOfIterations, double relaxationFactor=0.5, double gradientMagnitudeTolerance=1e-4, EstimateLearningRateType estimateLearningRate=Never, double maximumStepSizeInPhysicalUnits=0.0) Regular Step Gradient descent optimizer.voidsetOptimizerAsRegularStepGradientDescent(double learningRate, double minStep, long numberOfIterations, double relaxationFactor, double gradientMagnitudeTolerance, ImageRegistrationMethod.EstimateLearningRateType estimateLearningRate, double maximumStepSizeInPhysicalUnits) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsRegularStepGradientDescent(double learningRate, double minStep, unsigned int numberOfIterations, double relaxationFactor=0.5, double gradientMagnitudeTolerance=1e-4, EstimateLearningRateType estimateLearningRate=Never, double maximumStepSizeInPhysicalUnits=0.0) Regular Step Gradient descent optimizer.voidsetOptimizerScales(VectorDouble scales) Self& itk::simple::ImageRegistrationMethod::SetOptimizerScales(const std::vector< double > &scales) Manually set per parameter weighting for the transform parameters.voidSelf& itk::simple::ImageRegistrationMethod::SetOptimizerScalesFromIndexShift(unsigned int centralRegionRadius=5, double smallParameterVariation=0.01) Estimate scales from maximum voxel shift in index space cause by parameter change.voidsetOptimizerScalesFromIndexShift(long centralRegionRadius) Self& itk::simple::ImageRegistrationMethod::SetOptimizerScalesFromIndexShift(unsigned int centralRegionRadius=5, double smallParameterVariation=0.01) Estimate scales from maximum voxel shift in index space cause by parameter change.voidsetOptimizerScalesFromIndexShift(long centralRegionRadius, double smallParameterVariation) Self& itk::simple::ImageRegistrationMethod::SetOptimizerScalesFromIndexShift(unsigned int centralRegionRadius=5, double smallParameterVariation=0.01) Estimate scales from maximum voxel shift in index space cause by parameter change.voidSelf& itk::simple::ImageRegistrationMethod::SetOptimizerScalesFromJacobian(unsigned int centralRegionRadius=5) Estimate scales from Jacobian norms.voidsetOptimizerScalesFromJacobian(long centralRegionRadius) Self& itk::simple::ImageRegistrationMethod::SetOptimizerScalesFromJacobian(unsigned int centralRegionRadius=5) Estimate scales from Jacobian norms.voidSelf& itk::simple::ImageRegistrationMethod::SetOptimizerScalesFromPhysicalShift(unsigned int centralRegionRadius=5, double smallParameterVariation=0.01) Estimating scales of transform parameters a step sizes, from the maximum voxel shift in physical space caused by a parameter change.voidsetOptimizerScalesFromPhysicalShift(long centralRegionRadius) Self& itk::simple::ImageRegistrationMethod::SetOptimizerScalesFromPhysicalShift(unsigned int centralRegionRadius=5, double smallParameterVariation=0.01) Estimating scales of transform parameters a step sizes, from the maximum voxel shift in physical space caused by a parameter change.voidsetOptimizerScalesFromPhysicalShift(long centralRegionRadius, double smallParameterVariation) Self& itk::simple::ImageRegistrationMethod::SetOptimizerScalesFromPhysicalShift(unsigned int centralRegionRadius=5, double smallParameterVariation=0.01) Estimating scales of transform parameters a step sizes, from the maximum voxel shift in physical space caused by a parameter change.voidsetOptimizerWeights(VectorDouble weights) voidsetShrinkFactorsPerLevel(VectorUInt32 shrinkFactors) Self& itk::simple::ImageRegistrationMethod::SetShrinkFactorsPerLevel(const std::vector< unsigned int > &shrinkFactors) Set the isotropic shrink factors for each level.voidsetSmoothingSigmasAreSpecifiedInPhysicalUnits(boolean arg) voidsetSmoothingSigmasPerLevel(VectorDouble smoothingSigmas) Self& itk::simple::ImageRegistrationMethod::SetSmoothingSigmasPerLevel(const std::vector< double > &smoothingSigmas) Set the sigmas of Gaussian used for smoothing.voidsetVirtualDomain(VectorUInt32 virtualSize, VectorDouble virtualOrigin, VectorDouble virtualSpacing, VectorDouble virtualDirection) voidsetVirtualDomainFromImage(Image virtualImage) voidvoidbooleanbool itk::simple::ImageRegistrationMethod::StopRegistration() Stop Registration if actively running.protected static longtoString()std::string itk::simple::ImageRegistrationMethod::ToString() const override Print the information about the object to a string.Methods inherited from class org.itk.simple.ProcessObjectabort, addCommand, debugOff, debugOn, getCPtr, getDebug, getGlobalDefaultCoordinateTolerance, getGlobalDefaultDebug, getGlobalDefaultDirectionTolerance, getGlobalDefaultNumberOfThreads, getGlobalDefaultThreader, getGlobalWarningDisplay, getNumberOfThreads, getNumberOfWorkUnits, getProgress, globalDefaultDebugOff, globalDefaultDebugOn, globalWarningDisplayOff, globalWarningDisplayOn, hasCommand, removeAllCommands, setDebug, setGlobalDefaultCoordinateTolerance, setGlobalDefaultDebug, setGlobalDefaultDirectionTolerance, setGlobalDefaultNumberOfThreads, setGlobalDefaultThreader, setGlobalWarningDisplay, setNumberOfThreads, setNumberOfWorkUnits, swigRelease
- 
Constructor Details- 
ImageRegistrationMethodprotected ImageRegistrationMethod(long cPtr, boolean cMemoryOwn) 
- 
ImageRegistrationMethodpublic ImageRegistrationMethod()itk::simple::ImageRegistrationMethod::ImageRegistrationMethod()
 
- 
- 
Method Details- 
getCPtr
- 
swigRelease
- 
finalizeprotected void finalize()- Overrides:
- finalizein class- ProcessObject
 
- 
deletepublic void delete()itk::simple::ImageRegistrationMethod::~ImageRegistrationMethod() override- Overrides:
- deletein class- ProcessObject
 
- 
getNamestd::string itk::simple::ImageRegistrationMethod::GetName() const override return user readable name for the filter- Overrides:
- getNamein class- ProcessObject
 
- 
toStringstd::string itk::simple::ImageRegistrationMethod::ToString() const override Print the information about the object to a string. If called when the process is being executed ( during a callback ), the ITK Optimizer and Transform objects will be printed.- Overrides:
- toStringin class- ProcessObject
 
- 
getInterpolator
- 
setInterpolator
- 
setInitialTransform
- 
setInitialTransform
- 
getInitialTransform
- 
getInitialTransformInPlacepublic boolean getInitialTransformInPlace()
- 
setInitialTransformAsBSplinepublic void setInitialTransformAsBSpline(BSplineTransform transform, boolean inPlace, VectorUInt32 scaleFactors) void itk::simple::ImageRegistrationMethod::SetInitialTransformAsBSpline(BSplineTransform &transform, bool inPlace=true, const std::vector< unsigned int > &scaleFactors=std::vector< unsigned int >()) Set an initial BSpline transform to optimize. A specialization of SetInitialTransform for BSplineTransforms which can take an additional scaleFactors parameter. The scaleFactors specifies the a isotropic scaling factor per level for the BSpline transform mesh size with respect to the initial transform. For example to double the BSpline mesh resolution at each of 3 levels the vector [1,2,4] should be provided. If a per level scale factor is 0 or omitted than no transform adapter will be created for that level. See: itk::BSplineTransformParametersAdaptor
- 
setInitialTransformAsBSplinevoid itk::simple::ImageRegistrationMethod::SetInitialTransformAsBSpline(BSplineTransform &transform, bool inPlace=true, const std::vector< unsigned int > &scaleFactors=std::vector< unsigned int >()) Set an initial BSpline transform to optimize. A specialization of SetInitialTransform for BSplineTransforms which can take an additional scaleFactors parameter. The scaleFactors specifies the a isotropic scaling factor per level for the BSpline transform mesh size with respect to the initial transform. For example to double the BSpline mesh resolution at each of 3 levels the vector [1,2,4] should be provided. If a per level scale factor is 0 or omitted than no transform adapter will be created for that level. See: itk::BSplineTransformParametersAdaptor
- 
setInitialTransformAsBSplinevoid itk::simple::ImageRegistrationMethod::SetInitialTransformAsBSpline(BSplineTransform &transform, bool inPlace=true, const std::vector< unsigned int > &scaleFactors=std::vector< unsigned int >()) Set an initial BSpline transform to optimize. A specialization of SetInitialTransform for BSplineTransforms which can take an additional scaleFactors parameter. The scaleFactors specifies the a isotropic scaling factor per level for the BSpline transform mesh size with respect to the initial transform. For example to double the BSpline mesh resolution at each of 3 levels the vector [1,2,4] should be provided. If a per level scale factor is 0 or omitted than no transform adapter will be created for that level. See: itk::BSplineTransformParametersAdaptor
- 
setMovingInitialTransform
- 
getMovingInitialTransform
- 
setFixedInitialTransform
- 
getFixedInitialTransform
- 
setVirtualDomainpublic void setVirtualDomain(VectorUInt32 virtualSize, VectorDouble virtualOrigin, VectorDouble virtualSpacing, VectorDouble virtualDirection) 
- 
setVirtualDomainFromImage
- 
setMetricAsANTSNeighborhoodCorrelationpublic void setMetricAsANTSNeighborhoodCorrelation(long radius) Self& itk::simple::ImageRegistrationMethod::SetMetricAsANTSNeighborhoodCorrelation(unsigned int radius) Use normalized cross correlation using a small neighborhood for each voxel between two images, with speed optimizations for dense registration. See: itk::ANTSNeighborhoodCorrelationImageToImageMetricv4
- 
setMetricAsCorrelationpublic void setMetricAsCorrelation()Self& itk::simple::ImageRegistrationMethod::SetMetricAsCorrelation() Use negative normalized cross correlation image metric. See: itk::CorrelationImageToImageMetricv4
- 
setMetricAsDemonspublic void setMetricAsDemons(double intensityDifferenceThreshold) Self& itk::simple::ImageRegistrationMethod::SetMetricAsDemons(double intensityDifferenceThreshold=0.001) Use demons image metric. See: itk::DemonsImageToImageMetricv4
- 
setMetricAsDemonspublic void setMetricAsDemons()Self& itk::simple::ImageRegistrationMethod::SetMetricAsDemons(double intensityDifferenceThreshold=0.001) Use demons image metric. See: itk::DemonsImageToImageMetricv4
- 
setMetricAsJointHistogramMutualInformationpublic void setMetricAsJointHistogramMutualInformation(long numberOfHistogramBins, double varianceForJointPDFSmoothing) Self& itk::simple::ImageRegistrationMethod::SetMetricAsJointHistogramMutualInformation(unsigned int numberOfHistogramBins=20, double varianceForJointPDFSmoothing=1.5) Use mutual information between two images. See: itk::JointHistogramMutualInformationImageToImageMetricv4
- 
setMetricAsJointHistogramMutualInformationpublic void setMetricAsJointHistogramMutualInformation(long numberOfHistogramBins) Self& itk::simple::ImageRegistrationMethod::SetMetricAsJointHistogramMutualInformation(unsigned int numberOfHistogramBins=20, double varianceForJointPDFSmoothing=1.5) Use mutual information between two images. See: itk::JointHistogramMutualInformationImageToImageMetricv4
- 
setMetricAsJointHistogramMutualInformationpublic void setMetricAsJointHistogramMutualInformation()Self& itk::simple::ImageRegistrationMethod::SetMetricAsJointHistogramMutualInformation(unsigned int numberOfHistogramBins=20, double varianceForJointPDFSmoothing=1.5) Use mutual information between two images. See: itk::JointHistogramMutualInformationImageToImageMetricv4
- 
setMetricAsMeanSquarespublic void setMetricAsMeanSquares()Self& itk::simple::ImageRegistrationMethod::SetMetricAsMeanSquares() Use negative means squares image metric. See: itk::MeanSquaresImageToImageMetricv4
- 
setMetricAsMattesMutualInformationpublic void setMetricAsMattesMutualInformation(long numberOfHistogramBins) Self& itk::simple::ImageRegistrationMethod::SetMetricAsMattesMutualInformation(unsigned int numberOfHistogramBins=50) Use the mutual information between two images to be registered using the method of Mattes et al. See: itk::MattesMutualInformationImageToImageMetricv4
- 
setMetricAsMattesMutualInformationpublic void setMetricAsMattesMutualInformation()Self& itk::simple::ImageRegistrationMethod::SetMetricAsMattesMutualInformation(unsigned int numberOfHistogramBins=50) Use the mutual information between two images to be registered using the method of Mattes et al. See: itk::MattesMutualInformationImageToImageMetricv4
- 
setOptimizerAsConjugateGradientLineSearchpublic void setOptimizerAsConjugateGradientLineSearch(double learningRate, long numberOfIterations, double convergenceMinimumValue, long convergenceWindowSize, double lineSearchLowerLimit, double lineSearchUpperLimit, double lineSearchEpsilon, long lineSearchMaximumIterations, ImageRegistrationMethod.EstimateLearningRateType estimateLearningRate, double maximumStepSizeInPhysicalUnits) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsConjugateGradientLineSearch(double learningRate, unsigned int numberOfIterations, double convergenceMinimumValue=1e-6, unsigned int convergenceWindowSize=10, double lineSearchLowerLimit=0, double lineSearchUpperLimit=5.0, double lineSearchEpsilon=0.01, unsigned int lineSearchMaximumIterations=20, EstimateLearningRateType estimateLearningRate=Once, double maximumStepSizeInPhysicalUnits=0.0) Conjugate gradient descent optimizer with a golden section line search for nonlinear optimization. See: itk::ConjugateGradientLineSearchOptimizerv4Template
- 
setOptimizerAsConjugateGradientLineSearchpublic void setOptimizerAsConjugateGradientLineSearch(double learningRate, long numberOfIterations, double convergenceMinimumValue, long convergenceWindowSize, double lineSearchLowerLimit, double lineSearchUpperLimit, double lineSearchEpsilon, long lineSearchMaximumIterations, ImageRegistrationMethod.EstimateLearningRateType estimateLearningRate) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsConjugateGradientLineSearch(double learningRate, unsigned int numberOfIterations, double convergenceMinimumValue=1e-6, unsigned int convergenceWindowSize=10, double lineSearchLowerLimit=0, double lineSearchUpperLimit=5.0, double lineSearchEpsilon=0.01, unsigned int lineSearchMaximumIterations=20, EstimateLearningRateType estimateLearningRate=Once, double maximumStepSizeInPhysicalUnits=0.0) Conjugate gradient descent optimizer with a golden section line search for nonlinear optimization. See: itk::ConjugateGradientLineSearchOptimizerv4Template
- 
setOptimizerAsConjugateGradientLineSearchpublic void setOptimizerAsConjugateGradientLineSearch(double learningRate, long numberOfIterations, double convergenceMinimumValue, long convergenceWindowSize, double lineSearchLowerLimit, double lineSearchUpperLimit, double lineSearchEpsilon, long lineSearchMaximumIterations) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsConjugateGradientLineSearch(double learningRate, unsigned int numberOfIterations, double convergenceMinimumValue=1e-6, unsigned int convergenceWindowSize=10, double lineSearchLowerLimit=0, double lineSearchUpperLimit=5.0, double lineSearchEpsilon=0.01, unsigned int lineSearchMaximumIterations=20, EstimateLearningRateType estimateLearningRate=Once, double maximumStepSizeInPhysicalUnits=0.0) Conjugate gradient descent optimizer with a golden section line search for nonlinear optimization. See: itk::ConjugateGradientLineSearchOptimizerv4Template
- 
setOptimizerAsConjugateGradientLineSearchpublic void setOptimizerAsConjugateGradientLineSearch(double learningRate, long numberOfIterations, double convergenceMinimumValue, long convergenceWindowSize, double lineSearchLowerLimit, double lineSearchUpperLimit, double lineSearchEpsilon) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsConjugateGradientLineSearch(double learningRate, unsigned int numberOfIterations, double convergenceMinimumValue=1e-6, unsigned int convergenceWindowSize=10, double lineSearchLowerLimit=0, double lineSearchUpperLimit=5.0, double lineSearchEpsilon=0.01, unsigned int lineSearchMaximumIterations=20, EstimateLearningRateType estimateLearningRate=Once, double maximumStepSizeInPhysicalUnits=0.0) Conjugate gradient descent optimizer with a golden section line search for nonlinear optimization. See: itk::ConjugateGradientLineSearchOptimizerv4Template
- 
setOptimizerAsConjugateGradientLineSearchpublic void setOptimizerAsConjugateGradientLineSearch(double learningRate, long numberOfIterations, double convergenceMinimumValue, long convergenceWindowSize, double lineSearchLowerLimit, double lineSearchUpperLimit) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsConjugateGradientLineSearch(double learningRate, unsigned int numberOfIterations, double convergenceMinimumValue=1e-6, unsigned int convergenceWindowSize=10, double lineSearchLowerLimit=0, double lineSearchUpperLimit=5.0, double lineSearchEpsilon=0.01, unsigned int lineSearchMaximumIterations=20, EstimateLearningRateType estimateLearningRate=Once, double maximumStepSizeInPhysicalUnits=0.0) Conjugate gradient descent optimizer with a golden section line search for nonlinear optimization. See: itk::ConjugateGradientLineSearchOptimizerv4Template
- 
setOptimizerAsConjugateGradientLineSearchpublic void setOptimizerAsConjugateGradientLineSearch(double learningRate, long numberOfIterations, double convergenceMinimumValue, long convergenceWindowSize, double lineSearchLowerLimit) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsConjugateGradientLineSearch(double learningRate, unsigned int numberOfIterations, double convergenceMinimumValue=1e-6, unsigned int convergenceWindowSize=10, double lineSearchLowerLimit=0, double lineSearchUpperLimit=5.0, double lineSearchEpsilon=0.01, unsigned int lineSearchMaximumIterations=20, EstimateLearningRateType estimateLearningRate=Once, double maximumStepSizeInPhysicalUnits=0.0) Conjugate gradient descent optimizer with a golden section line search for nonlinear optimization. See: itk::ConjugateGradientLineSearchOptimizerv4Template
- 
setOptimizerAsConjugateGradientLineSearchpublic void setOptimizerAsConjugateGradientLineSearch(double learningRate, long numberOfIterations, double convergenceMinimumValue, long convergenceWindowSize) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsConjugateGradientLineSearch(double learningRate, unsigned int numberOfIterations, double convergenceMinimumValue=1e-6, unsigned int convergenceWindowSize=10, double lineSearchLowerLimit=0, double lineSearchUpperLimit=5.0, double lineSearchEpsilon=0.01, unsigned int lineSearchMaximumIterations=20, EstimateLearningRateType estimateLearningRate=Once, double maximumStepSizeInPhysicalUnits=0.0) Conjugate gradient descent optimizer with a golden section line search for nonlinear optimization. See: itk::ConjugateGradientLineSearchOptimizerv4Template
- 
setOptimizerAsConjugateGradientLineSearchpublic void setOptimizerAsConjugateGradientLineSearch(double learningRate, long numberOfIterations, double convergenceMinimumValue) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsConjugateGradientLineSearch(double learningRate, unsigned int numberOfIterations, double convergenceMinimumValue=1e-6, unsigned int convergenceWindowSize=10, double lineSearchLowerLimit=0, double lineSearchUpperLimit=5.0, double lineSearchEpsilon=0.01, unsigned int lineSearchMaximumIterations=20, EstimateLearningRateType estimateLearningRate=Once, double maximumStepSizeInPhysicalUnits=0.0) Conjugate gradient descent optimizer with a golden section line search for nonlinear optimization. See: itk::ConjugateGradientLineSearchOptimizerv4Template
- 
setOptimizerAsConjugateGradientLineSearchpublic void setOptimizerAsConjugateGradientLineSearch(double learningRate, long numberOfIterations) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsConjugateGradientLineSearch(double learningRate, unsigned int numberOfIterations, double convergenceMinimumValue=1e-6, unsigned int convergenceWindowSize=10, double lineSearchLowerLimit=0, double lineSearchUpperLimit=5.0, double lineSearchEpsilon=0.01, unsigned int lineSearchMaximumIterations=20, EstimateLearningRateType estimateLearningRate=Once, double maximumStepSizeInPhysicalUnits=0.0) Conjugate gradient descent optimizer with a golden section line search for nonlinear optimization. See: itk::ConjugateGradientLineSearchOptimizerv4Template
- 
setOptimizerAsRegularStepGradientDescentpublic void setOptimizerAsRegularStepGradientDescent(double learningRate, double minStep, long numberOfIterations, double relaxationFactor, double gradientMagnitudeTolerance, ImageRegistrationMethod.EstimateLearningRateType estimateLearningRate, double maximumStepSizeInPhysicalUnits) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsRegularStepGradientDescent(double learningRate, double minStep, unsigned int numberOfIterations, double relaxationFactor=0.5, double gradientMagnitudeTolerance=1e-4, EstimateLearningRateType estimateLearningRate=Never, double maximumStepSizeInPhysicalUnits=0.0) Regular Step Gradient descent optimizer. See: itk::RegularStepGradientDescentOptimizerv4
- 
setOptimizerAsRegularStepGradientDescentpublic void setOptimizerAsRegularStepGradientDescent(double learningRate, double minStep, long numberOfIterations, double relaxationFactor, double gradientMagnitudeTolerance, ImageRegistrationMethod.EstimateLearningRateType estimateLearningRate) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsRegularStepGradientDescent(double learningRate, double minStep, unsigned int numberOfIterations, double relaxationFactor=0.5, double gradientMagnitudeTolerance=1e-4, EstimateLearningRateType estimateLearningRate=Never, double maximumStepSizeInPhysicalUnits=0.0) Regular Step Gradient descent optimizer. See: itk::RegularStepGradientDescentOptimizerv4
- 
setOptimizerAsRegularStepGradientDescentpublic void setOptimizerAsRegularStepGradientDescent(double learningRate, double minStep, long numberOfIterations, double relaxationFactor, double gradientMagnitudeTolerance) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsRegularStepGradientDescent(double learningRate, double minStep, unsigned int numberOfIterations, double relaxationFactor=0.5, double gradientMagnitudeTolerance=1e-4, EstimateLearningRateType estimateLearningRate=Never, double maximumStepSizeInPhysicalUnits=0.0) Regular Step Gradient descent optimizer. See: itk::RegularStepGradientDescentOptimizerv4
- 
setOptimizerAsRegularStepGradientDescentpublic void setOptimizerAsRegularStepGradientDescent(double learningRate, double minStep, long numberOfIterations, double relaxationFactor) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsRegularStepGradientDescent(double learningRate, double minStep, unsigned int numberOfIterations, double relaxationFactor=0.5, double gradientMagnitudeTolerance=1e-4, EstimateLearningRateType estimateLearningRate=Never, double maximumStepSizeInPhysicalUnits=0.0) Regular Step Gradient descent optimizer. See: itk::RegularStepGradientDescentOptimizerv4
- 
setOptimizerAsRegularStepGradientDescentpublic void setOptimizerAsRegularStepGradientDescent(double learningRate, double minStep, long numberOfIterations) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsRegularStepGradientDescent(double learningRate, double minStep, unsigned int numberOfIterations, double relaxationFactor=0.5, double gradientMagnitudeTolerance=1e-4, EstimateLearningRateType estimateLearningRate=Never, double maximumStepSizeInPhysicalUnits=0.0) Regular Step Gradient descent optimizer. See: itk::RegularStepGradientDescentOptimizerv4
- 
setOptimizerAsGradientDescentpublic void setOptimizerAsGradientDescent(double learningRate, long numberOfIterations, double convergenceMinimumValue, long convergenceWindowSize, ImageRegistrationMethod.EstimateLearningRateType estimateLearningRate, double maximumStepSizeInPhysicalUnits) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsGradientDescent(double learningRate, unsigned int numberOfIterations, double convergenceMinimumValue=1e-6, unsigned int convergenceWindowSize=10, EstimateLearningRateType estimateLearningRate=Once, double maximumStepSizeInPhysicalUnits=0.0) Gradient descent optimizer. See: itk::GradientDescentOptimizerv4Template
- 
setOptimizerAsGradientDescentpublic void setOptimizerAsGradientDescent(double learningRate, long numberOfIterations, double convergenceMinimumValue, long convergenceWindowSize, ImageRegistrationMethod.EstimateLearningRateType estimateLearningRate) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsGradientDescent(double learningRate, unsigned int numberOfIterations, double convergenceMinimumValue=1e-6, unsigned int convergenceWindowSize=10, EstimateLearningRateType estimateLearningRate=Once, double maximumStepSizeInPhysicalUnits=0.0) Gradient descent optimizer. See: itk::GradientDescentOptimizerv4Template
- 
setOptimizerAsGradientDescentpublic void setOptimizerAsGradientDescent(double learningRate, long numberOfIterations, double convergenceMinimumValue, long convergenceWindowSize) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsGradientDescent(double learningRate, unsigned int numberOfIterations, double convergenceMinimumValue=1e-6, unsigned int convergenceWindowSize=10, EstimateLearningRateType estimateLearningRate=Once, double maximumStepSizeInPhysicalUnits=0.0) Gradient descent optimizer. See: itk::GradientDescentOptimizerv4Template
- 
setOptimizerAsGradientDescentpublic void setOptimizerAsGradientDescent(double learningRate, long numberOfIterations, double convergenceMinimumValue) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsGradientDescent(double learningRate, unsigned int numberOfIterations, double convergenceMinimumValue=1e-6, unsigned int convergenceWindowSize=10, EstimateLearningRateType estimateLearningRate=Once, double maximumStepSizeInPhysicalUnits=0.0) Gradient descent optimizer. See: itk::GradientDescentOptimizerv4Template
- 
setOptimizerAsGradientDescentpublic void setOptimizerAsGradientDescent(double learningRate, long numberOfIterations) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsGradientDescent(double learningRate, unsigned int numberOfIterations, double convergenceMinimumValue=1e-6, unsigned int convergenceWindowSize=10, EstimateLearningRateType estimateLearningRate=Once, double maximumStepSizeInPhysicalUnits=0.0) Gradient descent optimizer. See: itk::GradientDescentOptimizerv4Template
- 
setOptimizerAsGradientDescentLineSearchpublic void setOptimizerAsGradientDescentLineSearch(double learningRate, long numberOfIterations, double convergenceMinimumValue, long convergenceWindowSize, double lineSearchLowerLimit, double lineSearchUpperLimit, double lineSearchEpsilon, long lineSearchMaximumIterations, ImageRegistrationMethod.EstimateLearningRateType estimateLearningRate, double maximumStepSizeInPhysicalUnits) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsGradientDescentLineSearch(double learningRate, unsigned int numberOfIterations, double convergenceMinimumValue=1e-6, unsigned int convergenceWindowSize=10, double lineSearchLowerLimit=0, double lineSearchUpperLimit=5.0, double lineSearchEpsilon=0.01, unsigned int lineSearchMaximumIterations=20, EstimateLearningRateType estimateLearningRate=Once, double maximumStepSizeInPhysicalUnits=0.0) Gradient descent optimizer with a golden section line search. See: itk::GradientDescentLineSearchOptimizerv4Template
- 
setOptimizerAsGradientDescentLineSearchpublic void setOptimizerAsGradientDescentLineSearch(double learningRate, long numberOfIterations, double convergenceMinimumValue, long convergenceWindowSize, double lineSearchLowerLimit, double lineSearchUpperLimit, double lineSearchEpsilon, long lineSearchMaximumIterations, ImageRegistrationMethod.EstimateLearningRateType estimateLearningRate) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsGradientDescentLineSearch(double learningRate, unsigned int numberOfIterations, double convergenceMinimumValue=1e-6, unsigned int convergenceWindowSize=10, double lineSearchLowerLimit=0, double lineSearchUpperLimit=5.0, double lineSearchEpsilon=0.01, unsigned int lineSearchMaximumIterations=20, EstimateLearningRateType estimateLearningRate=Once, double maximumStepSizeInPhysicalUnits=0.0) Gradient descent optimizer with a golden section line search. See: itk::GradientDescentLineSearchOptimizerv4Template
- 
setOptimizerAsGradientDescentLineSearchpublic void setOptimizerAsGradientDescentLineSearch(double learningRate, long numberOfIterations, double convergenceMinimumValue, long convergenceWindowSize, double lineSearchLowerLimit, double lineSearchUpperLimit, double lineSearchEpsilon, long lineSearchMaximumIterations) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsGradientDescentLineSearch(double learningRate, unsigned int numberOfIterations, double convergenceMinimumValue=1e-6, unsigned int convergenceWindowSize=10, double lineSearchLowerLimit=0, double lineSearchUpperLimit=5.0, double lineSearchEpsilon=0.01, unsigned int lineSearchMaximumIterations=20, EstimateLearningRateType estimateLearningRate=Once, double maximumStepSizeInPhysicalUnits=0.0) Gradient descent optimizer with a golden section line search. See: itk::GradientDescentLineSearchOptimizerv4Template
- 
setOptimizerAsGradientDescentLineSearchpublic void setOptimizerAsGradientDescentLineSearch(double learningRate, long numberOfIterations, double convergenceMinimumValue, long convergenceWindowSize, double lineSearchLowerLimit, double lineSearchUpperLimit, double lineSearchEpsilon) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsGradientDescentLineSearch(double learningRate, unsigned int numberOfIterations, double convergenceMinimumValue=1e-6, unsigned int convergenceWindowSize=10, double lineSearchLowerLimit=0, double lineSearchUpperLimit=5.0, double lineSearchEpsilon=0.01, unsigned int lineSearchMaximumIterations=20, EstimateLearningRateType estimateLearningRate=Once, double maximumStepSizeInPhysicalUnits=0.0) Gradient descent optimizer with a golden section line search. See: itk::GradientDescentLineSearchOptimizerv4Template
- 
setOptimizerAsGradientDescentLineSearchpublic void setOptimizerAsGradientDescentLineSearch(double learningRate, long numberOfIterations, double convergenceMinimumValue, long convergenceWindowSize, double lineSearchLowerLimit, double lineSearchUpperLimit) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsGradientDescentLineSearch(double learningRate, unsigned int numberOfIterations, double convergenceMinimumValue=1e-6, unsigned int convergenceWindowSize=10, double lineSearchLowerLimit=0, double lineSearchUpperLimit=5.0, double lineSearchEpsilon=0.01, unsigned int lineSearchMaximumIterations=20, EstimateLearningRateType estimateLearningRate=Once, double maximumStepSizeInPhysicalUnits=0.0) Gradient descent optimizer with a golden section line search. See: itk::GradientDescentLineSearchOptimizerv4Template
- 
setOptimizerAsGradientDescentLineSearchpublic void setOptimizerAsGradientDescentLineSearch(double learningRate, long numberOfIterations, double convergenceMinimumValue, long convergenceWindowSize, double lineSearchLowerLimit) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsGradientDescentLineSearch(double learningRate, unsigned int numberOfIterations, double convergenceMinimumValue=1e-6, unsigned int convergenceWindowSize=10, double lineSearchLowerLimit=0, double lineSearchUpperLimit=5.0, double lineSearchEpsilon=0.01, unsigned int lineSearchMaximumIterations=20, EstimateLearningRateType estimateLearningRate=Once, double maximumStepSizeInPhysicalUnits=0.0) Gradient descent optimizer with a golden section line search. See: itk::GradientDescentLineSearchOptimizerv4Template
- 
setOptimizerAsGradientDescentLineSearchpublic void setOptimizerAsGradientDescentLineSearch(double learningRate, long numberOfIterations, double convergenceMinimumValue, long convergenceWindowSize) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsGradientDescentLineSearch(double learningRate, unsigned int numberOfIterations, double convergenceMinimumValue=1e-6, unsigned int convergenceWindowSize=10, double lineSearchLowerLimit=0, double lineSearchUpperLimit=5.0, double lineSearchEpsilon=0.01, unsigned int lineSearchMaximumIterations=20, EstimateLearningRateType estimateLearningRate=Once, double maximumStepSizeInPhysicalUnits=0.0) Gradient descent optimizer with a golden section line search. See: itk::GradientDescentLineSearchOptimizerv4Template
- 
setOptimizerAsGradientDescentLineSearchpublic void setOptimizerAsGradientDescentLineSearch(double learningRate, long numberOfIterations, double convergenceMinimumValue) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsGradientDescentLineSearch(double learningRate, unsigned int numberOfIterations, double convergenceMinimumValue=1e-6, unsigned int convergenceWindowSize=10, double lineSearchLowerLimit=0, double lineSearchUpperLimit=5.0, double lineSearchEpsilon=0.01, unsigned int lineSearchMaximumIterations=20, EstimateLearningRateType estimateLearningRate=Once, double maximumStepSizeInPhysicalUnits=0.0) Gradient descent optimizer with a golden section line search. See: itk::GradientDescentLineSearchOptimizerv4Template
- 
setOptimizerAsGradientDescentLineSearchpublic void setOptimizerAsGradientDescentLineSearch(double learningRate, long numberOfIterations) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsGradientDescentLineSearch(double learningRate, unsigned int numberOfIterations, double convergenceMinimumValue=1e-6, unsigned int convergenceWindowSize=10, double lineSearchLowerLimit=0, double lineSearchUpperLimit=5.0, double lineSearchEpsilon=0.01, unsigned int lineSearchMaximumIterations=20, EstimateLearningRateType estimateLearningRate=Once, double maximumStepSizeInPhysicalUnits=0.0) Gradient descent optimizer with a golden section line search. See: itk::GradientDescentLineSearchOptimizerv4Template
- 
setOptimizerAsLBFGSBpublic void setOptimizerAsLBFGSB(double gradientConvergenceTolerance, long numberOfIterations, long maximumNumberOfCorrections, long maximumNumberOfFunctionEvaluations, double costFunctionConvergenceFactor, double lowerBound, double upperBound, boolean trace) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsLBFGSB(double gradientConvergenceTolerance=1e-5, unsigned int numberOfIterations=500, unsigned int maximumNumberOfCorrections=5, unsigned int maximumNumberOfFunctionEvaluations=2000, double costFunctionConvergenceFactor=1e+7, double lowerBound=std::numeric_limits< double >::min(), double upperBound=std::numeric_limits< double >::max(), bool trace=false) Limited memory Broyden Fletcher Goldfarb Shannon minimization with simple bounds. The default parameters utilize LBFGSB in unbounded mode. See: itk::LBFGSBOptimizerv4
- 
setOptimizerAsLBFGSBpublic void setOptimizerAsLBFGSB(double gradientConvergenceTolerance, long numberOfIterations, long maximumNumberOfCorrections, long maximumNumberOfFunctionEvaluations, double costFunctionConvergenceFactor, double lowerBound, double upperBound) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsLBFGSB(double gradientConvergenceTolerance=1e-5, unsigned int numberOfIterations=500, unsigned int maximumNumberOfCorrections=5, unsigned int maximumNumberOfFunctionEvaluations=2000, double costFunctionConvergenceFactor=1e+7, double lowerBound=std::numeric_limits< double >::min(), double upperBound=std::numeric_limits< double >::max(), bool trace=false) Limited memory Broyden Fletcher Goldfarb Shannon minimization with simple bounds. The default parameters utilize LBFGSB in unbounded mode. See: itk::LBFGSBOptimizerv4
- 
setOptimizerAsLBFGSBpublic void setOptimizerAsLBFGSB(double gradientConvergenceTolerance, long numberOfIterations, long maximumNumberOfCorrections, long maximumNumberOfFunctionEvaluations, double costFunctionConvergenceFactor, double lowerBound) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsLBFGSB(double gradientConvergenceTolerance=1e-5, unsigned int numberOfIterations=500, unsigned int maximumNumberOfCorrections=5, unsigned int maximumNumberOfFunctionEvaluations=2000, double costFunctionConvergenceFactor=1e+7, double lowerBound=std::numeric_limits< double >::min(), double upperBound=std::numeric_limits< double >::max(), bool trace=false) Limited memory Broyden Fletcher Goldfarb Shannon minimization with simple bounds. The default parameters utilize LBFGSB in unbounded mode. See: itk::LBFGSBOptimizerv4
- 
setOptimizerAsLBFGSBpublic void setOptimizerAsLBFGSB(double gradientConvergenceTolerance, long numberOfIterations, long maximumNumberOfCorrections, long maximumNumberOfFunctionEvaluations, double costFunctionConvergenceFactor) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsLBFGSB(double gradientConvergenceTolerance=1e-5, unsigned int numberOfIterations=500, unsigned int maximumNumberOfCorrections=5, unsigned int maximumNumberOfFunctionEvaluations=2000, double costFunctionConvergenceFactor=1e+7, double lowerBound=std::numeric_limits< double >::min(), double upperBound=std::numeric_limits< double >::max(), bool trace=false) Limited memory Broyden Fletcher Goldfarb Shannon minimization with simple bounds. The default parameters utilize LBFGSB in unbounded mode. See: itk::LBFGSBOptimizerv4
- 
setOptimizerAsLBFGSBpublic void setOptimizerAsLBFGSB(double gradientConvergenceTolerance, long numberOfIterations, long maximumNumberOfCorrections, long maximumNumberOfFunctionEvaluations) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsLBFGSB(double gradientConvergenceTolerance=1e-5, unsigned int numberOfIterations=500, unsigned int maximumNumberOfCorrections=5, unsigned int maximumNumberOfFunctionEvaluations=2000, double costFunctionConvergenceFactor=1e+7, double lowerBound=std::numeric_limits< double >::min(), double upperBound=std::numeric_limits< double >::max(), bool trace=false) Limited memory Broyden Fletcher Goldfarb Shannon minimization with simple bounds. The default parameters utilize LBFGSB in unbounded mode. See: itk::LBFGSBOptimizerv4
- 
setOptimizerAsLBFGSBpublic void setOptimizerAsLBFGSB(double gradientConvergenceTolerance, long numberOfIterations, long maximumNumberOfCorrections) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsLBFGSB(double gradientConvergenceTolerance=1e-5, unsigned int numberOfIterations=500, unsigned int maximumNumberOfCorrections=5, unsigned int maximumNumberOfFunctionEvaluations=2000, double costFunctionConvergenceFactor=1e+7, double lowerBound=std::numeric_limits< double >::min(), double upperBound=std::numeric_limits< double >::max(), bool trace=false) Limited memory Broyden Fletcher Goldfarb Shannon minimization with simple bounds. The default parameters utilize LBFGSB in unbounded mode. See: itk::LBFGSBOptimizerv4
- 
setOptimizerAsLBFGSBpublic void setOptimizerAsLBFGSB(double gradientConvergenceTolerance, long numberOfIterations) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsLBFGSB(double gradientConvergenceTolerance=1e-5, unsigned int numberOfIterations=500, unsigned int maximumNumberOfCorrections=5, unsigned int maximumNumberOfFunctionEvaluations=2000, double costFunctionConvergenceFactor=1e+7, double lowerBound=std::numeric_limits< double >::min(), double upperBound=std::numeric_limits< double >::max(), bool trace=false) Limited memory Broyden Fletcher Goldfarb Shannon minimization with simple bounds. The default parameters utilize LBFGSB in unbounded mode. See: itk::LBFGSBOptimizerv4
- 
setOptimizerAsLBFGSBpublic void setOptimizerAsLBFGSB(double gradientConvergenceTolerance) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsLBFGSB(double gradientConvergenceTolerance=1e-5, unsigned int numberOfIterations=500, unsigned int maximumNumberOfCorrections=5, unsigned int maximumNumberOfFunctionEvaluations=2000, double costFunctionConvergenceFactor=1e+7, double lowerBound=std::numeric_limits< double >::min(), double upperBound=std::numeric_limits< double >::max(), bool trace=false) Limited memory Broyden Fletcher Goldfarb Shannon minimization with simple bounds. The default parameters utilize LBFGSB in unbounded mode. See: itk::LBFGSBOptimizerv4
- 
setOptimizerAsLBFGSBpublic void setOptimizerAsLBFGSB()Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsLBFGSB(double gradientConvergenceTolerance=1e-5, unsigned int numberOfIterations=500, unsigned int maximumNumberOfCorrections=5, unsigned int maximumNumberOfFunctionEvaluations=2000, double costFunctionConvergenceFactor=1e+7, double lowerBound=std::numeric_limits< double >::min(), double upperBound=std::numeric_limits< double >::max(), bool trace=false) Limited memory Broyden Fletcher Goldfarb Shannon minimization with simple bounds. The default parameters utilize LBFGSB in unbounded mode. See: itk::LBFGSBOptimizerv4
- 
setOptimizerAsLBFGS2public void setOptimizerAsLBFGS2(double solutionAccuracy, long numberOfIterations, long hessianApproximateAccuracy, long deltaConvergenceDistance, double deltaConvergenceTolerance, long lineSearchMaximumEvaluations, double lineSearchMinimumStep, double lineSearchMaximumStep, double lineSearchAccuracy) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsLBFGS2(double solutionAccuracy=1e-5, unsigned int numberOfIterations=0, unsigned int hessianApproximateAccuracy=6, unsigned int deltaConvergenceDistance=0, double deltaConvergenceTolerance=1e-5, unsigned int lineSearchMaximumEvaluations=40, double lineSearchMinimumStep=1e-20, double lineSearchMaximumStep=1e20, double lineSearchAccuracy=1e-4) Limited memory Broyden Fletcher Goldfarb Shannon minimization without bounds. The default parameters utilize LBFGSB in unbounded mode. This version is from LibLBFGS. There are upto 3 stopping criteria: the solution accuracy which is the magnitude of the gradient the delta convergence which ensures the decrease of the metric maximum number of iterations See: itk::LBFGS2Optimizerv4
- 
setOptimizerAsLBFGS2public void setOptimizerAsLBFGS2(double solutionAccuracy, long numberOfIterations, long hessianApproximateAccuracy, long deltaConvergenceDistance, double deltaConvergenceTolerance, long lineSearchMaximumEvaluations, double lineSearchMinimumStep, double lineSearchMaximumStep) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsLBFGS2(double solutionAccuracy=1e-5, unsigned int numberOfIterations=0, unsigned int hessianApproximateAccuracy=6, unsigned int deltaConvergenceDistance=0, double deltaConvergenceTolerance=1e-5, unsigned int lineSearchMaximumEvaluations=40, double lineSearchMinimumStep=1e-20, double lineSearchMaximumStep=1e20, double lineSearchAccuracy=1e-4) Limited memory Broyden Fletcher Goldfarb Shannon minimization without bounds. The default parameters utilize LBFGSB in unbounded mode. This version is from LibLBFGS. There are upto 3 stopping criteria: the solution accuracy which is the magnitude of the gradient the delta convergence which ensures the decrease of the metric maximum number of iterations See: itk::LBFGS2Optimizerv4
- 
setOptimizerAsLBFGS2public void setOptimizerAsLBFGS2(double solutionAccuracy, long numberOfIterations, long hessianApproximateAccuracy, long deltaConvergenceDistance, double deltaConvergenceTolerance, long lineSearchMaximumEvaluations, double lineSearchMinimumStep) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsLBFGS2(double solutionAccuracy=1e-5, unsigned int numberOfIterations=0, unsigned int hessianApproximateAccuracy=6, unsigned int deltaConvergenceDistance=0, double deltaConvergenceTolerance=1e-5, unsigned int lineSearchMaximumEvaluations=40, double lineSearchMinimumStep=1e-20, double lineSearchMaximumStep=1e20, double lineSearchAccuracy=1e-4) Limited memory Broyden Fletcher Goldfarb Shannon minimization without bounds. The default parameters utilize LBFGSB in unbounded mode. This version is from LibLBFGS. There are upto 3 stopping criteria: the solution accuracy which is the magnitude of the gradient the delta convergence which ensures the decrease of the metric maximum number of iterations See: itk::LBFGS2Optimizerv4
- 
setOptimizerAsLBFGS2public void setOptimizerAsLBFGS2(double solutionAccuracy, long numberOfIterations, long hessianApproximateAccuracy, long deltaConvergenceDistance, double deltaConvergenceTolerance, long lineSearchMaximumEvaluations) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsLBFGS2(double solutionAccuracy=1e-5, unsigned int numberOfIterations=0, unsigned int hessianApproximateAccuracy=6, unsigned int deltaConvergenceDistance=0, double deltaConvergenceTolerance=1e-5, unsigned int lineSearchMaximumEvaluations=40, double lineSearchMinimumStep=1e-20, double lineSearchMaximumStep=1e20, double lineSearchAccuracy=1e-4) Limited memory Broyden Fletcher Goldfarb Shannon minimization without bounds. The default parameters utilize LBFGSB in unbounded mode. This version is from LibLBFGS. There are upto 3 stopping criteria: the solution accuracy which is the magnitude of the gradient the delta convergence which ensures the decrease of the metric maximum number of iterations See: itk::LBFGS2Optimizerv4
- 
setOptimizerAsLBFGS2public void setOptimizerAsLBFGS2(double solutionAccuracy, long numberOfIterations, long hessianApproximateAccuracy, long deltaConvergenceDistance, double deltaConvergenceTolerance) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsLBFGS2(double solutionAccuracy=1e-5, unsigned int numberOfIterations=0, unsigned int hessianApproximateAccuracy=6, unsigned int deltaConvergenceDistance=0, double deltaConvergenceTolerance=1e-5, unsigned int lineSearchMaximumEvaluations=40, double lineSearchMinimumStep=1e-20, double lineSearchMaximumStep=1e20, double lineSearchAccuracy=1e-4) Limited memory Broyden Fletcher Goldfarb Shannon minimization without bounds. The default parameters utilize LBFGSB in unbounded mode. This version is from LibLBFGS. There are upto 3 stopping criteria: the solution accuracy which is the magnitude of the gradient the delta convergence which ensures the decrease of the metric maximum number of iterations See: itk::LBFGS2Optimizerv4
- 
setOptimizerAsLBFGS2public void setOptimizerAsLBFGS2(double solutionAccuracy, long numberOfIterations, long hessianApproximateAccuracy, long deltaConvergenceDistance) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsLBFGS2(double solutionAccuracy=1e-5, unsigned int numberOfIterations=0, unsigned int hessianApproximateAccuracy=6, unsigned int deltaConvergenceDistance=0, double deltaConvergenceTolerance=1e-5, unsigned int lineSearchMaximumEvaluations=40, double lineSearchMinimumStep=1e-20, double lineSearchMaximumStep=1e20, double lineSearchAccuracy=1e-4) Limited memory Broyden Fletcher Goldfarb Shannon minimization without bounds. The default parameters utilize LBFGSB in unbounded mode. This version is from LibLBFGS. There are upto 3 stopping criteria: the solution accuracy which is the magnitude of the gradient the delta convergence which ensures the decrease of the metric maximum number of iterations See: itk::LBFGS2Optimizerv4
- 
setOptimizerAsLBFGS2public void setOptimizerAsLBFGS2(double solutionAccuracy, long numberOfIterations, long hessianApproximateAccuracy) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsLBFGS2(double solutionAccuracy=1e-5, unsigned int numberOfIterations=0, unsigned int hessianApproximateAccuracy=6, unsigned int deltaConvergenceDistance=0, double deltaConvergenceTolerance=1e-5, unsigned int lineSearchMaximumEvaluations=40, double lineSearchMinimumStep=1e-20, double lineSearchMaximumStep=1e20, double lineSearchAccuracy=1e-4) Limited memory Broyden Fletcher Goldfarb Shannon minimization without bounds. The default parameters utilize LBFGSB in unbounded mode. This version is from LibLBFGS. There are upto 3 stopping criteria: the solution accuracy which is the magnitude of the gradient the delta convergence which ensures the decrease of the metric maximum number of iterations See: itk::LBFGS2Optimizerv4
- 
setOptimizerAsLBFGS2public void setOptimizerAsLBFGS2(double solutionAccuracy, long numberOfIterations) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsLBFGS2(double solutionAccuracy=1e-5, unsigned int numberOfIterations=0, unsigned int hessianApproximateAccuracy=6, unsigned int deltaConvergenceDistance=0, double deltaConvergenceTolerance=1e-5, unsigned int lineSearchMaximumEvaluations=40, double lineSearchMinimumStep=1e-20, double lineSearchMaximumStep=1e20, double lineSearchAccuracy=1e-4) Limited memory Broyden Fletcher Goldfarb Shannon minimization without bounds. The default parameters utilize LBFGSB in unbounded mode. This version is from LibLBFGS. There are upto 3 stopping criteria: the solution accuracy which is the magnitude of the gradient the delta convergence which ensures the decrease of the metric maximum number of iterations See: itk::LBFGS2Optimizerv4
- 
setOptimizerAsLBFGS2public void setOptimizerAsLBFGS2(double solutionAccuracy) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsLBFGS2(double solutionAccuracy=1e-5, unsigned int numberOfIterations=0, unsigned int hessianApproximateAccuracy=6, unsigned int deltaConvergenceDistance=0, double deltaConvergenceTolerance=1e-5, unsigned int lineSearchMaximumEvaluations=40, double lineSearchMinimumStep=1e-20, double lineSearchMaximumStep=1e20, double lineSearchAccuracy=1e-4) Limited memory Broyden Fletcher Goldfarb Shannon minimization without bounds. The default parameters utilize LBFGSB in unbounded mode. This version is from LibLBFGS. There are upto 3 stopping criteria: the solution accuracy which is the magnitude of the gradient the delta convergence which ensures the decrease of the metric maximum number of iterations See: itk::LBFGS2Optimizerv4
- 
setOptimizerAsLBFGS2public void setOptimizerAsLBFGS2()Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsLBFGS2(double solutionAccuracy=1e-5, unsigned int numberOfIterations=0, unsigned int hessianApproximateAccuracy=6, unsigned int deltaConvergenceDistance=0, double deltaConvergenceTolerance=1e-5, unsigned int lineSearchMaximumEvaluations=40, double lineSearchMinimumStep=1e-20, double lineSearchMaximumStep=1e20, double lineSearchAccuracy=1e-4) Limited memory Broyden Fletcher Goldfarb Shannon minimization without bounds. The default parameters utilize LBFGSB in unbounded mode. This version is from LibLBFGS. There are upto 3 stopping criteria: the solution accuracy which is the magnitude of the gradient the delta convergence which ensures the decrease of the metric maximum number of iterations See: itk::LBFGS2Optimizerv4
- 
setOptimizerAsExhaustiveSelf& itk::simple::ImageRegistrationMethod::SetOptimizerAsExhaustive(const std::vector< unsigned int > &numberOfSteps, double stepLength=1.0) Set the optimizer to sample the metric at regular steps. At each iteration the GetOptimizerIteration, can be used to index into the sampling grid along with the GetCurrentMetricValue. The resulting transform and value at the end of execution is the best location. The OptimizerScales can be used to perform anisotropic sampling. This optimizer is not suitable for use in conjunction with the multiple scales. See: itk::ExhaustiveOptimizerv4
- 
setOptimizerAsExhaustiveSelf& itk::simple::ImageRegistrationMethod::SetOptimizerAsExhaustive(const std::vector< unsigned int > &numberOfSteps, double stepLength=1.0) Set the optimizer to sample the metric at regular steps. At each iteration the GetOptimizerIteration, can be used to index into the sampling grid along with the GetCurrentMetricValue. The resulting transform and value at the end of execution is the best location. The OptimizerScales can be used to perform anisotropic sampling. This optimizer is not suitable for use in conjunction with the multiple scales. See: itk::ExhaustiveOptimizerv4
- 
setOptimizerAsAmoebapublic void setOptimizerAsAmoeba(double simplexDelta, long numberOfIterations, double parametersConvergenceTolerance, double functionConvergenceTolerance, boolean withRestarts) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsAmoeba(double simplexDelta, unsigned int numberOfIterations, double parametersConvergenceTolerance=1e-8, double functionConvergenceTolerance=1e-4, bool withRestarts=false) Set optimizer to Nelder-Mead downhill simplex algorithm. The simplexDelta is the value that is added and subtracted to the initial parameters to create the initial simplex. The simplexDelta can be indirectly set per parameter by the optimizer parameter scaling either manually or by using an estimator. See: ImageRegistrationMethod::SetOptimizerScales itk::AmoebaOptimizerv4
- 
setOptimizerAsAmoebapublic void setOptimizerAsAmoeba(double simplexDelta, long numberOfIterations, double parametersConvergenceTolerance, double functionConvergenceTolerance) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsAmoeba(double simplexDelta, unsigned int numberOfIterations, double parametersConvergenceTolerance=1e-8, double functionConvergenceTolerance=1e-4, bool withRestarts=false) Set optimizer to Nelder-Mead downhill simplex algorithm. The simplexDelta is the value that is added and subtracted to the initial parameters to create the initial simplex. The simplexDelta can be indirectly set per parameter by the optimizer parameter scaling either manually or by using an estimator. See: ImageRegistrationMethod::SetOptimizerScales itk::AmoebaOptimizerv4
- 
setOptimizerAsAmoebapublic void setOptimizerAsAmoeba(double simplexDelta, long numberOfIterations, double parametersConvergenceTolerance) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsAmoeba(double simplexDelta, unsigned int numberOfIterations, double parametersConvergenceTolerance=1e-8, double functionConvergenceTolerance=1e-4, bool withRestarts=false) Set optimizer to Nelder-Mead downhill simplex algorithm. The simplexDelta is the value that is added and subtracted to the initial parameters to create the initial simplex. The simplexDelta can be indirectly set per parameter by the optimizer parameter scaling either manually or by using an estimator. See: ImageRegistrationMethod::SetOptimizerScales itk::AmoebaOptimizerv4
- 
setOptimizerAsAmoebapublic void setOptimizerAsAmoeba(double simplexDelta, long numberOfIterations) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsAmoeba(double simplexDelta, unsigned int numberOfIterations, double parametersConvergenceTolerance=1e-8, double functionConvergenceTolerance=1e-4, bool withRestarts=false) Set optimizer to Nelder-Mead downhill simplex algorithm. The simplexDelta is the value that is added and subtracted to the initial parameters to create the initial simplex. The simplexDelta can be indirectly set per parameter by the optimizer parameter scaling either manually or by using an estimator. See: ImageRegistrationMethod::SetOptimizerScales itk::AmoebaOptimizerv4
- 
setOptimizerWeights
- 
getOptimizerWeights
- 
setOptimizerAsPowellpublic void setOptimizerAsPowell(long numberOfIterations, long maximumLineIterations, double stepLength, double stepTolerance, double valueTolerance) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsPowell(unsigned int numberOfIterations=100, unsigned int maximumLineIterations=100, double stepLength=1, double stepTolerance=1e-6, double valueTolerance=1e-6) Powell optimization using Brent line search. See: itk::PowellOptimizerv4
- 
setOptimizerAsPowellpublic void setOptimizerAsPowell(long numberOfIterations, long maximumLineIterations, double stepLength, double stepTolerance) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsPowell(unsigned int numberOfIterations=100, unsigned int maximumLineIterations=100, double stepLength=1, double stepTolerance=1e-6, double valueTolerance=1e-6) Powell optimization using Brent line search. See: itk::PowellOptimizerv4
- 
setOptimizerAsPowellpublic void setOptimizerAsPowell(long numberOfIterations, long maximumLineIterations, double stepLength) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsPowell(unsigned int numberOfIterations=100, unsigned int maximumLineIterations=100, double stepLength=1, double stepTolerance=1e-6, double valueTolerance=1e-6) Powell optimization using Brent line search. See: itk::PowellOptimizerv4
- 
setOptimizerAsPowellpublic void setOptimizerAsPowell(long numberOfIterations, long maximumLineIterations) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsPowell(unsigned int numberOfIterations=100, unsigned int maximumLineIterations=100, double stepLength=1, double stepTolerance=1e-6, double valueTolerance=1e-6) Powell optimization using Brent line search. See: itk::PowellOptimizerv4
- 
setOptimizerAsPowellpublic void setOptimizerAsPowell(long numberOfIterations) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsPowell(unsigned int numberOfIterations=100, unsigned int maximumLineIterations=100, double stepLength=1, double stepTolerance=1e-6, double valueTolerance=1e-6) Powell optimization using Brent line search. See: itk::PowellOptimizerv4
- 
setOptimizerAsPowellpublic void setOptimizerAsPowell()Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsPowell(unsigned int numberOfIterations=100, unsigned int maximumLineIterations=100, double stepLength=1, double stepTolerance=1e-6, double valueTolerance=1e-6) Powell optimization using Brent line search. See: itk::PowellOptimizerv4
- 
setOptimizerAsOnePlusOneEvolutionarypublic void setOptimizerAsOnePlusOneEvolutionary(long numberOfIterations, double epsilon, double initialRadius, double growthFactor, double shrinkFactor, long seed) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsOnePlusOneEvolutionary(unsigned int numberOfIterations=100, double epsilon=1.5e-4, double initialRadius=1.01, double growthFactor=-1.0, double shrinkFactor=-1.0, unsigned int seed=sitkWallClock) 1+1 evolutionary optimizer strategy. The seed parameter is used to seed the pseudo-random number generator. If the seed parameter is 0, then the wall clock is used to seed, otherwise the fixed seed is used for reproducible behavior. See: itk::OnePlusOneEvolutionaryOptimizerv4
- 
setOptimizerAsOnePlusOneEvolutionarypublic void setOptimizerAsOnePlusOneEvolutionary(long numberOfIterations, double epsilon, double initialRadius, double growthFactor, double shrinkFactor) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsOnePlusOneEvolutionary(unsigned int numberOfIterations=100, double epsilon=1.5e-4, double initialRadius=1.01, double growthFactor=-1.0, double shrinkFactor=-1.0, unsigned int seed=sitkWallClock) 1+1 evolutionary optimizer strategy. The seed parameter is used to seed the pseudo-random number generator. If the seed parameter is 0, then the wall clock is used to seed, otherwise the fixed seed is used for reproducible behavior. See: itk::OnePlusOneEvolutionaryOptimizerv4
- 
setOptimizerAsOnePlusOneEvolutionarypublic void setOptimizerAsOnePlusOneEvolutionary(long numberOfIterations, double epsilon, double initialRadius, double growthFactor) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsOnePlusOneEvolutionary(unsigned int numberOfIterations=100, double epsilon=1.5e-4, double initialRadius=1.01, double growthFactor=-1.0, double shrinkFactor=-1.0, unsigned int seed=sitkWallClock) 1+1 evolutionary optimizer strategy. The seed parameter is used to seed the pseudo-random number generator. If the seed parameter is 0, then the wall clock is used to seed, otherwise the fixed seed is used for reproducible behavior. See: itk::OnePlusOneEvolutionaryOptimizerv4
- 
setOptimizerAsOnePlusOneEvolutionarypublic void setOptimizerAsOnePlusOneEvolutionary(long numberOfIterations, double epsilon, double initialRadius) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsOnePlusOneEvolutionary(unsigned int numberOfIterations=100, double epsilon=1.5e-4, double initialRadius=1.01, double growthFactor=-1.0, double shrinkFactor=-1.0, unsigned int seed=sitkWallClock) 1+1 evolutionary optimizer strategy. The seed parameter is used to seed the pseudo-random number generator. If the seed parameter is 0, then the wall clock is used to seed, otherwise the fixed seed is used for reproducible behavior. See: itk::OnePlusOneEvolutionaryOptimizerv4
- 
setOptimizerAsOnePlusOneEvolutionarypublic void setOptimizerAsOnePlusOneEvolutionary(long numberOfIterations, double epsilon) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsOnePlusOneEvolutionary(unsigned int numberOfIterations=100, double epsilon=1.5e-4, double initialRadius=1.01, double growthFactor=-1.0, double shrinkFactor=-1.0, unsigned int seed=sitkWallClock) 1+1 evolutionary optimizer strategy. The seed parameter is used to seed the pseudo-random number generator. If the seed parameter is 0, then the wall clock is used to seed, otherwise the fixed seed is used for reproducible behavior. See: itk::OnePlusOneEvolutionaryOptimizerv4
- 
setOptimizerAsOnePlusOneEvolutionarypublic void setOptimizerAsOnePlusOneEvolutionary(long numberOfIterations) Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsOnePlusOneEvolutionary(unsigned int numberOfIterations=100, double epsilon=1.5e-4, double initialRadius=1.01, double growthFactor=-1.0, double shrinkFactor=-1.0, unsigned int seed=sitkWallClock) 1+1 evolutionary optimizer strategy. The seed parameter is used to seed the pseudo-random number generator. If the seed parameter is 0, then the wall clock is used to seed, otherwise the fixed seed is used for reproducible behavior. See: itk::OnePlusOneEvolutionaryOptimizerv4
- 
setOptimizerAsOnePlusOneEvolutionarypublic void setOptimizerAsOnePlusOneEvolutionary()Self& itk::simple::ImageRegistrationMethod::SetOptimizerAsOnePlusOneEvolutionary(unsigned int numberOfIterations=100, double epsilon=1.5e-4, double initialRadius=1.01, double growthFactor=-1.0, double shrinkFactor=-1.0, unsigned int seed=sitkWallClock) 1+1 evolutionary optimizer strategy. The seed parameter is used to seed the pseudo-random number generator. If the seed parameter is 0, then the wall clock is used to seed, otherwise the fixed seed is used for reproducible behavior. See: itk::OnePlusOneEvolutionaryOptimizerv4
- 
setOptimizerScalesSelf& itk::simple::ImageRegistrationMethod::SetOptimizerScales(const std::vector< double > &scales) Manually set per parameter weighting for the transform parameters.
- 
setOptimizerScalesFromJacobianpublic void setOptimizerScalesFromJacobian(long centralRegionRadius) Self& itk::simple::ImageRegistrationMethod::SetOptimizerScalesFromJacobian(unsigned int centralRegionRadius=5) Estimate scales from Jacobian norms. This scales estimator works well with versor based transforms. See: itk::RegistrationParameterScalesFromJacobian
- 
setOptimizerScalesFromJacobianpublic void setOptimizerScalesFromJacobian()Self& itk::simple::ImageRegistrationMethod::SetOptimizerScalesFromJacobian(unsigned int centralRegionRadius=5) Estimate scales from Jacobian norms. This scales estimator works well with versor based transforms. See: itk::RegistrationParameterScalesFromJacobian
- 
setOptimizerScalesFromIndexShiftpublic void setOptimizerScalesFromIndexShift(long centralRegionRadius, double smallParameterVariation) Self& itk::simple::ImageRegistrationMethod::SetOptimizerScalesFromIndexShift(unsigned int centralRegionRadius=5, double smallParameterVariation=0.01) Estimate scales from maximum voxel shift in index space cause by parameter change. See: itk::RegistrationParameterScalesFromIndexShift
- 
setOptimizerScalesFromIndexShiftpublic void setOptimizerScalesFromIndexShift(long centralRegionRadius) Self& itk::simple::ImageRegistrationMethod::SetOptimizerScalesFromIndexShift(unsigned int centralRegionRadius=5, double smallParameterVariation=0.01) Estimate scales from maximum voxel shift in index space cause by parameter change. See: itk::RegistrationParameterScalesFromIndexShift
- 
setOptimizerScalesFromIndexShiftpublic void setOptimizerScalesFromIndexShift()Self& itk::simple::ImageRegistrationMethod::SetOptimizerScalesFromIndexShift(unsigned int centralRegionRadius=5, double smallParameterVariation=0.01) Estimate scales from maximum voxel shift in index space cause by parameter change. See: itk::RegistrationParameterScalesFromIndexShift
- 
setOptimizerScalesFromPhysicalShiftpublic void setOptimizerScalesFromPhysicalShift(long centralRegionRadius, double smallParameterVariation) Self& itk::simple::ImageRegistrationMethod::SetOptimizerScalesFromPhysicalShift(unsigned int centralRegionRadius=5, double smallParameterVariation=0.01) Estimating scales of transform parameters a step sizes, from the maximum voxel shift in physical space caused by a parameter change. See: itk::RegistrationParameterScalesFromPhysicalShift
- 
setOptimizerScalesFromPhysicalShiftpublic void setOptimizerScalesFromPhysicalShift(long centralRegionRadius) Self& itk::simple::ImageRegistrationMethod::SetOptimizerScalesFromPhysicalShift(unsigned int centralRegionRadius=5, double smallParameterVariation=0.01) Estimating scales of transform parameters a step sizes, from the maximum voxel shift in physical space caused by a parameter change. See: itk::RegistrationParameterScalesFromPhysicalShift
- 
setOptimizerScalesFromPhysicalShiftpublic void setOptimizerScalesFromPhysicalShift()Self& itk::simple::ImageRegistrationMethod::SetOptimizerScalesFromPhysicalShift(unsigned int centralRegionRadius=5, double smallParameterVariation=0.01) Estimating scales of transform parameters a step sizes, from the maximum voxel shift in physical space caused by a parameter change. See: itk::RegistrationParameterScalesFromPhysicalShift
- 
setMetricFixedMaskSelf& itk::simple::ImageRegistrationMethod::SetMetricFixedMask(const Image &binaryMask) Set an image mask in order to restrict the sampled points for the metric. The image is expected to be in the same physical space as the FixedImage, and if the pixel type is not UInt8 than the image will base cast. See: itk::ImageToImageMetricv4::SetFixedImageMask
- 
setMetricMovingMaskSelf& itk::simple::ImageRegistrationMethod::SetMetricMovingMask(const Image &binaryMask) Set an image mask in order to restrict the sampled points for the metric in the moving image space. The image is expected to be in the same physical space as the MovingImage, and if the pixel type is not UInt8 than the image will base cast. See: itk::ImageToImageMetricv4::SetMovingImageMask
- 
setMetricSamplingPercentagepublic void setMetricSamplingPercentage(double percentage, long seed) 
- 
setMetricSamplingPercentagepublic void setMetricSamplingPercentage(double percentage) 
- 
setMetricSamplingPercentagePerLevel
- 
setMetricSamplingPercentagePerLevel
- 
getMetricSamplingPercentagePerLevelconst std::vector<double>& itk::simple::ImageRegistrationMethod::GetMetricSamplingPercentagePerLevel() const Get the percentage of pixels used for metric evaluation.
- 
setMetricSamplingStrategySelf& itk::simple::ImageRegistrationMethod::SetMetricSamplingStrategy(MetricSamplingStrategyType strategy) Set sampling strategy for sample generation. See: itk::ImageRegistrationMethodv4::SetMetricSamplingStrategy
- 
setMetricUseFixedImageGradientFilterpublic void setMetricUseFixedImageGradientFilter(boolean arg0) 
- 
metricUseFixedImageGradientFilterOnpublic void metricUseFixedImageGradientFilterOn()
- 
metricUseFixedImageGradientFilterOffpublic void metricUseFixedImageGradientFilterOff()
- 
setMetricUseMovingImageGradientFilterpublic void setMetricUseMovingImageGradientFilter(boolean arg0) 
- 
metricUseMovingImageGradientFilterOnpublic void metricUseMovingImageGradientFilterOn()
- 
metricUseMovingImageGradientFilterOffpublic void metricUseMovingImageGradientFilterOff()
- 
setShrinkFactorsPerLevelSelf& itk::simple::ImageRegistrationMethod::SetShrinkFactorsPerLevel(const std::vector< unsigned int > &shrinkFactors) Set the isotropic shrink factors for each level. The virtual domain image is shrunk by this factor relative to the full size of the original virtual domain. See: itk::ImageRegistrationMethodv4::SetShrinkFactorsPerLevel
- 
setSmoothingSigmasPerLevelSelf& itk::simple::ImageRegistrationMethod::SetSmoothingSigmasPerLevel(const std::vector< double > &smoothingSigmas) Set the sigmas of Gaussian used for smoothing. The smoothing is applied to both the fixed and the moving images at each level. The number of smoothing sigmas must match the number of shrink factors. See: itk::ImageRegistrationMethodv4::SetSmoothingSigmasPerLevel
- 
setSmoothingSigmasAreSpecifiedInPhysicalUnitspublic void setSmoothingSigmasAreSpecifiedInPhysicalUnits(boolean arg) 
- 
smoothingSigmasAreSpecifiedInPhysicalUnitsOnpublic void smoothingSigmasAreSpecifiedInPhysicalUnitsOn()
- 
smoothingSigmasAreSpecifiedInPhysicalUnitsOffpublic void smoothingSigmasAreSpecifiedInPhysicalUnitsOff()
- 
execute
- 
metricEvaluatedouble itk::simple::ImageRegistrationMethod::MetricEvaluate(const Image &fixed, const Image &moving) Get the value of the metric given the state of the method. Passing a fixed and moving image, this method constructs and configures a metric object to obtain the value. This will take into consideration the current transforms, metric, interpolator, and image masks. It does not take into consideration the sampling strategy, smoothing sigmas, or the shrink factors.
- 
getOptimizerIterationpublic long getOptimizerIteration()unsigned int itk::simple::ImageRegistrationMethod::GetOptimizerIteration() const Active measurements which can be obtained during call backs. This is a measurement. Its value is updated in the Execute methods, so the value will only be valid after an execution.
- 
getOptimizerPositionstd::vector<double> itk::simple::ImageRegistrationMethod::GetOptimizerPosition() const
- 
getOptimizerLearningRatepublic double getOptimizerLearningRate()double itk::simple::ImageRegistrationMethod::GetOptimizerLearningRate() const
- 
getOptimizerConvergenceValuepublic double getOptimizerConvergenceValue()double itk::simple::ImageRegistrationMethod::GetOptimizerConvergenceValue() const
- 
getMetricValuepublic double getMetricValue()double itk::simple::ImageRegistrationMethod::GetMetricValue() const
- 
getMetricNumberOfValidPointsuint64_t itk::simple::ImageRegistrationMethod::GetMetricNumberOfValidPoints() const Current number of points used of metric evaluation This is a active measurement connected to the registration processes during registration. This number is number of point in the virtual domain which overlap the fixed image and the moving image. It is valid for sparse or dense sampling. After execution of registration this will contain the last value.
- 
getCurrentLevelpublic long getCurrentLevel()unsigned int itk::simple::ImageRegistrationMethod::GetCurrentLevel() const
- 
getOptimizerScalesstd::vector<double> itk::simple::ImageRegistrationMethod::GetOptimizerScales() const Get the OptimizerScales. If the scales are explicitly set then this method returns those values. If an estimator is used then this is an active measurement returning the scales estimated by the estimator and is only available during execution.
- 
getOptimizerStopConditionDescriptionstd::string itk::simple::ImageRegistrationMethod::GetOptimizerStopConditionDescription() const Measurement updated at the end of execution.
- 
stopRegistrationpublic boolean stopRegistration()bool itk::simple::ImageRegistrationMethod::StopRegistration() Stop Registration if actively running. This is an active method which can be called during a callback. Invoking this method will halt the registration at the current iteration, if supported by the optimizer. The LBFGSB, LBFGS2, and the Amoeba optimizers do not support user stopping. If user stopping is not supported or the optimizer is available ( not executed ), then false will be returned.
 
-