central_moments — 3D moment_invariant op

• Datenarten: points → table

• Aufruf: import fullseye as fs; fs.ledger.central_moments(points, max_order: 'int' = 3) -> 'dict' (die Implementierung direkt: import moments3d; moments3d.central_moments(points, max_order: 'int' = 3) -> 'dict'; aus dem Register: ops3d.get("central_moments"))

Verwendung

Die auf den Schwerpunkt bezogenen zentralen Momente μ_{pqr} (translationsinvariant; Schlüssel sind (p,q,r)).

μ_{pqr} = mean( (x-x̄)^p (y-ȳ)^q (z-z̄)^r ). Enthält alle Ordnungen mit p+q+r <= max_order. Da vor der Berechnung der Schwerpunkt abgezogen wird, ist es exakt translationsinvariant. Nach der Gleichmassen-Konvention gilt μ_{000}=1, und die Momente 1. Ordnung μ_{100}=μ_{010}=μ_{001}=0 (Folge der Zentrierung).

Parameters

points : array_like, shape (N, 3)

Punktwolke.

max_order : int

Größte einzubeziehende Ordnung p+q+r (Standard 3). 0 oder größer.

Returns

dict[tuple[int, int, int], float]

(p, q, r) → μ_{pqr}.

Ergänzungen:

• Die Anzahl der Schlüssel im zurückgegebenen dict entspricht allen Kombinationen mit p+q+r <= max_order (20 bei max_order=3). Werte sind float (ein Mittelwert, also durch die Punktanzahl geteilt).

• Einheit ist Länge^(p+q+r). Translationsinvariant, aber nicht invariant gegenüber Rotation oder Skala (Rotationsinvarianten siehe moment_invariants / principal_moments).

• Momente 2. Ordnung wie (2,0,0), (1,1,0) sind genau die Populationskovarianz (durch N geteilt), dasselbe Material wie bei inertia_tensor.

• Höhere Ordnungen werden von Punkten weit weg vom Schwerpunkt dominiert und sind daher anfällig für Ausreißer. Vorab statistical_outlier_removal o. Ä. erwägen.

• Eingabe ist (N,3), N >= 1. max_order < 0, ungültige Form oder nicht endliche Werte lösen ValueError aus. Deterministisch.

Referenzen (Beispieldaten, Literatur)

• Katalog der Beispieldaten (Download-URLs / Lizenzen) — 2-D nutzt skimage.data (BSD/Public Domain) plus synthetische Bilder, 3-D nennt Download-URLs echter Datenquellen (Stanford, PDS, …).

• Herkunft und Literatur der Operatoren — die Quellen der Forschung/Verfahren, auf denen diese Operatorfamilie beruht.

Ausführbare Beispiele (verifizierte Samples, die diesen Operator wirklich aufrufen)

• moment_invariants — py -3.11 examples_3d/moment_invariants.py

Typkompatible Folge-Operatoren (nehmen table als Eingabe)

fuse_to_voxel · mesh_select_lod

Gleiche Kategorie (moment_invariant)

moment_invariants · principal_moments · inertia_tensor


*Provenance: moments3d.py — 3D Operator-Registry. Diese Notiz wird von tools/opdocs.py md erzeugt (nicht von Hand bearbeiten).*

© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.