generalized_procrustes — SHAPESTAT procrustes op

• Data kinds: shapeset → shapeset

• Call: import fullseye as fs; fs.ledger.generalized_procrustes(shapes, max_iter: 'int' = 100, tol: 'float' = 1e-10, scaling: 'bool' = True, reflection: 'bool' = False) (implementation को सीधे call करना हो तो import shapestats; shapestats.generalized_procrustes(shapes, max_iter: 'int' = 100, tol: 'float' = 1e-10, scaling: 'bool' = True, reflection: 'bool' = False), registry से लेना हो तो opsshapestat.get("generalized_procrustes"))

उपयोग

Generalised Procrustes (GPA)। सभी सदस्यों को एक साझा frame में लाता है। → (K, N, 3)।

प्रक्रिया textbook जैसी ही है: 1 individual को अस्थायी mean मानकर सबको align करें, mean फिर से निकालें, उस mean को पहले individual से फिर align करके frame का बहाव रोकें, और converge होने तक दोहराएँ। आख़िरी कदम न हो तो mean हर बार धीरे-धीरे घूमता है और tol तक नहीं पहुँचता।

convergence का निर्णय mean shape के खिसकने की मात्रा (हर point का RMS) से होता है। iterations की संख्या और converge हुआ या नहीं, यह न shape_mean से लौटता है न इस function से -- क्योंकि यह group लौटाने वाला function है, diagnosis चाहिए तो पहले और बाद में procrustes_distance मापें।

उपयोग की विस्तृत guide

• shape_statistics family guide

संदर्भ (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 के स्रोत।

• Algorithm का मानक स्रोत (लेखक, वर्ष) और उपयोग ऊपर की family usage guide में दिए गए हैं।

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

• shapestat_landmark_tour — py -3.11 examples/shapestat_landmark_tour.py

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

shape_mean · shape_pca

इसी category के (procrustes)

procrustes_fit · procrustes_align · procrustes_distance · shape_mean


*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.