te::rp::SegmenterRegionGrowingMerger< FeatureDataTypeT > Class Template Referenceabstract

Abstract class for the segments merger. More...

#include <SegmenterRegionGrowingMerger.h>

Public Member Functions

virtual void createMergeData (SegmenterRegionGrowingMergeData **mergeDataPtr) const =0
 Create a new merge data instance when applicable. More...
 
virtual DissimilarityTypeT getDissimilarity (SegmenterRegionGrowingSegment< FeatureDataTypeT > const *const segment1Ptr, SegmenterRegionGrowingSegment< FeatureDataTypeT > const *const segment2Ptr, SegmenterRegionGrowingMergeData *const mergeDataPtr) const =0
 Returns a dimilarity index between this and the other segment. More...
 
virtual unsigned int getSegmentFeaturesSize () const =0
 Return the required segments features vector size (numer of elements). More...
 
virtual void mergeFeatures (SegmenterRegionGrowingSegment< FeatureDataTypeT > *const segment1Ptr, SegmenterRegionGrowingSegment< FeatureDataTypeT > const *const segment2Ptr, SegmenterRegionGrowingMergeData const *const mergeDataPtr) const =0
 Merge specific segment features from both segments into the first segment. More...
 
virtual void update (SegmenterRegionGrowingSegment< FeatureDataTypeT > *const actSegsListHeadPtr)=0
 Update the internal state. More...
 
virtual ~SegmenterRegionGrowingMerger ()
 

Protected Member Functions

 SegmenterRegionGrowingMerger ()
 Constructor. More...
 

Private Member Functions

const SegmenterRegionGrowingMergeroperator= (const SegmenterRegionGrowingMerger &other)
 
 SegmenterRegionGrowingMerger (const SegmenterRegionGrowingMerger &)
 Copy Constructor. More...
 

Detailed Description

template<typename FeatureDataTypeT>
class te::rp::SegmenterRegionGrowingMerger< FeatureDataTypeT >

Abstract class for the segments merger.

Definition at line 53 of file SegmenterRegionGrowingMerger.h.

Constructor & Destructor Documentation

◆ ~SegmenterRegionGrowingMerger()

template<typename FeatureDataTypeT >
virtual te::rp::SegmenterRegionGrowingMerger< FeatureDataTypeT >::~SegmenterRegionGrowingMerger ( )
inlinevirtual

Definition at line 55 of file SegmenterRegionGrowingMerger.h.

◆ SegmenterRegionGrowingMerger() [1/2]

template<typename FeatureDataTypeT >
te::rp::SegmenterRegionGrowingMerger< FeatureDataTypeT >::SegmenterRegionGrowingMerger ( )
inlineprotected

Constructor.

Definition at line 103 of file SegmenterRegionGrowingMerger.h.

◆ SegmenterRegionGrowingMerger() [2/2]

template<typename FeatureDataTypeT >
te::rp::SegmenterRegionGrowingMerger< FeatureDataTypeT >::SegmenterRegionGrowingMerger ( const SegmenterRegionGrowingMerger< FeatureDataTypeT > &  )
inlineprivate

Copy Constructor.

Definition at line 111 of file SegmenterRegionGrowingMerger.h.

Member Function Documentation

◆ createMergeData()

template<typename FeatureDataTypeT >
virtual void te::rp::SegmenterRegionGrowingMerger< FeatureDataTypeT >::createMergeData ( SegmenterRegionGrowingMergeData **  mergeDataPtr) const
pure virtual

Create a new merge data instance when applicable.

Parameters
mergeDataPtrPointer to the new merge data instance or null when not applicable (the caller of this method must take the ownership of the returned object).

Implemented in te::rp::SegmenterRegionGrowingMeanMerger, and te::rp::SegmenterRegionGrowingBaatzMerger.

Referenced by te::rp::rg::mergeSegments(), and te::rp::rg::mergeTooSmallSegments().

◆ getDissimilarity()

template<typename FeatureDataTypeT >
virtual DissimilarityTypeT te::rp::SegmenterRegionGrowingMerger< FeatureDataTypeT >::getDissimilarity ( SegmenterRegionGrowingSegment< FeatureDataTypeT > const *const  segment1Ptr,
SegmenterRegionGrowingSegment< FeatureDataTypeT > const *const  segment2Ptr,
SegmenterRegionGrowingMergeData *const  mergeDataPtr 
) const
pure virtual

Returns a dimilarity index between this and the other segment.

Parameters
segment1PtrA pointer to the first segment.
segment2PtrA pointer to the second segment.
mergeDataPtrA pointer to a valid merge data where the merged features values will be stored (when aplicable) or a null pointer.
Returns
A similarity index between this and the other segment ( normalized between 0 and 1 ).

Implemented in te::rp::SegmenterRegionGrowingMeanMerger, and te::rp::SegmenterRegionGrowingBaatzMerger.

Referenced by te::rp::rg::findMinDissimilaryNeighbor().

◆ getSegmentFeaturesSize()

template<typename FeatureDataTypeT >
virtual unsigned int te::rp::SegmenterRegionGrowingMerger< FeatureDataTypeT >::getSegmentFeaturesSize ( ) const
pure virtual

Return the required segments features vector size (numer of elements).

Returns
Return the required segments features vector size (numer of elements).

◆ mergeFeatures()

template<typename FeatureDataTypeT >
virtual void te::rp::SegmenterRegionGrowingMerger< FeatureDataTypeT >::mergeFeatures ( SegmenterRegionGrowingSegment< FeatureDataTypeT > *const  segment1Ptr,
SegmenterRegionGrowingSegment< FeatureDataTypeT > const *const  segment2Ptr,
SegmenterRegionGrowingMergeData const *const  mergeDataPtr 
) const
pure virtual

Merge specific segment features from both segments into the first segment.

Parameters
segment1PtrThe first segment.
segment2PtrA pointer to the second segment.
mergeDataPtrA pointer to a valid merge data where the merged features will be read (when aplicable) or a null pointer..

Implemented in te::rp::SegmenterRegionGrowingMeanMerger, and te::rp::SegmenterRegionGrowingBaatzMerger.

Referenced by te::rp::rg::merge2Segments().

◆ operator=()

template<typename FeatureDataTypeT >
const SegmenterRegionGrowingMerger& te::rp::SegmenterRegionGrowingMerger< FeatureDataTypeT >::operator= ( const SegmenterRegionGrowingMerger< FeatureDataTypeT > &  other)
inlineprivate

Definition at line 114 of file SegmenterRegionGrowingMerger.h.

◆ update()

template<typename FeatureDataTypeT >
virtual void te::rp::SegmenterRegionGrowingMerger< FeatureDataTypeT >::update ( SegmenterRegionGrowingSegment< FeatureDataTypeT > *const  actSegsListHeadPtr)
pure virtual

Update the internal state.

Parameters
actSegsListHeadPtrA pointer the the active segments list head.

Implemented in te::rp::SegmenterRegionGrowingMeanMerger, and te::rp::SegmenterRegionGrowingBaatzMerger.

Referenced by te::rp::rg::mergeSegments(), and te::rp::rg::mergeTooSmallSegments().


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