deviation op• Data kinds: points × points → signal
• Call: import fullseye as fs; fs.ledger.signed_surface_distance(query, surface, surface_normals=None, k: 'int' = 1) (implementation को सीधे call करना हो तो import shapestats; shapestats.signed_surface_distance(query, surface, surface_normals=None, k: 'int' = 1), registry से लेना हो तो opsshapestat.get("signed_surface_distance"))
query point से सतह तक sign सहित दूरी। → (N,)।
चिह्न surface के normal से तय होता है (बाहर धनात्मक)। 1-D contour के लिए profileops.profile_deviation है, पर 3-D में उसका समकक्ष नहीं था -- यही वह gap था जो 2026-09-06 को PoC ने उजागर किया।
normals छोड़ने पर normals_orient.estimate_oriented_normals से estimate किए जाते हैं -- oriented न हों तो चिह्न point-दर-point बिखर जाता है (सादे PCA normals का चिह्न मनमाना होता है, और rotate करने पर 10 में से 4 उलट जाते हैं। वही gap जिसमें pointcloud.fpfh फँसा था)।
k चिह्न तय करने में इस्तेमाल होने वाले nearest neighbours की संख्या है। 1 होने पर सबसे पास के 1 point के normal पर दाँव लगता है, और noisy surface पर चिह्न उछलता है। 2 या अधिक करने पर दूरी से weighted औसत orientation से तय होता है (दूरी स्वयं nearest neighbour वाली ही रहती है)।
• shape_statistics family guide
• 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 के स्रोत।
• Algorithm का मानक स्रोत (लेखक, वर्ष) और उपयोग ऊपर की family usage guide में दिए गए हैं।
• poc_am_thermal_to_ct — py -3.11 examples/poc_am_thermal_to_ct.py
• shapestat_landmark_tour — py -3.11 examples/shapestat_landmark_tour.py
signal को input के रूप में लेते हैं)deviation)—
*Provenance: shapestats.py — SHAPESTAT operator registry. यह per-op note tools/opdocs.py md से अपने-आप generate होता है (हाथ से edit न करें)।*
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.