te::rp::SegmenterRegionGrowingBaatzMerger Class Reference

Baatz based Segments merger. More...

#include <SegmenterRegionGrowingBaatzMerger.h>

Inheritance diagram for te::rp::SegmenterRegionGrowingBaatzMerger:
te::rp::SegmenterRegionGrowingMerger< rg::BaatzFeatureType >

Public Member Functions

DissimilarityTypeT getDissimilarity (SegmenterRegionGrowingSegment< rg::BaatzFeatureType > const *const segment1Ptr, SegmenterRegionGrowingSegment< rg::BaatzFeatureType > const *const segment2Ptr, SegmenterRegionGrowingSegment< rg::BaatzFeatureType > *const mergePreviewSegPtr) const
 Returns a dimilarity index between this and the other segment. More...
 
unsigned int getSegmentFeaturesSize () const
 Return the required segments features vector size (numer of elements). More...
 
void mergeFeatures (SegmenterRegionGrowingSegment< rg::BaatzFeatureType > *const segment1Ptr, SegmenterRegionGrowingSegment< rg::BaatzFeatureType > const *const segment2Ptr, SegmenterRegionGrowingSegment< rg::BaatzFeatureType > const *const mergePreviewSegPtr) const
 Merge specific segment features from both segments into the first segment. More...
 
 SegmenterRegionGrowingBaatzMerger (const double &colorWeight, const double &compactnessWeight, const std::vector< double > &bandsWeights, const SegmentsIdsMatrixT &segmentsIds)
 Default constructor. More...
 
void update (SegmenterRegionGrowingSegment< rg::BaatzFeatureType > *const actSegsListHeadPtr)
 Update the internal state. More...
 
 ~SegmenterRegionGrowingBaatzMerger ()
 

Static Protected Member Functions

static void getTouchingEdgeLength (const SegmentsIdsMatrixT &segsIds, const unsigned int &xStart, const unsigned int &yStart, const unsigned int &xBound, const unsigned int &yBound, const SegmenterSegmentsBlock::SegmentIdDataType &id1, const SegmenterSegmentsBlock::SegmentIdDataType &id2, unsigned int &edgeLength1, unsigned int &edgeLength2)
 Returns the count of points from region 1 (with ID1) touching the region 2 (with ID2). More...
 

Protected Attributes

rg::BaatzFeatureType m_allSegsCompactnessGain
 The gains applied to normalize the compactness value. More...
 
rg::BaatzFeatureType m_allSegsCompactnessOffset
 The offsets applied to normalize the compactness value. More...
 
rg::BaatzFeatureType m_allSegsSmoothnessGain
 The gains applied to normalize the smoothness value. More...
 
rg::BaatzFeatureType m_allSegsSmoothnessOffset
 The offsets applied to normalize the smoothness value. More...
 
rg::BaatzFeatureType m_allSegsStdDevGain
 The gains applied to normalize the standard deviation value. More...
 
rg::BaatzFeatureType m_allSegsStdDevOffset
 The offsets applied to normalize the standard deviation value. More...
 
unsigned int m_bandsNumber
 The number of features (bands). More...
 
std::vector< rg::BaatzFeatureTypem_bandsWeights
 A vector where each bands weight are stored. More...
 
rg::BaatzFeatureType m_colorWeight
 The weight given to the color component, deafult:0.5, valid range: [0,1]. More...
 
rg::BaatzFeatureType m_compactnessWeight
 The weight given to the compactness component, deafult:0.5, valid range: [0,1]. More...
 
rg::BaatzFeatureType m_getDissimilarity_hColor
 
rg::BaatzFeatureType m_getDissimilarity_hCompact
 
rg::BaatzFeatureType m_getDissimilarity_hForm
 
rg::BaatzFeatureType m_getDissimilarity_hSmooth
 
rg::BaatzFeatureType m_getDissimilarity_meanUnion
 
rg::BaatzFeatureType m_getDissimilarity_sizeSeg1D
 
rg::BaatzFeatureType m_getDissimilarity_sizeSeg2D
 
rg::BaatzFeatureType m_getDissimilarity_sizeUnionD
 
rg::BaatzFeatureType m_getDissimilarity_squaresSumUnion
 
rg::BaatzFeatureType m_getDissimilarity_stdDevUnion
 
unsigned int m_getDissimilarity_sumsIdx
 
rg::BaatzFeatureType m_getDissimilarity_sumUnion
 
unsigned int m_getDissimilarity_touchingEdgeLength1
 
