synth op• Data kinds: points → points
• Call: import fullseye as fs; fs.ledger.shape_perturb(shape, amplitude: 'float' = 0.05, mode: 'str' = 'bulge', center=(1.0, 0.0, 0.0), sigma: 'float' = 0.4, seed: 'int' = 0) (implementation को सीधे call करना हो तो import shapestats; shapestats.shape_perturb(shape, amplitude: 'float' = 0.05, mode: 'str' = 'bulge', center=(1.0, 0.0, 0.0), sigma: 'float' = 0.4, seed: 'int' = 0), registry से लेना हो तो opsshapestat.get("shape_perturb"))
shape पर 1 ज्ञात deformation लगाता है। → (N, 3)।
mode:
• "bulge" —— *center* के आसपास Gaussian weights से बाहर की ओर फुलाता है। केवल एक ओर लगाने पर यह बाएँ-दाएँ asymmetry का ground truth बन जाता है।
• "shift" —— *center* की दिशा में uniform translation (वह component जिसे Procrustes हटा देता है)।
• "scale" —— uniform enlargement (वह component जिसे scaling=True वाला Procrustes हटा देता है)।
• "noise" —— isotropic Gaussian noise (एक floor जिसे कोई भी method नहीं हटाता)।
"Procrustes जिन deformations को हटा देता है" और "जिन्हें हटाना नहीं चाहिए", इन्हें अलग-अलग test कर सकें, इसलिए ये 4 रखे गए हैं। registration के cross-check के लिए यह भेद ज़रूरी है।
• 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 में दिए गए हैं।
• shapestat_landmark_tour — py -3.11 examples/shapestat_landmark_tour.py
points को input के रूप में लेते हैं)procrustes_fit · procrustes_align · procrustes_distance · shape_project · shape_mahalanobis · mirror_plane_from_pairs · landmark_asymmetry · signed_surface_distance
synth)*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.