18#ifndef itkCumulativeGaussianOptimizer_h
19#define itkCumulativeGaussianOptimizer_h
23#include "ITKOptimizersExport.h"
71 itkSetMacro(DifferenceTolerance,
double);
72 itkGetMacro(DifferenceTolerance,
double);
73 itkSetMacro(Verbose,
bool);
74 itkGetMacro(Verbose,
bool);
75 itkBooleanMacro(Verbose);
76 itkGetMacro(ComputedMean,
double);
77 itkGetMacro(ComputedStandardDeviation,
double);
78 itkGetMacro(UpperAsymptote,
double);
79 itkGetMacro(LowerAsymptote,
double);
81 itkGetMacro(FitError,
double);
107 double m_DifferenceTolerance{};
110 double m_ComputedMean{};
113 double m_ComputedStandardDeviation{};
116 double m_ComputedAmplitude{};
120 double m_ComputedTransitionHeight{};
123 double m_UpperAsymptote{};
126 double m_LowerAsymptote{};
129 double m_OffsetForMean{};
152 int startingPointForInsertion)
const;
180 std::ostringstream m_StopConditionDescription{};
Cost function for the Cumulative Gaussian Optimizer.
This is an optimizer specific to estimating the parameters of Cumulative Gaussian sampled data.
void PrintComputedParameters() const
void FindParametersOfGaussian(MeasureType *sampledGaussianArray)
MeasureType * RecalculateExtendedArrayFromGaussianParameters(MeasureType *originalArray, MeasureType *extendedArray, int startingPointForInsertion) const
void PrintSelf(std::ostream &os, Indent indent) const override
void MeasureGaussianParameters(MeasureType *array)
void PrintArray(MeasureType *array)
void StartOptimization() override
~CumulativeGaussianOptimizer() override
double VerticalBestShift(MeasureType *originalArray, MeasureType *newArray)
void PrintComputedParameterHeader()
std::string GetStopConditionDescription() const override
MeasureType * ExtendGaussian(MeasureType *originalArray, MeasureType *extendedArray, int startingPointForInsertion)
double FindAverageSumOfSquaredDifferences(MeasureType *array1, MeasureType *array2)
CumulativeGaussianOptimizer()
void SetDataArray(MeasureType *cumGaussianArray)
Control indentation during Print() invocation.
Light weight base class for most itk classes.
This class is a base for the Optimization methods that optimize a multiple valued function.
The "itk" namespace contains all Insight Segmentation and Registration Toolkit (ITK) classes....