Source-linked AI summary

SOMA: Unifying Parametric Human Body Models

Jun Saito, Jiefeng Li, Michael de Ruyter, Miguel Guerrero, Edy Lim, Ehsan Hassani, Roger Blanco Ribera, Hyejin Moon, Magdalena Dadela, Marco Di Lucca, Qiao Wang, Xueting Li, Jan Kautz, Simon Yuen, Umar Iqbal

arXiv:2603.16858v1cs.CVcs.AI

TL;DR

Parametric body models use incompatible topologies, skeletons, shape parameterizations, and units, complicating pipelines that combine identity sources and pose data. SOMA unifies supported backends through topology, skeletal, and pose abstractions. Across multiple backends and 100 diverse identities, the paper reports sub-millimeter mean topology-transfer errors, sub-centimeter pose-inversion accuracy above 300 FPS on a laptop GPU, and throughput exceeding 7,000 meshes per second at batch size 128.

  • Problem

    Different body models use distinct mesh topologies, joint hierarchies, unit conventions, and parameter spaces, requiring pairwise adapters to combine identity sources and pose data.

    Source: §1 · p. 2
  • Method

    SOMA maps supported body-model identities to a canonical mesh and rig, fits identity-adapted skeletons, and recovers unified rotations from posed vertices.

    Source: §1 · p. 3
  • Results

    Across multiple backends and 100 diverse identities, SOMA reports sub-millimeter mean topology-transfer errors, sub-centimeter pose-inversion accuracy above 300 FPS on a laptop GPU, and throughput exceeding 7,000 meshes/sec at batch size 128.

    Source: §5 · p. 15
  • Takeaways & Limitations

    SOMA reduces O(M²) pairwise adapters to O(M) single-backend connectors, allowing identity sources and pose data to be mixed at inference time.

    Source: §1 · p. 2

    Topology transfer can degrade with poorly registered wraps or source meshes with extreme vertex-density asymmetry; LBS artifacts remain at highly non-rigid deformations, and new backends require one-time mesh registration.

    Source: §5 · p. 15

Abstract

from arXiv · show

Parametric human body models are foundational to human reconstruction, animation, and simulation, yet they remain mutually incompatible: SMPL, SMPL-X, MHR, Anny, and related models each diverge in mesh topology, skeletal structure, shape parameterization, and unit convention, making it impractical to exploit their complementary strengths within a single pipeline. We present SOMA, a unified body layer that bridges these heterogeneous representations through three abstraction layers. Mesh topology abstraction maps any source model's identity to a shared canonical mesh in constant time per vertex. Skeletal abstraction recovers a full set of identity-adapted joint transforms from any body shape, whether in rest pose or an arbitrary posed configuration, in a single closed-form pass, with no iterative optimization or per-model training. Pose abstraction inverts the skinning pipeline to recover unified skeleton rotations directly from posed vertices of any supported model, enabling heterogeneous motion datasets to be consumed without custom retargeting. Together, these layers reduce the $O(M^2)$ per-pair adapter problem to $O(M)$ single-backend connectors, letting practitioners freely mix identity sources and pose data at inference time. The entire pipeline is fully differentiable end-to-end and GPU-accelerated via NVIDIA-Warp.

1. Introduction

Parametric body models differ in topology, skeleton, units, and parameterization, making it costly to combine their complementary strengths. SOMA provides a shared body representation and abstraction layers that reduce pairwise adapters and separate identity from pose.

1. Introduction

  • Different topologies, joint hierarchies, unit conventions, and parameter spaces make combining body models require separate pipelines for each model pair.The resulting O(M²) adapter burden can force early commitment to one model and forfeit complementary strengths.Source: §1 · p. 2
  • SOMA replaces O(M²) per-pair adapters with O(M) single-backend connectors that can be composed at inference time.It maps supported models’ rest shapes to a shared representation and animates them through one unified LBS pipeline.Source: §1 · p. 2
  • SOMA’s four contributions include canonical-topology identity-pose decoupling, mesh topology abstraction, skeletal abstraction, and pose abstraction.The abstractions transfer rest shapes, fit identity-adapted joint transforms in a closed-form pass, and recover SOMA rotations from posed vertices using analytical inverse-LBS.Source: §1 · pp. 2–3
  • The SOMA forward pass is fully differentiable end-to-end, enabling its use as a layer in optimization and machine-learning training pipelines.The pose-dependent correctives model generalizes across backends.Source: §1 · pp. 2–3

