mmcfilters
Public API documentation
Loading...
Searching...
No Matches
Static Public Member Functions | List of all members
mmcfilters::local_attributes::FiniteWindowLocalAttributeComputer Class Reference

Generic finite-window local-attribute computation over a connected-subset tree model. More...

#include <FiniteWindowLocalAttributeComputer.hpp>

Static Public Member Functions

static std::optional< NodeIdanchoredEntry (const MorphologicalTree &tree, PixelId anchorPixel, PixelId samplePixel)
 Locates a valid absolute sample on the anchor branch.
 
static std::optional< NodeIdanchoredEntry (const MorphologicalTree &tree, PixelId anchorPixel, WindowOffset windowOffset)
 Locates one translated sample on the anchor branch.
 
static AnchorBranch anchorBranch (const MorphologicalTree &tree, PixelId anchorPixel)
 Materializes the branch from the smallest node to the root.
 
static AnchoredEntryMap anchoredEntryMap (const MorphologicalTree &tree, PixelId anchorPixel, const ObservationWindow &observationWindow)
 Materializes anchored entries in window-coordinate order.
 
static AnchoredEntrySet anchoredEntrySet (const MorphologicalTree &tree, PixelId anchorPixel, const ObservationWindow &observationWindow)
 Materializes the distinct anchored entries.
 
static OrderedAnchoredEntries orderedAnchoredEntries (const MorphologicalTree &tree, PixelId anchorPixel, const ObservationWindow &observationWindow)
 Groups and orders entries from the smallest node toward the root.
 
static OrderedAnchoredEntries orderAnchoredEntriesByInclusion (const MorphologicalTree &tree, const AnchoredEntryMap &entryMap)
 Groups and orders an existing entry map by increasing inclusion.
 
static BinaryVisibilityState binaryVisibilityState (const MorphologicalTree &tree, const AnchoredEntryMap &entryMap, NodeId node)
 Evaluates visibility at one node of the anchor branch.
 
template<LocalDecision Decision, class Algebra >
requires EventAlgebra<Algebra, typename Decision::Value>
static std::vector< EventDelta< typename Decision::Value > > computeEventDeltas (const MorphologicalTree &tree, PixelId anchorPixel, const ObservationWindow &observationWindow, const Decision &decision, const Algebra &algebra)
 Computes event deltas from a decision and a separately supplied additive algebra.
 
template<LocalDecision Decision, class Algebra >
requires EventAlgebra<Algebra, typename Decision::Value>
static std::vector< LocalAttributeIncrement< typename Decision::Value > > computeLocalAttributeIncrements (const MorphologicalTree &tree, const ObservationWindow &observationWindow, const Decision &decision, const Algebra &algebra)
 Computes dense increments from a decision and an independent additive algebra.
 
template<class Value , class Algebra >
requires EventAlgebra<Algebra, Value>
static std::vector< NodeAttribute< Value > > aggregateEventIncrements (const MorphologicalTree &tree, std::span< const LocalAttributeIncrement< Value > > increments, const Algebra &algebra)
 Aggregates previously compiled increments with an independent event algebra.
 
template<LocalDecision Decision, class Algebra >
requires EventAlgebra<Algebra, typename Decision::Value>
static std::vector< NodeAttribute< typename Decision::Value > > compute (const MorphologicalTree &tree, const ObservationWindow &observationWindow, const Decision &decision, const Algebra &algebra)
 Computes a finite-window attribute from independent decision and algebra policies.
 

Detailed Description

Generic finite-window local-attribute computation over a connected-subset tree model.

Definition at line 75 of file FiniteWindowLocalAttributeComputer.hpp.

Member Function Documentation

◆ aggregateEventIncrements()

template<class Value , class Algebra >
requires EventAlgebra<Algebra, Value>
static std::vector< NodeAttribute< Value > > mmcfilters::local_attributes::FiniteWindowLocalAttributeComputer::aggregateEventIncrements ( const MorphologicalTree tree,
std::span< const LocalAttributeIncrement< Value > >  increments,
const Algebra algebra 
)
inlinestatic

