Skip to main content
๐Ÿค–AI-generated documentationโ˜ curatedAI Generated
This page was drafted by an AI assistant and may contain inaccuracies.
About content generation types
๐Ÿค–
AI Generated โ€” Page drafted entirely by AI from codebase or prompt instructions.
(e.g., docs generated from codebase analysis)
โ† this page
โœ‹โ†’๐Ÿค–
AI Transformatted โ€” Human provided raw material; AI restructured it into a different format.
(e.g., livestream โ†’ blog post, meeting notes โ†’ docs)
โœ‹
Human Generated โ€” Page written entirely by a human author.
(e.g., hand-written tutorial)
More info about content generation types โ†—

Centroidal Kinematics & the Reaction Mass Pendulum

What this isโ€‹

freemocap already reconstructs a 3D skeleton per frame and computes the whole-body center of mass (CoM) and the extrapolated center of mass (XCoM). This proposal adds the next layer of whole-body dynamics: a compact, principled description of the body's rotational state about its center of mass.

Concretely, per frame we want to compute and visualize:

  • the composite centroidal inertia I_G โ€” how the body's mass is distributed about its CoM, rendered as the reaction-mass ellipsoid;
  • the centroidal angular momentum H_G โ€” how much rotational "spin" the body is carrying, and the equivalent body angular velocity ฯ‰ = I_Gโปยน H_G;
  • a unified set of ground-reference points โ€” CoP, XCoM, and the Centroidal Moment Pivot (CMP) โ€” that together describe balance.

The result is a single, coherent kinematic state of the body that can be streamed to the frontend and drawn alongside the skeleton.

Why โ€” the model hierarchyโ€‹

Every reduced-order balance model in the biomechanics / humanoid-robotics literature is a point on one spectrum, distinguished by how much rotational inertia it admits. freemocap currently sits at the simplest end. This proposal moves it to the rich end.

  • The point-mass linear inverted pendulum (LIP) throws angular momentum away. Its balance metric is the XCoM, which is mathematically identical to the instantaneous capture point โ€” the same quantity discovered independently by Hof (2008) in biomechanics and Pratt and colleagues in robotics.
  • The LIP + flywheel model (Pratt's capturability work) adds a reaction wheel at the CoM that can generate bounded angular momentum, which extends the region a body can recover balance from.
  • The Reaction Mass Pendulum (RMP) (Lee & Goswami; Sanyal & Goswami) is that flywheel done properly: a full 3D, variable-inertia "reaction mass" at the CoM.

So the RMP is not a separate feature bolted on next to the XCoM โ€” it is the natural completion of the XCoM. freemocap has built the angular-momentum-free balance metric; this proposal puts the angular momentum back.

The elegant overlaps we want to highlightโ€‹

A recurring theme โ€” and a thing worth surfacing in the product itself โ€” is that several "different" quantities are mathematically the same point, discovered by different communities:

QuantityCommunityDefinition
Extrapolated CoM (XCoM)Biomechanics (Hof 2008)CoM_ground + v/ฯ‰โ‚€
Instantaneous capture pointHumanoid robotics (Pratt et al.)CoM_ground + v/ฯ‰โ‚€
Divergent component of motionControlunstable eigenvector of the LIP

These are one point under three names. Likewise the Centroidal Moment Pivot (CMP) coincides with the center of pressure (CoP) exactly when centroidal angular momentum is not changing โ€” so the CoPโ†”CMP separation is a direct, on-the-floor readout of the reaction mass at work. See Theory & Math for the derivations.

Scope and non-goalsโ€‹

In scope: per-frame estimation and visualization of centroidal kinematics from the measured skeleton.

Explicitly out of scope: the control halves of these papers (Morse-Lyapunov stabilization, proof-mass actuators, balance controllers). freemocap measures a human; it does not actuate one. We borrow the representations, never the controllers.

Status & phasingโ€‹

PhaseContentStatus
P0CoM + XCoM (per-frame)Done (realtime pipeline)
P1Module scaffold + point-mass inertia ellipsoid + CoP + CMPDone โ€” backend tested, frontend typechecked; live smoke pending
P2Anthropometric segment inertia โ†’ real I_G; orbital H_GData landed (de Leva table); compute pending
P3Per-segment orientation โ†’ spin term; ฯ‰; full RMPPlanned
P4Posthoc/offline path + validation vs literature benchmarksPlanned

See Implementation Plan for the detailed breakdown and Bibliography for sources.