2. Related Work

Existing parametric body models retain distinct representations, while human pose-estimation and motion-generation systems generally target a particular model. SOMA offers a shared topology, rig, and pose convention across supported backends.

2.1. Parametric Body Models

  • Prior parametric models retain distinct mesh topologies, joint hierarchies, and parameter spaces; SOMA supplies a canonical mesh and rig without replacing them.The models described include SMPL, MHR, Anny, and GarmentMeasurements.Source: §2.1 · p. 3

2.2. Human Motion Estimation and Generation

  • Pose-estimation and motion-generation systems generally output parameters for one body model and must be retrained when the target representation changes.SOMA-compatible pose outputs can drive supported identities at inference time without retraining.Source: §2.2 · p. 3
  • Figure 2 lays out the pipeline from backend-specific rest shapes through shared topology and skeletal abstraction to animation on the SOMA rig.Foreign-model poses are converted to SOMA rotations by pose abstraction; SOMA-native poses bypass that step.Source: Figure 2 · p. 4

3. Method

SOMALayer is SOMA’s runtime component for producing posed meshes and joint positions from identity and pose parameters.

3. Method

  • SOMALayer accepts shape parameters from a supported identity backend alongside pose parameters and outputs posed mesh vertices and joint positions in meters.Figure 2 illustrates the pipeline.Source: §3 · p. 4

3.1. Overview and Notation

The overview defines the canonical SOMA mesh and describes the differentiable forward pass that maps a source mesh and pose to posed SOMA vertices.

3.1. Overview and Notation

  • SOMA’s forward pass transforms a source mesh and pose through mesh topology abstraction, closed-form skeleton fitting, and LBS posing.Each step is fully differentiable.Source: §3.1 · p. 4
  • The canonical SOMA mesh is denoted V_h, with N_h vertices, triangle faces F_h, and J = 77 joints excluding the root.The source backend generates a rest-shape mesh in its native unit.Source: §3.1 · p. 4

3.2. Identity Model Provider

SOMA integrates five interchangeable identity backends, allowing users to choose among their distinct shape representations within one pipeline. Its own SOMA-Shape model is trained from registered body scans and garment-measurement samples.

3.2. Identity Model Provider

  • The SOMA-Shape training scans are registered to SOMA topology, reposed to a canonical A-pose, and mirror-augmented to enforce bilateral symmetry.Figure 3 shows subsets of 9,326 SizeUSA scans and 303 Triplegangers scans.Source: Figure 3 · p. 5
  • SOMA-Shape uses 128 PCA components trained on SizeUSA scans, Triplegangers scans, and GarmentMeasurements samples in a 40/40/20 mixing ratio.The components are learned by incremental PCA.Source: §3.2 · p. 5
  • SMPL and SMPL-X use PCA blend shapes learned from registered 3D body scans, with 10 components for SMPL and 300 for SMPL-X.Source: §3.2 · p. 5
  • MHR combines PCA identity coefficients with explicit bone-length scales to control body-surface shape and skeletal proportions.Source: §3.2 · p. 5
  • Anny controls shape with six anthropometric phenotypes and represents subjects from infants to elders.It is the only backend described as capable of representing subjects below 18 years of age.Source: §3.2 · p. 5
  • GarmentMeasurements encodes body shape with 15 PCA components fitted to body scans and is often used in garment-modeling literature.Source: §3.2 · p. 5

3.3. Mesh Topology Abstraction

Mesh topology abstraction maps each source model’s neutral mesh to the SOMA canonical mesh using a fixed 3D barycentric correspondence. The mapping is precomputed at initialization and applied as a lightweight runtime gather.

3.3. Mesh Topology Abstraction

  • A fixed 3D barycentric correspondence maps each source model’s neutral mesh to the SOMA canonical mesh, which serves as the shared topology for cross-model operations.Figure 4 contrasts native topologies with identities mapped onto SOMA topology.Source: §3.3 · p. 5, Figure 4 · p. 6
  • For each SOMA vertex, the method finds a nearby source triangle, lifts it to a tetrahedron with a fourth point along the face normal, and solves for barycentric coordinates.The tetrahedral lift handles query points slightly off the surface and preserves volume where surface correspondence is unclear.Source: §3.3 · pp. 5–6
  • The initialization stores face indices and barycentric coordinates, which are used to reconstruct each SOMA vertex as a weighted combination of source-mesh vertices.At runtime, the source mesh is augmented with a normal-offset point per face, and the cost is independent of source vertex count.Source: §3.3 · p. 6

