moment_axes — 3D match_pose op

• Data kinds: points → axes

• Call: import fullseye as fs; fs.ledger.moment_axes(points, weights=None) (implementation को सीधे call करना हो तो import match3d; match3d.moment_axes(points, weights=None), registry से लेना हो तो ops3d.get("moment_axes"))

उपयोग

point cloud/weighted points का centroid + principal axes (inertia tensor के eigenvectors)। pose estimation का आधार।

Return value (centroid(3,), axes(3,3) column = principal axis, eigvals(3,))। eigenvalue घटते क्रम में। rotation के canonicalisation के लिए उपयोग होता है।

परिभाषा: w को योग 1 पर normalise करके, centroid c = Σ w p, scatter matrix C = Σ w (p−c)(p−c)ᵀ (covariance। inertia tensor tr(C)I − C के साथ eigenvector साझा हैं और eigenvalue का क्रम उलटा है) को eigh से decompose किया जाता है। axes[:, i] i-वें सबसे बड़े eigenvalue का principal axis है (घटते क्रम में)। eigenvalue variance (लंबाई²) हैं।

• eigenvector का sign मनमाना है, और axes left-handed (det=−1) हो सकता है (match_pca 3rd axis को

उलटकर right-handed बनाता है)।

• weights की लंबाई N है। योग 0 होने पर 0 से भाग से NaN (exception नहीं)। 0 point पर विफल होता है (validation नहीं है)।

• principal axis degenerate हों (sphere आदि) तो axis की दिशा अनिश्चित रहती है।

आगे: match_pca, obb (oriented bbox), canonical pose में rotation।

संदर्भ (sample data, साहित्य)

• Sample data catalog (DL URL / license) — 2-D के लिए skimage.data (BSD/public) + synthetic, 3-D के लिए real data sources (Stanford/PDS आदि) के DL URL।

• Operators का स्रोत और संदर्भ — इस op family के मूल research/methods के स्रोत।

चलाए जा सकने वाले उदाहरण (verified samples जो सच में यह op call करते हैं)

• itokawa_pose_canonical — py -3.11 examples_3d/itokawa_pose_canonical.py

वे अगले ops जिनसे type जुड़ता है (axes को input के रूप में लेते हैं)

fuse_to_voxel

इसी category के (match_pose)

match_phase_3d · match_pca · match_logpolar_z


*Provenance: match3d.py — 3D operator registry. यह per-op note tools/opdocs.py md से अपने-आप generate होता है (हाथ से edit न करें)।*

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