18 #ifndef sitkLabelShapeStatisticsImageFilter_h
19 #define sitkLabelShapeStatisticsImageFilter_h
69 SITK_RETURN_SELF_TYPE_HEADER
SetBackgroundValue (
double BackgroundValue ) { this->m_BackgroundValue = BackgroundValue;
return *
this; }
79 SITK_RETURN_SELF_TYPE_HEADER
SetComputeFeretDiameter (
bool ComputeFeretDiameter ) { this->m_ComputeFeretDiameter = ComputeFeretDiameter;
return *
this; }
93 SITK_RETURN_SELF_TYPE_HEADER
SetComputePerimeter (
bool ComputePerimeter ) { this->m_ComputePerimeter = ComputePerimeter;
return *
this; }
107 SITK_RETURN_SELF_TYPE_HEADER
SetComputeOrientedBoundingBox (
bool ComputeOrientedBoundingBox ) { this->m_ComputeOrientedBoundingBox = ComputeOrientedBoundingBox;
return *
this; }
133 std::vector<unsigned int>
GetRegion(
int64_t label)
const {
return this->m_pfGetRegion(label); };
204 std::vector<int64_t>
GetLabels()
const {
return this->m_Labels; };
330 std::vector<unsigned int>
GetIndexes(
int64_t label)
const {
return this->m_pfGetIndexes(label); };
343 std::string
GetName()
const {
return std::string (
"LabelShapeStatisticsImageFilter"); }
346 std::string ToString()
const;
351 void Execute (
const Image& image1 );
365 template <
class TImageType>
void ExecuteInternal (
const Image& image1 );
374 double m_BackgroundValue{0};
376 bool m_ComputeFeretDiameter{
false};
378 bool m_ComputePerimeter{
true};
380 bool m_ComputeOrientedBoundingBox{
false};
401 std::vector<int64_t> m_Labels{std::vector<int64_t>()};