unsigned int m_getDissimilarity_touchingEdgeLength2
 
const SegmentsIdsMatrixTm_segmentsIds
 A reference to an external valid structure where each all segments IDs are stored. More...
 
unsigned int m_update_band
 
rg::BaatzFeatureType m_update_compactnessMax
 
rg::BaatzFeatureType m_update_compactnessMin
 
SegmenterRegionGrowingSegment< rg::BaatzFeatureType > * m_update_currentActSegPtr
 
rg::BaatzFeatureTypem_update_featuresPtr
 
rg::BaatzFeatureType m_update_smoothnessMax
 
rg::BaatzFeatureType m_update_smoothnessMin
 
rg::BaatzFeatureType m_update_stdDevMax
 
rg::BaatzFeatureType m_update_stdDevMin
 
rg::BaatzFeatureType const * m_update_stdDevPtr
 

Detailed Description

Baatz based Segments merger.

Definition at line 44 of file SegmenterRegionGrowingBaatzMerger.h.

Constructor & Destructor Documentation

te::rp::SegmenterRegionGrowingBaatzMerger::SegmenterRegionGrowingBaatzMerger ( const double &  colorWeight,
const double &  compactnessWeight,
const std::vector< double > &  bandsWeights,
const SegmentsIdsMatrixT segmentsIds 
)

Default constructor.

Parameters
bandsWeightsA reference to an external valid structure where each bands weight are stored.
segmentsIds//!< A reference to an external valid structure where all segments IDs are stored.
segmentsMatrix//!< A reference to an external valid segments matrix.
colorWeight//!< The weight given to the color component, deafult:0.5, valid range: [0,1].
compactnessWeight//!< The weight given to the compactness component, deafult:0.5, valid range: [0,1].
te::rp::SegmenterRegionGrowingBaatzMerger::~SegmenterRegionGrowingBaatzMerger ( )

Member Function Documentation

DissimilarityTypeT te::rp::SegmenterRegionGrowingBaatzMerger::getDissimilarity ( SegmenterRegionGrowingSegment< rg::BaatzFeatureType > const *const  segment1Ptr,
SegmenterRegionGrowingSegment< rg::BaatzFeatureType > const *const  segment2Ptr,
SegmenterRegionGrowingSegment< rg::BaatzFeatureType > *const  mergePreviewSegPtr 
) const
virtual

Returns a dimilarity index between this and the other segment.

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

Implements te::rp::SegmenterRegionGrowingMerger< rg::BaatzFeatureType >.

unsigned int te::rp::SegmenterRegionGrowingBaatzMerger::getSegmentFeaturesSize ( ) const
inlinevirtual

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

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

Implements te::rp::SegmenterRegionGrowingMerger< rg::BaatzFeatureType >.

Definition at line 78 of file SegmenterRegionGrowingBaatzMerger.h.

static void te::rp::SegmenterRegionGrowingBaatzMerger::getTouchingEdgeLength ( const SegmentsIdsMatrixT segsIds,
const unsigned int &  xStart,
const unsigned int &  yStart,
const unsigned int &  xBound,
const unsigned int &  yBound,
const SegmenterSegmentsBlock::SegmentIdDataType id1,
const SegmenterSegmentsBlock::SegmentIdDataType id2,
unsigned int &  edgeLength1,
unsigned int &  edgeLength2 
)
staticprotected

Returns the count of points from region 1 (with ID1) touching the region 2 (with ID2).

Parameters
segsIdsThe segment ids container.
xStartThe upper left X of the bounding box surrounding both regions.
yStartThe upper left Y of the bounding box surrounding both regions.
xBoundThe lower right X bound of the bounding box surrounding both regions.
yBoundThe lower right Y bound of the bounding box surrounding both regions.
id1Region 1 ID.
id2Region 2 ID.
edgeLength1The touching edge length for the region 1.
edgeLength2The touching edge length for the region 2.
Returns
Returns the count of points from region 1 (with ID1) touching the region 2 (with ID2).
void te::rp::SegmenterRegionGrowingBaatzMerger::mergeFeatures ( SegmenterRegionGrowingSegment< rg::BaatzFeatureType > *const  segment1Ptr,
SegmenterRegionGrowingSegment< rg::BaatzFeatureType > const *const  segment2Ptr,
SegmenterRegionGrowingSegment< rg::BaatzFeatureType > const *const  mergePreviewSegPtr 
) const
virtual

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

Parameters
segment1PtrThe first segment.
segment2PtrA pointer to the second segment.
mergePreviewSegPtrA pointer to a valid segment where the merged features values were be stored by calling getDissimilarityIndex (when aplicable).