Aggregates previously compiled increments with an independent event algebra.

Template Parameters
ValueIncrement value type.
AlgebraModel of EventAlgebra for Value.
Parameters
treeStable tree topology.
incrementsDense node-ordered increments.
algebraAdditive aggregation algebra.
Returns
One aggregated attribute per dense node slot.

Definition at line 237 of file FiniteWindowLocalAttributeComputer.hpp.

◆ anchorBranch()

static AnchorBranch mmcfilters::local_attributes::FiniteWindowLocalAttributeComputer::anchorBranch ( const MorphologicalTree tree,
PixelId  anchorPixel 
)
inlinestatic

Materializes the branch from the smallest node to the root.

Parameters
treeTree topology.
anchorPixelAnchor pixel.
Returns
Increasing-inclusion branch, or an empty vector for an invalid anchor.

Definition at line 105 of file FiniteWindowLocalAttributeComputer.hpp.

◆ anchoredEntry() [1/2]

static std::optional< NodeId > mmcfilters::local_attributes::FiniteWindowLocalAttributeComputer::anchoredEntry ( const MorphologicalTree tree,
PixelId  anchorPixel,
PixelId  samplePixel 
)
inlinestatic

Locates a valid absolute sample on the anchor branch.

Parameters
treeTree topology.
anchorPixelAnchor pixel.
samplePixelSample pixel.
Returns
Anchored entry or no value for an invalid/unmapped pixel.

Definition at line 79 of file FiniteWindowLocalAttributeComputer.hpp.

◆ anchoredEntry() [2/2]

static std::optional< NodeId > mmcfilters::local_attributes::FiniteWindowLocalAttributeComputer::anchoredEntry ( const MorphologicalTree tree,
PixelId  anchorPixel,
WindowOffset  windowOffset 
)
inlinestatic

Locates one translated sample on the anchor branch.

Parameters
treeTree with a 2D domain.
anchorPixelAnchor pixel.
windowOffsetTranslated-sample offset.
Returns
Anchored entry or no value outside the domain.

Definition at line 94 of file FiniteWindowLocalAttributeComputer.hpp.

◆ anchoredEntryMap()

static AnchoredEntryMap mmcfilters::local_attributes::FiniteWindowLocalAttributeComputer::anchoredEntryMap ( const MorphologicalTree tree,
PixelId  anchorPixel,
const ObservationWindow observationWindow 
)
inlinestatic

Materializes anchored entries in window-coordinate order.

Parameters
treeTree with a 2D domain.
anchorPixelAnchor pixel.
observationWindowValid observation window.
Returns
Coordinate-preserving entry map.

Definition at line 127 of file FiniteWindowLocalAttributeComputer.hpp.

◆ anchoredEntrySet()

static AnchoredEntrySet mmcfilters::local_attributes::FiniteWindowLocalAttributeComputer::anchoredEntrySet ( const MorphologicalTree tree,
PixelId  anchorPixel,
const ObservationWindow observationWindow 
)
inlinestatic

Materializes the distinct anchored entries.

Parameters
treeTree with a 2D domain.
anchorPixelAnchor pixel.
observationWindowValid observation window.
Returns
Mathematical anchored-entry set.

Definition at line 137 of file FiniteWindowLocalAttributeComputer.hpp.

◆ binaryVisibilityState()

static BinaryVisibilityState mmcfilters::local_attributes::FiniteWindowLocalAttributeComputer::binaryVisibilityState ( const MorphologicalTree tree,
const AnchoredEntryMap entryMap,
NodeId  node 
)
inlinestatic

Evaluates visibility at one node of the anchor branch.

Parameters
treeTree topology.
entryMapValid anchored-entry map.
nodeNode on the map's anchor branch.
Returns
Binary visibility state in window-coordinate order.

Definition at line 165 of file FiniteWindowLocalAttributeComputer.hpp.

◆ compute()

