A 3D Body from Eight Questions – No Photo, No GPU

· ai hardware · Source ↗

TLDR

  • A tiny MLP (85 KB) predicts 58 SMPL-style body shape parameters from 8 questionnaire inputs using a differentiable physics loss, hitting 0.3 cm height and 0.3 kg mass accuracy at CPU-only inference.

Key Takeaways

  • The core trick: Anny’s forward pass (blendshapes, signed-tetrahedral volume, mass) is included in the PyTorch loss so mass-error gradients flow back through all 58 volume-related params jointly – something Ridge regression cannot do.
  • Two-hidden-layer MLP, 256 units, ReLU, dropout, ~60 min training per gender on a laptop; inference runs in milliseconds on CPU with no GPU required.
  • BWH accuracy lands at 3-4 cm MAE, beating both the bias-corrected Bartol height+weight regression (~7 cm) and their own photo pipeline (5-8 cm), without requiring a photo.
  • A hard accuracy floor exists: even with all 8 inputs locked, ~1.3 cm waist variation remains from ~50 continuous blendshape params that no multiple-choice question can capture.
  • Fixing Anny’s mass calculation was a prerequisite: the original 980 kg/m3 density figure conflated whole-body and tissue-only conventions; per-gender density derived via the Siri two-component model and Navy body-fat formula closed a multi-kg systematic error.

Hacker News Comment Review

  • Commenters questioned why height and weight errors are nonzero when both are explicit inputs; the answer from the post is that the 58 output params must collectively reproduce height and mass through the physics forward pass, so small param errors compound before being corrected by the loss barrier terms.
  • The torso-to-leg ratio is an acknowledged blind spot: it is not captured by any of the 8 questions, limiting accuracy for people whose proportions deviate from population averages.
  • One commenter noted the inference space is small enough (~10M combinations of discrete inputs crossed with height/weight ranges) that a full precompute lookup table could return results in under a second, making even the CPU MLP potentially overkill for production.

Notable Comments

  • @chiph: Recalls Levi’s Intellifit millimeter-wave 3D scanner program from ~20 years ago – it failed because the market turned out to be middle-aged buyers, not the targeted 18-25 demographic.
  • @sorenjan: Sharp question on why height and weight errors are nonzero given they are known inputs – surfaces an important implementation detail about indirect param coupling through the physics forward pass.

Original | Discuss on HN