18 #ifndef itkRelabelComponentImageFilter_h
19 #define itkRelabelComponentImageFilter_h
80 template<
typename TInputImage,
typename TOutputImage >
106 static constexpr
unsigned int ImageDimension = TOutputImage::ImageDimension;
107 static constexpr
unsigned int InputImageDimension = TInputImage::ImageDimension;
142 itkGetConstMacro(NumberOfObjects,
LabelType);
152 itkGetConstMacro(OriginalNumberOfObjects,
LabelType);
156 itkSetMacro(NumberOfObjectsToPrint,
LabelType);
157 itkGetConstReferenceMacro(NumberOfObjectsToPrint,
LabelType);
177 itkSetMacro(SortByObjectSize,
bool);
178 itkGetConstMacro(SortByObjectSize,
bool);
179 itkBooleanMacro(SortByObjectSize);
191 return this->m_SizeOfObjectsInPixels;
203 return this->m_SizeOfObjectsInPhysicalUnits;
211 if ( obj > 0 && obj <= m_NumberOfObjects )
213 return m_SizeOfObjectsInPixels[obj - 1];
227 if ( obj > 0 && obj <= m_NumberOfObjects )
229 return m_SizeOfObjectsInPhysicalUnits[obj - 1];
238 #ifdef ITK_USE_CONCEPT_CHECKING
257 { this->InPlaceOff(); }
263 void GenerateData()
override;
268 void GenerateInputRequestedRegion()
override;
271 void PrintSelf(std::ostream & os,
Indent indent)
const override;
313 bool m_SortByObjectSize{
true};
320 #ifndef ITK_MANUAL_INSTANTIATION
321 #include "itkRelabelComponentImageFilter.hxx"
const ObjectSizeInPixelsContainerType & GetSizeOfObjectsInPixels() const
ObjectSizeInPhysicalUnitsContainerType m_SizeOfObjectsInPhysicalUnits
ObjectSizeType m_SizeInPixels
unsigned long SizeValueType
typename TInputImage::InternalPixelType InputInternalPixelType
RelabelComponentImageFilter()
The base class for all process objects (source, filters, mappers) in the Insight data processing pipe...
Base class for all process objects that output image data.
typename TOutputImage::PixelType OutputPixelType
float m_SizeInPhysicalUnits
TInputImage InputImageType
typename TInputImage::SizeType SizeType
typename TInputImage::IndexType IndexType
typename InputImageType::Pointer InputImagePointer
typename TInputImage::PixelType InputPixelType
ImageBaseType::SizeType SizeType
SizeValueType IdentifierType
typename TOutputImage::InternalPixelType OutputInternalPixelType
ImageBaseType::IndexType IndexType
TOutputImage OutputImageType
bool operator()(const RelabelComponentObjectType &a, const RelabelComponentObjectType &b)
ObjectSizeType GetSizeOfObjectInPixels(LabelType obj) const
float GetSizeOfObjectInPhysicalUnits(LabelType obj) const
std::vector< float > ObjectSizeInPhysicalUnitsContainerType
Relabel the components in an image such that consecutive labels are used.
std::vector< ObjectSizeType > ObjectSizeInPixelsContainerType
const ObjectSizeInPhysicalUnitsContainerType & GetSizeOfObjectsInPhysicalUnits() const
Base class for filters that take an image as input and produce an image as output.
Control indentation during Print() invocation.
Base class for filters that take an image as input and overwrite that image as the output...
ImageBaseType::RegionType RegionType
#define itkConceptMacro(name, concept)
SizeValueType ObjectSizeType
ObjectSizeInPixelsContainerType m_SizeOfObjectsInPixels
typename TOutputImage::RegionType RegionType