3.4. Skeletal Abstraction

SkeletonTransfer fits a 77-joint rig to a body on the SOMA topology through analytical joint-position regression and joint-rotation fitting. Its two stages adapt the skeleton to the transferred rest shape.

3.4. Skeletal Abstraction

  • SkeletonTransfer recovers world-space transforms for a 77-joint rig from a rest shape on the SOMA topology in two analytical stages.Figure 5 illustrates fitted SOMA skeletons on eight MHR identities in diverse poses.Source: §3.4 · p. 6, Figure 5 · p. 7

3.4.1. Stage 1: Joint position regression via RBF

  • A prebuilt per-joint RBF regressor predicts joint positions from the identity rest shape, using vertices with non-zero skinning weight for the joint or its parent.All positions are computed in parallel with a pre-assembled sparse matrix multiplication.Source: §3.4.1 · p. 7

3.4.2. Stage 2: Joint rotation fitting via Kabsch alignment

  • Joint rotations are fitted because source models use different canonical poses, so bind-pose orientations cannot simply be copied onto the identity’s rest shape.Source: §3.4.2 · p. 7
  • Rotation fitting aligns the skinned vertex cloud, then refines orientation toward child-joint bone vectors using a shortest-arc rotation or Procrustes alignment.The final world-space rotation combines the refinement with the canonical bind-pose world rotation; the transforms are vectorized across joints with NVIDIA Warp kernels.Source: §3.4.2 · pp. 7–8

3.5. Animation Layer

SOMA’s animation layer applies LBS and pose-dependent correctives to identity-adapted rest shapes. Pose inputs drive forward kinematics, while one corrective model operates across identity backends on the shared topology.

3.5. Animation Layer

  • Given identity-adapted joint transforms and a rest shape, SOMA’s animation layer applies LBS and correctives to produce animated vertices.Source: §3.5 · p. 8

3.5.1. Posing

  • Pose parameters may be supplied as axis-angle vectors or rotation matrices, with optional root translation, and forward kinematics composes local rotations up the joint hierarchy.Joint orient can be applied when input rotations are relative to a canonical pose such as T-pose or A-pose.Source: §3.5.1 · p. 8

3.5.2. Pose-Dependent Correctives

  • A unified corrective model operates on the shared canonical topology and rest pose, applying to all backends where standard LBS can produce artifacts at joints under large rotations.A lightweight MLP predicts the correctives from local joint rotations; training distills about 80,000 MHR posed meshes onto SOMA topology.Source: §3.5.2 · p. 8, Figure 6 · p. 9

3.6. Pose Abstraction

Pose abstraction recovers a unified SOMA skeleton from posed meshes, so supported motion data can be used without custom retargeting. The method combines topology transfer, skeleton-based initialization, analytical inverse-LBS refinement, and optional gradient-based refinement.

3.6. Pose Abstraction

  • Pose inversion recovers SOMA rotations from posed vertices, allowing supported SMPL, MHR, and Anny motion data to be consumed without custom retargeting.The method addresses the inverse of forward kinematics and linear blend skinning.Source: §3.6 · p. 9
  • For noncanonical input meshes, barycentric transfer first maps vertices to SOMA topology; RBF joint regression and Procrustes alignment then initialize joint rotations.The skeleton-transfer initialization can also serve as a fast standalone solver when coarse pose recovery is sufficient.Source: §3.6 · p. 10
  • Analytical refinement solves joint rotations in parent-to-child order after subtracting the already-solved ancestor contribution from observed vertices.A Procrustes alignment estimates each joint’s local rotation from the isolated deformation.Source: §3.6 · p. 10
  • Newton-Schulz orthogonalization avoids SVD singular-vector sign flips in near-coplanar joint point clouds, preventing discontinuous shoulder rotation jumps.The iteration computes the polar factor of the covariance matrix continuously from the current estimate.Source: §3.6 · p. 10
  • Refinement proceeds from body joints to optional fingers, then applies a final global pass so fine articulation follows large-scale motion.The coarse-to-fine schedule reduces contamination of finger estimates by unresolved upstream errors.Source: §3.6 · p. 10
  • Optional autograd refinement optimizes continuous 6D rotations through full FK+LBS and must start from the analytical result; the analytical solver runs at about 1,200 frames per second.Autograd can further reduce extremity error but is slower, with the 100-step path running at 16–18 FPS on an NVIDIA RTX 5000 Ada GPU.Source: §3.6 · p. 10

