13 #ifndef __itkShortestPathCostFunctionLiveWire_h
14 #define __itkShortestPathCostFunctionLiveWire_h
18 #include "itkImageRegionConstIterator.h"
39 template <
class TInputImageType>
51 itkFactorylessNewMacro(
Self);
64 typedef typename TInputImageType::IndexType
IndexType;
72 double GetMinCost()
override;
75 void Initialize()
override;
78 virtual void AddRepulsivePoint(
const IndexType &index);
81 virtual void RemoveRepulsivePoint(
const IndexType &index);
84 virtual void ClearRepulsivePoints();
89 void SetImage(
const TInputImageType *_arg)
override;
93 this->m_CostMap = costMap;
94 this->m_UseCostMap =
true;
95 this->m_MaxMapCosts = -1;
99 void SetUseCostMap(
bool useCostMap) { this->m_UseCostMap = useCostMap; }
118 static double Gaussian(
double x,
double xOfGaussian,
double yOfGaussian);
129 FloatImageType::Pointer m_GradientMagnitudeImage;
156 double SigmoidFunction(
double I,
double max,
double min,
double alpha,
double beta);
161 #ifndef ITK_MANUAL_INSTANTIATION
162 #include "itkShortestPathCostFunctionLiveWire.txx"