gicp op• Data kinds: points → descriptor
• Call: import fullseye as fs; fs.ledger.estimate_covariances(points, k: 'int' = 20, epsilon: 'float' = 0.001) -> 'np.ndarray' (implementation को सीधे call करना हो तो import gicp; gicp.estimate_covariances(points, k: 'int' = 20, epsilon: 'float' = 0.001) -> 'np.ndarray', registry से लेना हो तो ops3d.get("estimate_covariances"))
हर point की local covariance के eigenvalues को (ε,1,1) से बदलकर बनी plane-to-plane covariance (N,3,3)।
k nearest neighbours (point स्वयं सहित) की sample covariance का eigen-decomposition करता है, और eigenvalues को tangent plane के अंदर 1 और surface normal दिशा (सबसे छोटे eigenvalue की दिशा) में ε से बदलकर पुनर्निर्मित करता है। Covariance का आकार neighbourhood के फैलाव से स्वतंत्र, स्थिर (ε,1,1) रहता है, जिससे scale-invariant "समतल होने की संभावना" वाला model बनता है (GICP का मूल)।
Arguments:
points (N,3): point cloud।
k: neighbours की संख्या (point स्वयं सहित)। Covariance estimation लगभग k≥4 से स्थिर रहता है।
epsilon: normal दिशा को दिया गया छोटा variance (0<ε<1)। जितना छोटा, उतना अधिक मज़बूती से
tangent plane पर बाँधता है। Scale-invariant (dimensionless अनुपात)।
Return value:
(N,3,3) symmetric positive-definite covariances का समूह। हर covariance के eigenvalues {ε,1,1} हैं, और ε से
संबंधित eigenvector local surface normal की दिशा है।
Exceptions:
ValueError: points (N,3) नहीं है / N<3 (normal तय नहीं होता, degenerate) /
epsilon (0,1) से बाहर (fail-closed)।
• 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 के स्रोत।
• gicp_register — py -3.11 examples_3d/gicp_register.py
descriptor को input के रूप में लेते हैं)fuse_to_voxel · shape_distance
gicp)*Provenance: gicp.py — 3D operator registry. यह per-op note tools/opdocs.py md से अपने-आप generate होता है (हाथ से edit न करें)।*
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.