|
mmcfilters
Public API documentation
|
Computes geometric central moments up to third order. More...
#include <MomentBasedAttributeComputer.hpp>
Static Public Member Functions | |
| template<std::floating_point Real> | |
| static void | compute (const AttributeComputeContext< Real > &context) |
| Computes the requested central moments. | |
| template<std::floating_point Real> | |
| static void | computeUnitRows (const UnitAttributeComputeContext< Real > &context) |
| Materializes central moments for one-pixel unit supports. | |
Static Public Attributes | |
| static constexpr std::string_view | familyName = "central-moments" |
| Family name used in dependency-plan diagnostics. | |
| static constexpr AttributeComputerFamily | family = AttributeComputerFamily::CentralMoments |
| Stable family id used by the scheduler. | |
| static constexpr AttributeComputerDomain | domain = AttributeComputerDomain::Topology |
| Execution domain required by the computer. | |
| static constexpr std::array< Attribute, 8 > | producedAttributes |
| Canonical list of central-moment descriptors produced together. | |
Computes geometric central moments up to third order.
The computer exposes the classical central moments required by the rest of the moment-based descriptors:
mu20, mu02, mu11;mu30, mu03, mu21, mu12.The same pass also exposes RAW_INERTIA = mu20 + mu02, the unnormalized polar second central moment. Computing it here avoids an extra dependency materialization or traversal when it is requested by itself.
The implementation is organised in two passes over the hierarchy:
Raw moments are additive across disjoint supports, so child values can be merged directly into their parent without the centroid-shift error that occurs when summing already-centralised child moments.
Definition at line 434 of file MomentBasedAttributeComputer.hpp.
|
inlinestatic |
Computes the requested central moments.
The output buffer is indexed by dense internal node id and interpreted by context.attrNames. Coordinates are row-major image coordinates interpreted as (x = column, y = row). The method accumulates raw moments bottom-up and converts them to central moments after each subtree support has been assembled.
| context | Operation context or diagnostic label. |
Definition at line 463 of file MomentBasedAttributeComputer.hpp.
|
inlinestatic |
Materializes central moments for one-pixel unit supports.
All central moments of a one-pixel support are zero.
| context | Operation context or diagnostic label. |
Definition at line 477 of file MomentBasedAttributeComputer.hpp.
|
staticconstexpr |
Execution domain required by the computer.
Definition at line 443 of file MomentBasedAttributeComputer.hpp.
|
staticconstexpr |
Stable family id used by the scheduler.
Definition at line 440 of file MomentBasedAttributeComputer.hpp.
|
staticconstexpr |
Family name used in dependency-plan diagnostics.
Definition at line 437 of file MomentBasedAttributeComputer.hpp.
|
inlinestaticconstexpr |
Canonical list of central-moment descriptors produced together.
Definition at line 448 of file MomentBasedAttributeComputer.hpp.