18#ifndef itkVectorThresholdSegmentationLevelSetFunction_h
19#define itkVectorThresholdSegmentationLevelSetFunction_h
57template <
typename TImageType,
typename TFeatureImageType>
78 using typename Superclass::ImageType;
79 using typename Superclass::ScalarValueType;
80 using typename Superclass::FeatureScalarType;
81 using typename Superclass::RadiusType;
84 static constexpr unsigned int ImageDimension = Superclass::ImageDimension;
99 m_Mahalanobis->SetMean(mean);
101 const MeanVectorType &
104 return m_Mahalanobis->GetMean();
111 m_Mahalanobis->SetCovariance(cov);
113 const CovarianceMatrixType &
116 return m_Mahalanobis->GetCovariance();
138 Superclass::Initialize(r);
151 mean.Fill(
typename FeatureScalarType::ValueType{});
152 covariance.Fill(
typename FeatureScalarType::ValueType{});
155 m_Mahalanobis->SetMean(mean);
156 m_Mahalanobis->SetCovariance(covariance);
158 this->SetAdvectionWeight(0.0);
159 this->SetPropagationWeight(1.0);
160 this->SetThreshold(1.8);
168 Superclass::PrintSelf(os, indent);
169 os << indent <<
"MahalanobisFunction: " << m_Mahalanobis << std::endl;
170 os << indent <<
"ThresholdValue: " << m_Threshold << std::endl;
178#ifndef ITK_MANUAL_INSTANTIATION
179# include "itkVectorThresholdSegmentationLevelSetFunction.hxx"
typename ConstNeighborhoodIterator< TImageType >::RadiusType RadiusType
Control indentation during Print() invocation.
PixelType ScalarValueType
Light weight base class for most itk classes.
Define additional traits for native types such as int or float.
MahalanobisDistanceMembershipFunction models class membership using Mahalanobis distance.
MeasurementVectorRealType MeanVectorType
This function is used in VectorThresholdSegmentationLevelSetImageFilter to segment structures in imag...
TFeatureImageType FeatureImageType
ScalarValueType GetThreshold()
const MeanVectorType & GetMean() const
void PrintSelf(std::ostream &os, Indent indent) const override
void SetThreshold(ScalarValueType thr)
typename FeatureImageType::PixelType FeatureImagePixelType
typename MahalanobisFunctionType::CovarianceMatrixType CovarianceMatrixType
VectorThresholdSegmentationLevelSetFunction()
void SetMean(const MeanVectorType &mean)
typename MahalanobisFunctionType::Pointer MahalanobisFunctionPointer
const CovarianceMatrixType & GetCovariance() const
void SetCovariance(const CovarianceMatrixType &cov)
typename MahalanobisFunctionType::MeanVectorType MeanVectorType
void Initialize(const RadiusType &r) override
void CalculateSpeedImage() override
~VectorThresholdSegmentationLevelSetFunction() override=default
SmartPointer< Self > Pointer
constexpr unsigned int Dimension
The "itk" namespace contains all Insight Segmentation and Registration Toolkit (ITK) classes....