18 #ifndef sitkSLICImageFilter_h
19 #define sitkSLICImageFilter_h
62 using PixelIDTypeList = typelist2::append<BasicPixelIDTypeList, VectorPixelIDTypeList>::type;
67 SITK_RETURN_SELF_TYPE_HEADER
SetSuperGridSize ( std::vector<unsigned int> SuperGridSize ) { this->m_SuperGridSize = std::move(SuperGridSize);
return *
this; }
77 SITK_RETURN_SELF_TYPE_HEADER
SetSpatialProximityWeight (
double SpatialProximityWeight ) { this->m_SpatialProximityWeight = SpatialProximityWeight;
return *
this; }
87 SITK_RETURN_SELF_TYPE_HEADER
SetMaximumNumberOfIterations ( uint32_t MaximumNumberOfIterations ) { this->m_MaximumNumberOfIterations = MaximumNumberOfIterations;
return *
this; }
97 SITK_RETURN_SELF_TYPE_HEADER
SetEnforceConnectivity (
bool EnforceConnectivity ) { this->m_EnforceConnectivity = EnforceConnectivity;
return *
this; }
111 SITK_RETURN_SELF_TYPE_HEADER
SetInitializationPerturbation (
bool InitializationPerturbation ) { this->m_InitializationPerturbation = InitializationPerturbation;
return *
this; }
131 std::string
GetName()
const {
return std::string (
"SLICImageFilter"); }
134 std::string ToString()
const;
146 template <
class TImageType>
Image ExecuteInternal (
const Image& image1 );
155 std::vector<unsigned int> m_SuperGridSize{std::vector<unsigned int>(3, 50)};
157 double m_SpatialProximityWeight{10.0};
160 uint32_t m_MaximumNumberOfIterations{5u};
162 bool m_EnforceConnectivity{
true};
164 bool m_InitializationPerturbation{
true};
184 SITKBasicFilters_EXPORT Image SLIC (
const Image& image1, std::vector<unsigned int> superGridSize = std::vector<unsigned int>(3, 50),
double spatialProximityWeight = 10.0, uint32_t maximumNumberOfIterations = 5u,
bool enforceConnectivity =
true,
bool initializationPerturbation =
true );