Package org.itk.simple
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 Summary
Nested ClassesModifier and TypeClassDescriptionstatic final class
static final class
-
Field Summary
Fields inherited from class org.itk.simple.ProcessObject
swigCMemOwn
-
Constructor Summary
ConstructorsModifierConstructorDescriptionitk::simple::ImageRegistrationMethod::ImageRegistrationMethod()protected
ImageRegistrationMethod
(long cPtr, boolean cMemoryOwn) -
Method Summary
Modifier and TypeMethodDescriptionvoid
delete()
itk::simple::ImageRegistrationMethod::~ImageRegistrationMethod() overrideTransform itk::simple::ImageRegistrationMethod::Execute(const Image &fixed, const Image &moving) Optimize the configured registration problem.protected void
finalize()
protected static long
long
unsigned int itk::simple::ImageRegistrationMethod::GetCurrentLevel() constboolean
long
uint64_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.double
double itk::simple::ImageRegistrationMethod::GetMetricValue() constgetName()
std::string itk::simple::ImageRegistrationMethod::GetName() const override return user readable name for the filterdouble
double itk::simple::ImageRegistrationMethod::GetOptimizerConvergenceValue() constlong
unsigned int itk::simple::ImageRegistrationMethod::GetOptimizerIteration() const Active measurements which can be obtained during call backs.double
double 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.double
metricEvaluate
(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.void
void
void
void
void
setFixedInitialTransform
(Transform transform) void
setInitialTransform
(Transform transform) void
setInitialTransform
(Transform transform, boolean inPlace) void
setInitialTransformAsBSpline
(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.void
setInitialTransformAsBSpline
(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.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.void
setInterpolator
(InterpolatorEnum Interpolator) 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.void
Self& itk::simple::ImageRegistrationMethod::SetMetricAsCorrelation() Use negative normalized cross correlation image metric.void
Self& itk::simple::ImageRegistrationMethod::SetMetricAsDemons(double intensityDifferenceThreshold=0.001) Use demons image metric.void
setMetricAsDemons
(double intensityDifferenceThreshold) Self& itk::simple::ImageRegistrationMethod::SetMetricAsDemons(double intensityDifferenceThreshold=0.001) Use demons image metric.void
Self& itk::simple::ImageRegistrationMethod::SetMetricAsJointHistogramMutualInformation(unsigned int numberOfHistogramBins=20, double varianceForJointPDFSmoothing=1.5) Use mutual information between two images.void
setMetricAsJointHistogramMutualInformation
(long numberOfHistogramBins) Self& itk::simple::ImageRegistrationMethod::SetMetricAsJointHistogramMutualInformation(unsigned int numberOfHistogramBins=20, double varianceForJointPDFSmoothing=1.5) Use mutual information between two images.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.void
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.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.void
Self& itk::simple::ImageRegistrationMethod::SetMetricAsMeanSquares() Use negative means squares image metric.void
setMetricFixedMask
(Image binaryMask) Self& itk::simple::ImageRegistrationMethod::SetMetricFixedMask(const Image &binaryMask) Set an image mask in order to restrict the sampled points for the metric.void
setMetricMovingMask
(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.void
setMetricSamplingPercentage
(double percentage) void
setMetricSamplingPercentage
(double percentage, long seed) void
setMetricSamplingPercentagePerLevel
(VectorDouble percentage) void
setMetricSamplingPercentagePerLevel
(VectorDouble percentage, long seed) void
Self& itk::simple::ImageRegistrationMethod::SetMetricSamplingStrategy(MetricSamplingStrategyType strategy) Set sampling strategy for sample generation.void
setMetricUseFixedImageGradientFilter
(boolean arg0) void
setMetricUseMovingImageGradientFilter
(boolean arg0) void
setMovingInitialTransform
(Transform transform) 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.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.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.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.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.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.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.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.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.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.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.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.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.void
setOptimizerAsExhaustive
(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.void
setOptimizerAsExhaustive
(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.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.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.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.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.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.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.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.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.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.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.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.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.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.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.void
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.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.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.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.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.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.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.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.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.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.void
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.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.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.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.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.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.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.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.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.void
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.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.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.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.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.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.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.void
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.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.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.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.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.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.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.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.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.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.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.void
setOptimizerScales
(VectorDouble scales) Self& itk::simple::ImageRegistrationMethod::SetOptimizerScales(const std::vector< double > &scales) Manually set per parameter weighting for the transform parameters.void
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.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.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.void
Self& itk::simple::ImageRegistrationMethod::SetOptimizerScalesFromJacobian(unsigned int centralRegionRadius=5) Estimate scales from Jacobian norms.void
setOptimizerScalesFromJacobian
(long centralRegionRadius) Self& itk::simple::ImageRegistrationMethod::SetOptimizerScalesFromJacobian(unsigned int centralRegionRadius=5) Estimate scales from Jacobian norms.void
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.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.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.void
setOptimizerWeights
(VectorDouble weights) void
setShrinkFactorsPerLevel
(VectorUInt32 shrinkFactors) Self& itk::simple::ImageRegistrationMethod::SetShrinkFactorsPerLevel(const std::vector< unsigned int > &shrinkFactors) Set the isotropic shrink factors for each level.void
setSmoothingSigmasAreSpecifiedInPhysicalUnits
(boolean arg) void
setSmoothingSigmasPerLevel
(VectorDouble smoothingSigmas) Self& itk::simple::ImageRegistrationMethod::SetSmoothingSigmasPerLevel(const std::vector< double > &smoothingSigmas) Set the sigmas of Gaussian used for smoothing.void
setVirtualDomain
(VectorUInt32 virtualSize, VectorDouble virtualOrigin, VectorDouble virtualSpacing, VectorDouble virtualDirection) void
setVirtualDomainFromImage
(Image virtualImage) void
void
boolean
bool itk::simple::ImageRegistrationMethod::StopRegistration() Stop Registration if actively running.protected static long
toString()
std::string itk::simple::ImageRegistrationMethod::ToString() const override Print the information about the object to a string.Methods inherited from class org.itk.simple.ProcessObject
abort, 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
-
ImageRegistrationMethod
protected ImageRegistrationMethod(long cPtr, boolean cMemoryOwn) -
ImageRegistrationMethod
public ImageRegistrationMethod()itk::simple::ImageRegistrationMethod::ImageRegistrationMethod()
-
-
Method Details
-
getCPtr
-
swigRelease
-
finalize
protected void finalize()- Overrides:
finalize
in classProcessObject
-
delete
public void delete()itk::simple::ImageRegistrationMethod::~ImageRegistrationMethod() override- Overrides:
delete
in classProcessObject
-
getName
std::string itk::simple::ImageRegistrationMethod::GetName() const override return user readable name for the filter- Overrides:
getName
in classProcessObject
-
toString
std::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:
toString
in classProcessObject
-
getInterpolator
-
setInterpolator
-
setInitialTransform
-
setInitialTransform
-
getInitialTransform
-
getInitialTransformInPlace
public boolean getInitialTransformInPlace() -
setInitialTransformAsBSpline
public 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 -
setInitialTransformAsBSpline
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 -
setInitialTransformAsBSpline
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 -
setMovingInitialTransform
-
getMovingInitialTransform
-
setFixedInitialTransform
-
getFixedInitialTransform
-
setVirtualDomain
public void setVirtualDomain(VectorUInt32 virtualSize, VectorDouble virtualOrigin, VectorDouble virtualSpacing, VectorDouble virtualDirection) -
setVirtualDomainFromImage
-
setMetricAsANTSNeighborhoodCorrelation
public 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 -
setMetricAsCorrelation
public void setMetricAsCorrelation()Self& itk::simple::ImageRegistrationMethod::SetMetricAsCorrelation() Use negative normalized cross correlation image metric. See: itk::CorrelationImageToImageMetricv4 -
setMetricAsDemons
public void setMetricAsDemons(double intensityDifferenceThreshold) Self& itk::simple::ImageRegistrationMethod::SetMetricAsDemons(double intensityDifferenceThreshold=0.001) Use demons image metric. See: itk::DemonsImageToImageMetricv4 -
setMetricAsDemons
public void setMetricAsDemons()Self& itk::simple::ImageRegistrationMethod::SetMetricAsDemons(double intensityDifferenceThreshold=0.001) Use demons image metric. See: itk::DemonsImageToImageMetricv4 -
setMetricAsJointHistogramMutualInformation
public 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 -
setMetricAsJointHistogramMutualInformation
public 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 -
setMetricAsJointHistogramMutualInformation
public void setMetricAsJointHistogramMutualInformation()Self& itk::simple::ImageRegistrationMethod::SetMetricAsJointHistogramMutualInformation(unsigned int numberOfHistogramBins=20, double varianceForJointPDFSmoothing=1.5) Use mutual information between two images. See: itk::JointHistogramMutualInformationImageToImageMetricv4 -
setMetricAsMeanSquares
public void setMetricAsMeanSquares()Self& itk::simple::ImageRegistrationMethod::SetMetricAsMeanSquares() Use negative means squares image metric. See: itk::MeanSquaresImageToImageMetricv4 -
setMetricAsMattesMutualInformation
public 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 -
setMetricAsMattesMutualInformation
public 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 -
setOptimizerAsConjugateGradientLineSearch
public 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 -
setOptimizerAsConjugateGradientLineSearch
public 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 -
setOptimizerAsConjugateGradientLineSearch
public 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 -
setOptimizerAsConjugateGradientLineSearch
public 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 -
setOptimizerAsConjugateGradientLineSearch
public 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 -
setOptimizerAsConjugateGradientLineSearch
public 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 -
setOptimizerAsConjugateGradientLineSearch
public 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 -
setOptimizerAsConjugateGradientLineSearch
public 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 -
setOptimizerAsConjugateGradientLineSearch
public 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 -
setOptimizerAsRegularStepGradientDescent
public 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 -
setOptimizerAsRegularStepGradientDescent
public 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 -
setOptimizerAsRegularStepGradientDescent
public 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 -
setOptimizerAsRegularStepGradientDescent
public 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 -
setOptimizerAsRegularStepGradientDescent
public 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 -
setOptimizerAsGradientDescent
public 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 -
setOptimizerAsGradientDescent
public 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 -
setOptimizerAsGradientDescent
public 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 -
setOptimizerAsGradientDescent
public 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 -
setOptimizerAsGradientDescent
public 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 -
setOptimizerAsGradientDescentLineSearch
public 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 -
setOptimizerAsGradientDescentLineSearch
public 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 -
setOptimizerAsGradientDescentLineSearch
public 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 -
setOptimizerAsGradientDescentLineSearch
public 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 -
setOptimizerAsGradientDescentLineSearch
public 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 -
setOptimizerAsGradientDescentLineSearch
public 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 -
setOptimizerAsGradientDescentLineSearch
public 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 -
setOptimizerAsGradientDescentLineSearch
public 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 -
setOptimizerAsGradientDescentLineSearch
public 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 -
setOptimizerAsLBFGSB
public 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 -
setOptimizerAsLBFGSB
public 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 -
setOptimizerAsLBFGSB
public 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 -
setOptimizerAsLBFGSB
public 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 -
setOptimizerAsLBFGSB
public 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 -
setOptimizerAsLBFGSB
public 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 -
setOptimizerAsLBFGSB
public 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 -
setOptimizerAsLBFGSB
public 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 -
setOptimizerAsLBFGSB
public 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 -
setOptimizerAsLBFGS2
public 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 -
setOptimizerAsLBFGS2
public 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 -
setOptimizerAsLBFGS2
public 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 -
setOptimizerAsLBFGS2
public 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 -
setOptimizerAsLBFGS2
public 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 -
setOptimizerAsLBFGS2
public 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 -
setOptimizerAsLBFGS2
public 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 -
setOptimizerAsLBFGS2
public 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 -
setOptimizerAsLBFGS2
public 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 -
setOptimizerAsLBFGS2
public 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 -
setOptimizerAsExhaustive
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. 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 -
setOptimizerAsExhaustive
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. 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 -
setOptimizerAsAmoeba
public 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. See: itk::AmoebaOptimizerv4 -
setOptimizerAsAmoeba
public 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. See: itk::AmoebaOptimizerv4 -
setOptimizerAsAmoeba
public 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. See: itk::AmoebaOptimizerv4 -
setOptimizerAsAmoeba
public 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. See: itk::AmoebaOptimizerv4 -
setOptimizerWeights
-
getOptimizerWeights
-
setOptimizerAsPowell
public 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 -
setOptimizerAsPowell
public 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 -
setOptimizerAsPowell
public 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 -
setOptimizerAsPowell
public 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 -
setOptimizerAsPowell
public 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 -
setOptimizerAsPowell
public 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 -
setOptimizerAsOnePlusOneEvolutionary
public 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 -
setOptimizerAsOnePlusOneEvolutionary
public 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 -
setOptimizerAsOnePlusOneEvolutionary
public 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 -
setOptimizerAsOnePlusOneEvolutionary
public 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 -
setOptimizerAsOnePlusOneEvolutionary
public 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 -
setOptimizerAsOnePlusOneEvolutionary
public 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 -
setOptimizerAsOnePlusOneEvolutionary
public 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 -
setOptimizerScales
Self& itk::simple::ImageRegistrationMethod::SetOptimizerScales(const std::vector< double > &scales) Manually set per parameter weighting for the transform parameters. -
setOptimizerScalesFromJacobian
public 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 -
setOptimizerScalesFromJacobian
public 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 -
setOptimizerScalesFromIndexShift
public 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 -
setOptimizerScalesFromIndexShift
public 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 -
setOptimizerScalesFromIndexShift
public 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 -
setOptimizerScalesFromPhysicalShift
public 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 -
setOptimizerScalesFromPhysicalShift
public 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 -
setOptimizerScalesFromPhysicalShift
public 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 -
setMetricFixedMask
Self& 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 -
setMetricMovingMask
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. 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 -
setMetricSamplingPercentage
public void setMetricSamplingPercentage(double percentage, long seed) -
setMetricSamplingPercentage
public void setMetricSamplingPercentage(double percentage) -
setMetricSamplingPercentagePerLevel
-
setMetricSamplingPercentagePerLevel
-
getMetricSamplingPercentagePerLevel
const std::vector<double>& itk::simple::ImageRegistrationMethod::GetMetricSamplingPercentagePerLevel() const Get the percentage of pixels used for metric evaluation. -
setMetricSamplingStrategy
Self& itk::simple::ImageRegistrationMethod::SetMetricSamplingStrategy(MetricSamplingStrategyType strategy) Set sampling strategy for sample generation. See: itk::ImageRegistrationMethodv4::SetMetricSamplingStrategy -
setMetricUseFixedImageGradientFilter
public void setMetricUseFixedImageGradientFilter(boolean arg0) -
metricUseFixedImageGradientFilterOn
public void metricUseFixedImageGradientFilterOn() -
metricUseFixedImageGradientFilterOff
public void metricUseFixedImageGradientFilterOff() -
setMetricUseMovingImageGradientFilter
public void setMetricUseMovingImageGradientFilter(boolean arg0) -
metricUseMovingImageGradientFilterOn
public void metricUseMovingImageGradientFilterOn() -
metricUseMovingImageGradientFilterOff
public void metricUseMovingImageGradientFilterOff() -
setShrinkFactorsPerLevel
Self& 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 -
setSmoothingSigmasPerLevel
Self& 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 -
setSmoothingSigmasAreSpecifiedInPhysicalUnits
public void setSmoothingSigmasAreSpecifiedInPhysicalUnits(boolean arg) -
smoothingSigmasAreSpecifiedInPhysicalUnitsOn
public void smoothingSigmasAreSpecifiedInPhysicalUnitsOn() -
smoothingSigmasAreSpecifiedInPhysicalUnitsOff
public void smoothingSigmasAreSpecifiedInPhysicalUnitsOff() -
execute
Transform itk::simple::ImageRegistrationMethod::Execute(const Image &fixed, const Image &moving) Optimize the configured registration problem. -
metricEvaluate
double 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. -
getOptimizerIteration
public 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. -
getOptimizerPosition
std::vector<double> itk::simple::ImageRegistrationMethod::GetOptimizerPosition() const -
getOptimizerLearningRate
public double getOptimizerLearningRate()double itk::simple::ImageRegistrationMethod::GetOptimizerLearningRate() const -
getOptimizerConvergenceValue
public double getOptimizerConvergenceValue()double itk::simple::ImageRegistrationMethod::GetOptimizerConvergenceValue() const -
getMetricValue
public double getMetricValue()double itk::simple::ImageRegistrationMethod::GetMetricValue() const -
getMetricNumberOfValidPoints
public long getMetricNumberOfValidPoints()uint64_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. -
getCurrentLevel
public long getCurrentLevel()unsigned int itk::simple::ImageRegistrationMethod::GetCurrentLevel() const -
getOptimizerScales
std::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. -
getOptimizerStopConditionDescription
std::string itk::simple::ImageRegistrationMethod::GetOptimizerStopConditionDescription() const Measurement updated at the end of execution. -
stopRegistration
public 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.
-