Implements te::rp::SegmenterRegionGrowingMerger< rg::BaatzFeatureType >.

void te::rp::SegmenterRegionGrowingBaatzMerger::update ( SegmenterRegionGrowingSegment< rg::BaatzFeatureType > *const  actSegsListHeadPtr)
virtual

Update the internal state.

Parameters
actSegsListHeadPtrA pointer the the active segments list head.

Implements te::rp::SegmenterRegionGrowingMerger< rg::BaatzFeatureType >.

Member Data Documentation

rg::BaatzFeatureType te::rp::SegmenterRegionGrowingBaatzMerger::m_allSegsCompactnessGain
protected

The gains applied to normalize the compactness value.

Definition at line 86 of file SegmenterRegionGrowingBaatzMerger.h.

rg::BaatzFeatureType te::rp::SegmenterRegionGrowingBaatzMerger::m_allSegsCompactnessOffset
protected

The offsets applied to normalize the compactness value.

Definition at line 85 of file SegmenterRegionGrowingBaatzMerger.h.

rg::BaatzFeatureType te::rp::SegmenterRegionGrowingBaatzMerger::m_allSegsSmoothnessGain
protected

The gains applied to normalize the smoothness value.

Definition at line 88 of file SegmenterRegionGrowingBaatzMerger.h.

rg::BaatzFeatureType te::rp::SegmenterRegionGrowingBaatzMerger::m_allSegsSmoothnessOffset
protected

The offsets applied to normalize the smoothness value.

Definition at line 87 of file SegmenterRegionGrowingBaatzMerger.h.

rg::BaatzFeatureType te::rp::SegmenterRegionGrowingBaatzMerger::m_allSegsStdDevGain
protected

The gains applied to normalize the standard deviation value.

Definition at line 90 of file SegmenterRegionGrowingBaatzMerger.h.

rg::BaatzFeatureType te::rp::SegmenterRegionGrowingBaatzMerger::m_allSegsStdDevOffset
protected

The offsets applied to normalize the standard deviation value.

Definition at line 89 of file SegmenterRegionGrowingBaatzMerger.h.

unsigned int te::rp::SegmenterRegionGrowingBaatzMerger::m_bandsNumber
protected

The number of features (bands).

Definition at line 83 of file SegmenterRegionGrowingBaatzMerger.h.

std::vector< rg::BaatzFeatureType > te::rp::SegmenterRegionGrowingBaatzMerger::m_bandsWeights
protected

A vector where each bands weight are stored.

Definition at line 93 of file SegmenterRegionGrowingBaatzMerger.h.

rg::BaatzFeatureType te::rp::SegmenterRegionGrowingBaatzMerger::m_colorWeight
protected

The weight given to the color component, deafult:0.5, valid range: [0,1].

Definition at line 91 of file SegmenterRegionGrowingBaatzMerger.h.

rg::BaatzFeatureType te::rp::SegmenterRegionGrowingBaatzMerger::m_compactnessWeight
protected

The weight given to the compactness component, deafult:0.5, valid range: [0,1].

Definition at line 92 of file SegmenterRegionGrowingBaatzMerger.h.

rg::BaatzFeatureType te::rp::SegmenterRegionGrowingBaatzMerger::m_getDissimilarity_hColor
mutableprotected

Definition at line 104 of file SegmenterRegionGrowingBaatzMerger.h.

rg::BaatzFeatureType te::rp::SegmenterRegionGrowingBaatzMerger::m_getDissimilarity_hCompact
mutableprotected

Definition at line 101 of file SegmenterRegionGrowingBaatzMerger.h.

rg::BaatzFeatureType te::rp::SegmenterRegionGrowingBaatzMerger::m_getDissimilarity_hForm
mutableprotected

Definition at line 103 of file SegmenterRegionGrowingBaatzMerger.h.

rg::BaatzFeatureType te::rp::SegmenterRegionGrowingBaatzMerger::m_getDissimilarity_hSmooth
mutableprotected

Definition at line 102 of file SegmenterRegionGrowingBaatzMerger.h.

rg::BaatzFeatureType te::rp::SegmenterRegionGrowingBaatzMerger::m_getDissimilarity_meanUnion
mutableprotected

Definition at line 107 of file SegmenterRegionGrowingBaatzMerger.h.

rg::BaatzFeatureType te::rp::SegmenterRegionGrowingBaatzMerger::m_getDissimilarity_sizeSeg1D
mutableprotected

