18 #ifndef __itkVoronoiSegmentationImageFilterBase_h
19 #define __itkVoronoiSegmentationImageFilterBase_h
58 template<
typename TInputImage,
typename TOutputImage,
typename TBinaryPriorImage = Image<
unsigned char, 2 > >
77 TInputImage::ImageDimension);
84 typedef typename TInputImage::SizeType
SizeType;
114 itkSetMacro(NumberOfSeeds,
int);
115 itkGetConstMacro(NumberOfSeeds,
int);
119 itkSetMacro(MinRegion,
int);
120 itkGetConstMacro(MinRegion,
int);
125 itkSetMacro(Steps,
int);
126 itkGetConstMacro(Steps,
int);
130 itkGetConstMacro(LastStepSeeds,
int);
133 itkGetConstMacro(NumberOfSeedsToAdded,
int);
136 itkSetMacro(UseBackgroundInAPrior,
bool);
137 itkGetConstMacro(UseBackgroundInAPrior,
bool);
141 itkSetMacro(OutputBoundary,
bool);
142 itkGetConstMacro(OutputBoundary,
bool);
147 itkSetMacro(InteractiveSegmentation,
bool);
148 itkGetConstMacro(InteractiveSegmentation,
bool);
149 itkBooleanMacro(InteractiveSegmentation);
153 itkSetMacro(MeanDeviation,
double);
154 itkGetConstMacro(MeanDeviation,
double);
181 #if !defined( CABLE_CONFIGURATION ) // generates invalid iterator instantiation
201 typename SeedsType::iterator it = seeds.begin();
212 unsigned char outcolor,
unsigned char boundcolor);
281 #ifndef ITK_MANUAL_INSTANTIATION
282 #include "itkVoronoiSegmentationImageFilterBase.hxx"
Superclass::CellType CellType
virtual void MakeSegmentBoundary(void)
TInputImage::Pointer InputImagePointer
void drawVDline(VDImagePointer result, PointType p1, PointType p2, unsigned char color)
Base class for VoronoiSegmentationImageFilter.
void GetPixelIndexFromPolygon(PointTypeDeque VertList, IndexList *PixelPool)
VoronoiDiagram::SeedsType SeedsType
bool m_UseBackgroundInAPrior
VoronoiDiagram::Pointer VoronoiPointer
std::vector< VoronoiEdge >::iterator VoronoiEdgeIterator
int m_NumberOfSeedsToAdded
BinaryObjectImage::Pointer BinaryObjectImagePointer
virtual void GenerateInputRequestedRegion()
std::vector< IndexType > IndexList
void RunSegmentOneStep(void)
Represent the size (bounds) of a n-dimensional image.
void SetSeeds(int num, SeedsIterator begin)
Image< unsigned char, 2 > VDImage
void FillPolygon(PointTypeDeque vertlist, OutputPixelType color=1)
virtual void MakeSegmentObject(void)
VoronoiDiagram::VoronoiEdge EdgeInfo
virtual void GenerateAddingSeeds(void)
SeedsType::iterator SeedsIterator
VoronoiDiagram::VoronoiEdgeIterator EdgeIterator
~VoronoiSegmentationImageFilterBase()
VoronoiDiagram2DGenerator< double > VoronoiDiagramGenerator
TInputImage::PixelType PixelType
CellType::PointIdIterator PointIdIterator
Implements the 2-Dimensional Voronoi Diagram.
VoronoiDiagramGenerator::Pointer m_VDGenerator
ImageToImageFilter< TInputImage, TOutputImage > Superclass
Base class for all process objects that output image data.
VoronoiDiagram::SeedsIterator SeedsIterator
std::vector< unsigned char > m_Label
PointType GetSeed(int SeedID)
VoronoiDiagram::CellAutoPointer CellAutoPointer
VoronoiDiagram::PointType PointType
TOutputImage::PixelType OutputPixelType
SmartPointer< const Self > ConstPointer
VoronoiPointer GetVoronoiDiagram(void)
virtual void PrintSelf(std::ostream &os, Indent indent) const
void SetSeeds(SeedsType &seeds)
VoronoiDiagram::CellType CellType
VoronoiDiagram2D< double > VoronoiDiagram
TInputImage::ConstPointer InputImageConstPointer
std::vector< PointType > PointTypeVector
SmartPointer< Self > Pointer
virtual void TakeAPrior(const BinaryObjectImage *)
virtual bool TestHomogeneity(IndexList &)
TOutputImage OutputImageType
INTvector::iterator NeighborIdIterator
std::vector< PointType > m_SeedsToAdded
VoronoiSegmentationImageFilterBase()
VoronoiSegmentationImageFilterBase Self
virtual void ClassifyDiagram(void)
VDImage::Pointer VDImagePointer
void BeforeNextStep(void)
TInputImage InputImageType
bool m_InteractiveSegmentation
virtual void EnlargeOutputRequestedRegion(DataObject *output)
VoronoiDiagram::Pointer m_WorkingVD
Base class for filters that take an image as input and produce an image as output.
Implement the Sweep Line Algorithm for the construction of the 2D Voronoi Diagram.
TInputImage::IndexType IndexType
Control indentation during Print() invocation.
TBinaryPriorImage BinaryObjectImage
std::vector< PointType > SeedsType
Superclass::CellAutoPointer CellAutoPointer
void DrawDiagram(VDImagePointer result, unsigned char incolor, unsigned char outcolor, unsigned char boundcolor)
std::deque< PointType > PointTypeDeque
A templated class holding a geometric point in n-Dimensional space.
void drawLine(PointType p1, PointType p2)
TInputImage::RegionType RegionType
std::vector< int > m_NumberOfPixels
void operator=(const Self &)
Base class for all data objects in ITK.
Templated n-dimensional image class.
VoronoiDiagram::NeighborIdIterator NeighborIdIterator
TInputImage::SizeType SizeType
static const unsigned int ImageDimension