shape_mean — SHAPESTAT 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"))

Usage

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

Detailed usage guide

• shape_statistics family guide

References (sample data, literature)

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

Runnable examples (verified samples that actually call this op)

• shapestat_landmark_tour — py -3.11 examples/shapestat_landmark_tour.py

Ops the type connects to (they accept points as input)

shape_perturb · procrustes_fit · procrustes_align · procrustes_distance · shape_project · shape_mahalanobis · mirror_plane_from_pairs · landmark_asymmetry

Same category (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.