Definition at line 97 of file SegmenterRegionGrowingBaatzMerger.h.

rg::BaatzFeatureType te::rp::SegmenterRegionGrowingBaatzMerger::m_getDissimilarity_sizeSeg2D
mutableprotected

Definition at line 98 of file SegmenterRegionGrowingBaatzMerger.h.

rg::BaatzFeatureType te::rp::SegmenterRegionGrowingBaatzMerger::m_getDissimilarity_sizeUnionD
mutableprotected

Definition at line 96 of file SegmenterRegionGrowingBaatzMerger.h.

rg::BaatzFeatureType te::rp::SegmenterRegionGrowingBaatzMerger::m_getDissimilarity_squaresSumUnion
mutableprotected

Definition at line 106 of file SegmenterRegionGrowingBaatzMerger.h.

rg::BaatzFeatureType te::rp::SegmenterRegionGrowingBaatzMerger::m_getDissimilarity_stdDevUnion
mutableprotected

Definition at line 108 of file SegmenterRegionGrowingBaatzMerger.h.

unsigned int te::rp::SegmenterRegionGrowingBaatzMerger::m_getDissimilarity_sumsIdx
mutableprotected

Definition at line 109 of file SegmenterRegionGrowingBaatzMerger.h.

rg::BaatzFeatureType te::rp::SegmenterRegionGrowingBaatzMerger::m_getDissimilarity_sumUnion
mutableprotected

Definition at line 105 of file SegmenterRegionGrowingBaatzMerger.h.

unsigned int te::rp::SegmenterRegionGrowingBaatzMerger::m_getDissimilarity_touchingEdgeLength1
mutableprotected

Definition at line 99 of file SegmenterRegionGrowingBaatzMerger.h.

unsigned int te::rp::SegmenterRegionGrowingBaatzMerger::m_getDissimilarity_touchingEdgeLength2
mutableprotected

Definition at line 100 of file SegmenterRegionGrowingBaatzMerger.h.

const SegmentsIdsMatrixT& te::rp::SegmenterRegionGrowingBaatzMerger::m_segmentsIds
protected

A reference to an external valid structure where each all segments IDs are stored.

Definition at line 78 of file SegmenterRegionGrowingBaatzMerger.h.

unsigned int te::rp::SegmenterRegionGrowingBaatzMerger::m_update_band
mutableprotected

Definition at line 120 of file SegmenterRegionGrowingBaatzMerger.h.

rg::BaatzFeatureType te::rp::SegmenterRegionGrowingBaatzMerger::m_update_compactnessMax
mutableprotected

Definition at line 113 of file SegmenterRegionGrowingBaatzMerger.h.

rg::BaatzFeatureType te::rp::SegmenterRegionGrowingBaatzMerger::m_update_compactnessMin
mutableprotected

Definition at line 112 of file SegmenterRegionGrowingBaatzMerger.h.

SegmenterRegionGrowingSegment< rg::BaatzFeatureType >* te::rp::SegmenterRegionGrowingBaatzMerger::m_update_currentActSegPtr
mutableprotected

Definition at line 119 of file SegmenterRegionGrowingBaatzMerger.h.

rg::BaatzFeatureType* te::rp::SegmenterRegionGrowingBaatzMerger::m_update_featuresPtr
mutableprotected

Definition at line 118 of file SegmenterRegionGrowingBaatzMerger.h.

rg::BaatzFeatureType te::rp::SegmenterRegionGrowingBaatzMerger::m_update_smoothnessMax
mutableprotected

Definition at line 115 of file SegmenterRegionGrowingBaatzMerger.h.

rg::BaatzFeatureType te::rp::SegmenterRegionGrowingBaatzMerger::m_update_smoothnessMin
mutableprotected

Definition at line 114 of file SegmenterRegionGrowingBaatzMerger.h.

rg::BaatzFeatureType te::rp::SegmenterRegionGrowingBaatzMerger::m_update_stdDevMax
mutableprotected

Definition at line 117 of file SegmenterRegionGrowingBaatzMerger.h.

rg::BaatzFeatureType te::rp::SegmenterRegionGrowingBaatzMerger::m_update_stdDevMin
mutableprotected

Definition at line 116 of file SegmenterRegionGrowingBaatzMerger.h.

rg::BaatzFeatureType const* te::rp::SegmenterRegionGrowingBaatzMerger::m_update_stdDevPtr
mutableprotected

Definition at line 121 of file SegmenterRegionGrowingBaatzMerger.h.


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