SourceXtractorPlusPlus 0.21
SourceXtractor++, the next generation SExtractor
Loading...
Searching...
No Matches
Classes | Public Member Functions | Private Attributes | List of all members
SourceXtractor::Segmentation Class Reference

Segmentation takes an image and splits it into individual Sources for further refinement. Each Source results in a notification of the Segmentation's Observers. More...

#include <Segmentation.h>

Inheritance diagram for SourceXtractor::Segmentation:
Inheritance graph
[legend]
Collaboration diagram for SourceXtractor::Segmentation:
Collaboration graph
[legend]

Classes

class  Labelling
 
class  LabellingListener
 

Public Member Functions

virtual ~Segmentation ()=default
 Destructor.
 
 Segmentation (std::shared_ptr< DetectionImageFrame::ImageFilter > image_processing)
 
template<class LabellingType , typename ... Args>
void setLabelling (Args... args)
 
void processFrame (std::shared_ptr< DetectionImageFrame > frame) const
 Processes a Frame notifying Observers with a Source object for each detection.
 
- Public Member Functions inherited from SourceXtractor::PipelineEmitter< SourceInterface >
 ~PipelineEmitter () override=default
 
void setNextStage (std::shared_ptr< PipelineReceiver< SourceInterface > > next)
 
- Public Member Functions inherited from SourceXtractor::Observable< T >
virtual ~Observable ()=default
 Destructor.
 
virtual void addObserver (std::shared_ptr< Observer< T > > observer)
 Adds an Observer that will be notified when notify Observers is called.
 
virtual void removeObserver (std::shared_ptr< Observer< T > > observer)
 Removes a previously added Observer from the list of Observers to notify.
 
- Public Member Functions inherited from SourceXtractor::Observable< SegmentationProgress >
virtual ~Observable ()=default
 Destructor.
 
virtual void addObserver (std::shared_ptr< Observer< SegmentationProgress > > observer)
 Adds an Observer that will be notified when notify Observers is called.
 
virtual void removeObserver (std::shared_ptr< Observer< SegmentationProgress > > observer)
 Removes a previously added Observer from the list of Observers to notify.
 

Private Attributes

std::unique_ptr< Labellingm_labelling
 
std::shared_ptr< DetectionImageFrame::ImageFilterm_filter_image_processing
 

Additional Inherited Members

- Protected Member Functions inherited from SourceXtractor::PipelineEmitter< SourceInterface >
void sendSource (std::unique_ptr< SourceInterface > source) const
 
void sendProcessSignal (const ProcessSourcesEvent &event) const
 
- Protected Member Functions inherited from SourceXtractor::Observable< T >
void notifyObservers (const T &message) const
 
- Protected Member Functions inherited from SourceXtractor::Observable< SegmentationProgress >
void notifyObservers (const SegmentationProgress &message) const
 

Detailed Description

Segmentation takes an image and splits it into individual Sources for further refinement. Each Source results in a notification of the Segmentation's Observers.

Definition at line 53 of file Segmentation.h.

Constructor & Destructor Documentation

◆ ~Segmentation()

virtual SourceXtractor::Segmentation::~Segmentation ( )
virtualdefault

Destructor.

◆ Segmentation()

SourceXtractor::Segmentation::Segmentation ( std::shared_ptr< DetectionImageFrame::ImageFilter > image_processing)
explicit

Definition at line 27 of file Segmentation.cpp.

Member Function Documentation

◆ processFrame()

void SourceXtractor::Segmentation::processFrame ( std::shared_ptr< DetectionImageFrame > frame) const

Processes a Frame notifying Observers with a Source object for each detection.

Definition at line 31 of file Segmentation.cpp.

References m_filter_image_processing, m_labelling, and SourceXtractor::PipelineEmitter< SourceInterface >::sendProcessSignal().

Here is the call graph for this function:

◆ setLabelling()

template<class LabellingType , typename ... Args>
void SourceXtractor::Segmentation::setLabelling ( Args... args)
inline

Definition at line 65 of file Segmentation.h.

References m_labelling.

Member Data Documentation

◆ m_filter_image_processing

std::shared_ptr<DetectionImageFrame::ImageFilter> SourceXtractor::Segmentation::m_filter_image_processing
private

Definition at line 79 of file Segmentation.h.

Referenced by processFrame().

◆ m_labelling

std::unique_ptr<Labelling> SourceXtractor::Segmentation::m_labelling
private

Definition at line 78 of file Segmentation.h.

Referenced by processFrame(), and setLabelling().


The documentation for this class was generated from the following files: