|
ITK
5.2.0
Insight Toolkit
|
Go to the documentation of this file.
18 #ifndef itkSLICImageFilter_h
19 #define itkSLICImageFilter_h
60 template <
typename TInputImage,
typename TOutputImage,
typename TDistancePixel =
float>
107 itkSetMacro(SpatialProximityWeight,
double);
108 itkGetConstMacro(SpatialProximityWeight,
double);
114 itkSetMacro(MaximumNumberOfIterations,
unsigned int);
115 itkGetConstMacro(MaximumNumberOfIterations,
unsigned int);
138 itkSetMacro(InitializationPerturbation,
bool);
139 itkGetMacro(InitializationPerturbation,
bool);
140 itkBooleanMacro(InitializationPerturbation);
150 itkSetMacro(EnforceConnectivity,
bool);
151 itkGetMacro(EnforceConnectivity,
bool);
152 itkBooleanMacro(EnforceConnectivity);
161 itkGetConstMacro(AverageResidual,
double);
219 std::vector<IndexType> & indexStack);
245 #ifndef ITK_MANUAL_INSTANTIATION
246 # include "itkSLICImageFilter.hxx"
249 #endif // itkSLICImageFilter_h
unsigned int m_MaximumNumberOfIterations
std::vector< UpdateClusterMap > m_UpdateClusterPerThread
void ThreadedConnectivity(SizeValueType clusterIndex)
void SingleThreadedConnectivity()
void BeforeThreadedGenerateData() override
ImageBaseType::PointType PointType
DistanceImageType::Pointer m_DistanceImage
Control indentation during Print() invocation.
bool m_EnforceConnectivity
void AfterThreadedGenerateData() override
void ThreadedUpdateDistanceAndLabel(const OutputImageRegionType &outputRegionForThread)
ImageBaseType::IndexType IndexType
Base class for filters that take an image as input and produce an image as output.
vnl_vector_ref< ClusterComponentType > ClusterType
bool m_InitializationPerturbation
Base class for all process objects that output image data.
void PrintSelf(std::ostream &os, Indent indent) const override
TDistancePixel DistanceType
typename InputImageType::PixelType InputPixelType
typename InputImageType::IndexType IndexType
DistanceType Distance(const ClusterType &cluster1, const ClusterType &cluster2)
MarkerImageType::Pointer m_MarkerImage
ImageBaseType::RegionType RegionType
~SLICImageFilter() override=default
typename OutputImageType::PixelType OutputPixelType
Simple Linear Iterative Clustering (SLIC) super-pixel segmentation.
std::vector< ClusterComponentType > m_Clusters
typename InputImageType::PointType PointType
TInputImage InputImageType
virtual void SetSuperGridSize(SuperGridSizeType _arg)
The expected superpixel size and shape.
double m_SpatialProximityWeight
void EnlargeOutputRequestedRegion(DataObject *output) override
void ThreadedUpdateClusters(const OutputImageRegionType &updateRegionForThread)
std::map< vcl_size_t, UpdateCluster > UpdateClusterMap
typename OutputImageType::RegionType OutputImageRegionType
The "itk" namespace contains all Insight Segmentation and Registration Toolkit (ITK) classes....
void GenerateData() override
SuperGridSizeType m_SuperGridSize
A templated class holding a point in n-Dimensional image space.
The base class for all process objects (source, filters, mappers) in the Insight data processing pipe...
vnl_vector< ClusterComponentType > cluster
Templated n-dimensional image class.
static constexpr unsigned int ImageDimension
void ThreadedPerturbClusters(SizeValueType clusterIndex)
void RelabelConnectedRegion(const IndexType &seed, OutputPixelType requiredLabel, OutputPixelType outputLabel, std::vector< IndexType > &indexStack)
FixedArray< double, ImageDimension > m_DistanceScales
double ClusterComponentType
unsigned long SizeValueType
std::vector< ClusterComponentType > m_OldClusters
TOutputImage OutputImageType
Base class for all data objects in ITK.