procrustes op• Data kinds: shapeset → points
• Call: import fullseye as fs; fs.ledger.shape_mean(shapes, max_iter: 'int' = 100, tol: 'float' = 1e-10, scaling: 'bool' = True, reflection: 'bool' = False) (to call the implementation directly, import shapestats; shapestats.shape_mean(shapes, max_iter: 'int' = 100, tol: 'float' = 1e-10, scaling: 'bool' = True, reflection: 'bool' = False); from the registry, opsshapestat.get("shape_mean"))
Mean shape after alignment by GPA. → (N, 3).
★ Do not confuse it with the raw mean (shapes.mean(0)). Averaging without aligning position and orientation shrinks the shape by as much as the individuals are scattered. Aligning first and then averaging is the "mean shape".
• shape_statistics family guide
• Sample-data catalog (download URLs / licences) — 2-D uses skimage.data (BSD/public domain) plus synthetic images; 3-D lists download URLs for real data sources (Stanford, PDS, …).
• Operator provenance and references — the sources of the research/methods this op family came from.
• The canonical algorithm (author, year) and its uses are named in the family usage guide above.
• shapestat_landmark_tour — py -3.11 examples/shapestat_landmark_tour.py
points as input)shape_perturb · procrustes_fit · procrustes_align · procrustes_distance · shape_project · shape_mahalanobis · mirror_plane_from_pairs · landmark_asymmetry
procrustes)procrustes_fit · procrustes_align · procrustes_distance · generalized_procrustes
*Provenance: shapestats.py — SHAPESTAT operator registry. This per-op note is generated by tools/opdocs.py md (do not hand-edit).*
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.