template<LocalDecision Decision, class Algebra >
requires EventAlgebra<Algebra, typename Decision::Value>
static std::vector< NodeAttribute< typename Decision::Value > > mmcfilters::local_attributes::FiniteWindowLocalAttributeComputer::compute ( const MorphologicalTree tree,
const ObservationWindow observationWindow,
const Decision decision,
const Algebra algebra 
)
inlinestatic

Computes a finite-window attribute from independent decision and algebra policies.

Template Parameters
DecisionModel of LocalDecision.
AlgebraModel of EventAlgebra for the decision value.
Parameters
treeStable tree with a finite 2D domain.
observationWindowObservation window.
decisionPure state-to-value decision.
algebraAdditive event and aggregation algebra.
Returns
One aggregated attribute per dense node slot.

Definition at line 256 of file FiniteWindowLocalAttributeComputer.hpp.

◆ computeEventDeltas()

template<LocalDecision Decision, class Algebra >
requires EventAlgebra<Algebra, typename Decision::Value>
static std::vector< EventDelta< typename Decision::Value > > mmcfilters::local_attributes::FiniteWindowLocalAttributeComputer::computeEventDeltas ( const MorphologicalTree tree,
PixelId  anchorPixel,
const ObservationWindow observationWindow,
const Decision decision,
const Algebra algebra 
)
inlinestatic

Computes event deltas from a decision and a separately supplied additive algebra.

Template Parameters
DecisionModel of LocalDecision.
AlgebraModel of EventAlgebra for the decision value.
Parameters
treeStable tree with a finite 2D domain.
anchorPixelValid anchor pixel.
observationWindowObservation window.
decisionPure state-to-value decision.
algebraAdditive difference algebra.
Returns
Inclusion-ordered event deltas for the anchor.

Definition at line 202 of file FiniteWindowLocalAttributeComputer.hpp.

◆ computeLocalAttributeIncrements()

template<LocalDecision Decision, class Algebra >
requires EventAlgebra<Algebra, typename Decision::Value>
static std::vector< LocalAttributeIncrement< typename Decision::Value > > mmcfilters::local_attributes::FiniteWindowLocalAttributeComputer::computeLocalAttributeIncrements ( const MorphologicalTree tree,
const ObservationWindow observationWindow,
const Decision decision,
const Algebra algebra 
)
inlinestatic

Computes dense increments from a decision and an independent additive algebra.

Template Parameters
DecisionModel of LocalDecision.
AlgebraModel of EventAlgebra for the decision value.
Parameters
treeStable tree with a finite 2D domain.
observationWindowObservation window.
decisionPure state-to-value decision.
algebraAdditive difference algebra.
Returns
One non-aggregated increment per dense node slot.

Definition at line 221 of file FiniteWindowLocalAttributeComputer.hpp.

◆ orderAnchoredEntriesByInclusion()

static OrderedAnchoredEntries mmcfilters::local_attributes::FiniteWindowLocalAttributeComputer::orderAnchoredEntriesByInclusion ( const MorphologicalTree tree,
const AnchoredEntryMap entryMap 
)
inlinestatic

Groups and orders an existing entry map by increasing inclusion.

Parameters
treeTree topology.
entryMapValid map on one anchor branch.
Returns
Inclusion-ordered entry masks.

Definition at line 158 of file FiniteWindowLocalAttributeComputer.hpp.

◆ orderedAnchoredEntries()

static OrderedAnchoredEntries mmcfilters::local_attributes::FiniteWindowLocalAttributeComputer::orderedAnchoredEntries ( const MorphologicalTree tree,
PixelId  anchorPixel,
const ObservationWindow observationWindow 
)
inlinestatic

Groups and orders entries from the smallest node toward the root.

Parameters
treeTree with a 2D domain.
anchorPixelAnchor pixel.
observationWindowValid observation window.
Returns
Inclusion-ordered entry masks.

Definition at line 150 of file FiniteWindowLocalAttributeComputer.hpp.


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