4. Evaluation

SOMA is evaluated for topology transfer, pose inversion, runtime, and cross-model shape reconstruction. Results show low transfer and inversion errors alongside distinct speed–accuracy and extremity–trunk tradeoffs.

4.1. Topology Abstraction Fidelity

  • 0.12 mm for SMPL and 0.06 mm for SMPL-X, while Anny reaches 0.01 mm and MHR 0.40 mm mean topology-transfer error; all P95 errors remain below 1.5 mm.The SOMA-native backend has zero error by construction, and SMPL/SMPL-X errors closely match the wrap baseline.Source: §4.1 · p. 11

4.2. Pose Inversion Accuracy

  • 5.3 mm mean error at 882 FPS for analytical inversion, versus 4.1 mm for warm-started autograd; uninitialized autograd reaches 501.8 mm and fails to converge correctly.Skeleton transfer alone gives 16.5 mm mean error at 17,393 FPS; Fig. 9 compares the stages on SMPL and MHR.Source: §4.2 · p. 12, Figure 9 · p. 14
  • 57% lower hand error (4.7 to 2.0 mm), 29% lower foot error (8.2 to 5.8 mm), and 30% lower head error (6.9 to 4.8 mm) with warm-started autograd refinement.Trunk error decreases slightly from 16.8 to 15.3 mm as the optimizer redistributes error; Fig. 8 visualizes the hand–trunk tradeoff.Source: §4.2 · p. 12, Table 3 · p. 12, Figure 8 · p. 13
  • 1.6 mm/frame peak shoulder-error oscillation with SVD falls to 0.8 mm/frame with Newton-Schulz, a 2× improvement in temporal stability.The same-frame shoulder comparison shows popping with SVD and a smooth result with Newton-Schulz.Source: §4.2 · pp. 12–13
  • 100 Adam iterations without initialization can settle into a local minimum with incorrect limb placement, whereas the analytical solver recovers the standing pose in one pass.Figure 10 contrasts the failed uninitialized fit with the analytical result on SAM 3D Body.Source: §4.2 · p. 13

4.3. Runtime Performance

  • Over 7,000 meshes/sec at batch size 128 on the Warp GPU path; skeleton fitting takes under 1.5 ms, and topology abstraction adds about 0.3–0.8 ms.Measurements used a single NVIDIA A100 80 GB GPU for Warp and a 32-core AMD EPYC 7763 CPU for PyTorch.Source: §4.3 · p. 13

4.4. Cross-Model Shape-Space Comparison

  • 5.8 mm mean error for SOMA-Shape with 128 components, close to SMPL-X’s 5.5 mm with 300; SMPL and GarmentMeasurements leave 14 mm and 12 mm residuals, respectively.The comparison projects 33 held-out scans onto each model’s full PCA basis; Fig. 11 shows residuals across representative scans.Source: §4.4 · pp. 13–14

5. Conclusion

SOMA unifies heterogeneous body models through a canonical mesh and rig with topology, skeleton, and pose abstraction. It reduces pairwise adapters to single-backend connectors, with reported low transfer and inversion errors and high forward throughput.

5. Conclusion

  • SOMA reduces the O(M^2) pairwise adapter problem to O(M) single-backend connectors, allowing identity sources and pose data to be mixed at inference time.The framework maps supported backends to a shared canonical mesh topology and rig.Source: §5 · p. 14
  • Its mesh, skeleton, and pose abstractions unify body shapes, adapt skeletons to identities, and recover rotations from posed vertices without per-model training or iterative optimization.The pipeline is fully differentiable and GPU-accelerated.Source: §5 · p. 15
  • Evaluation reports sub-millimeter mean topology-transfer error, sub-centimeter pose-inversion accuracy above 300 FPS on a laptop GPU, and over 7,000 meshes/sec at batch size 128.These results cover multiple backends and 100 diverse identities.Source: §5 · p. 15
  • Pose abstraction applies to models with compatible human body geometry; it does not generalize to robots or non-humanoid characters.Such cases require a specialized retargeting solution.Source: §5 · p. 15
Loading 2603.16858v1…