18 #ifndef itkRelabelComponentImageFilter_h
19 #define itkRelabelComponentImageFilter_h
80 template<
typename TInputImage,
typename TOutputImage >
104 itkStaticConstMacro(ImageDimension,
unsigned int,
105 TOutputImage::ImageDimension);
106 itkStaticConstMacro(InputImageDimension,
unsigned int,
107 TInputImage::ImageDimension);
153 itkGetConstMacro(OriginalNumberOfObjects,
LabelType);
157 itkSetMacro(NumberOfObjectsToPrint,
LabelType);
158 itkGetConstReferenceMacro(NumberOfObjectsToPrint,
LabelType);
178 itkSetMacro(SortByObjectSize,
bool);
179 itkGetConstMacro(SortByObjectSize,
bool);
180 itkBooleanMacro(SortByObjectSize);
192 return this->m_SizeOfObjectsInPixels;
204 return this->m_SizeOfObjectsInPhysicalUnits;
212 if ( obj > 0 && obj <= m_NumberOfObjects )
214 return m_SizeOfObjectsInPixels[obj - 1];
228 if ( obj > 0 && obj <= m_NumberOfObjects )
230 return m_SizeOfObjectsInPhysicalUnits[obj - 1];
239 #ifdef ITK_USE_CONCEPT_CHECKING
257 m_NumberOfObjects(0), m_NumberOfObjectsToPrint(10),
258 m_OriginalNumberOfObjects(0), m_MinimumObjectSize(0),
259 m_SortByObjectSize(true)
260 { this->InPlaceOff(); }
266 void GenerateData() ITK_OVERRIDE;
271 void GenerateInputRequestedRegion() ITK_OVERRIDE;
274 void PrintSelf(std::ostream & os,
Indent indent) const ITK_OVERRIDE;
324 #ifndef ITK_MANUAL_INSTANTIATION
325 #include "itkRelabelComponentImageFilter.hxx"
const ObjectSizeInPixelsContainerType & GetSizeOfObjectsInPixels() const
Superclass::InputImagePointer InputImagePointer
ObjectSizeInPhysicalUnitsContainerType m_SizeOfObjectsInPhysicalUnits
ObjectSizeType m_SizeInPixels
std::vector< ObjectSizeType > ObjectSizeInPixelsContainerType
TInputImage::PixelType InputPixelType
RelabelComponentImageFilter()
virtual ~RelabelComponentImageFilter() override
TOutputImage::RegionType RegionType
TOutputImage OutputImageType
Base class for all process objects that output image data.
unsigned long SizeValueType
TOutputImage::PixelType OutputPixelType
float m_SizeInPhysicalUnits
RelabelComponentImageFilter Self
LabelType m_NumberOfObjects
SizeValueType IdentifierType
SmartPointer< Self > Pointer
bool operator()(const RelabelComponentObjectType &a, const RelabelComponentObjectType &b)
ObjectSizeType GetSizeOfObjectInPixels(LabelType obj) const
TInputImage::IndexType IndexType
TInputImage::SizeType SizeType
ObjectSizeType m_MinimumObjectSize
float GetSizeOfObjectInPhysicalUnits(LabelType obj) const
Relabel the components in an image such that consecutive labels are used.
const ObjectSizeInPhysicalUnitsContainerType & GetSizeOfObjectsInPhysicalUnits() const
TInputImage InputImageType
Base class for filters that take an image as input and produce an image as output.
LabelType m_NumberOfObjectsToPrint
Control indentation during Print() invocation.
ImageBaseType::SizeType SizeType
TInputImage::InternalPixelType InputInternalPixelType
Base class for filters that take an image as input and overwrite that image as the output...
#define itkConceptMacro(name, concept)
std::vector< float > ObjectSizeInPhysicalUnitsContainerType
SmartPointer< const Self > ConstPointer
LabelType m_OriginalNumberOfObjects
TOutputImage::InternalPixelType OutputInternalPixelType
ImageBaseType::IndexType IndexType
ObjectSizeInPixelsContainerType m_SizeOfObjectsInPixels
InPlaceImageFilter< TInputImage, TOutputImage > Superclass
SizeValueType ObjectSizeType