Abstract

To look human, digital full-body avatars need to have soft tissue deformations like those of real people. Current methods for physics simulation of soft tissue lack realism, are computationally expensive, or are hard to tune. Learning soft tissue motion from example, however, has been limited by the lack of dense, high-resolution, training data. We address this using a 4D capture system and a method for accurately registering 3D scans across time to a template mesh. Using over 40,000 scans of ten subjects, we compute how soft tissue motion causes mesh triangles to deform relative to a base 3D body model and learn a low-dimensional linear subspace approximating this soft-tissue deformation.

Our model, called Dyna, relates the linear coefficients of this body surface deformation to the changing pose of the body. We learn a second-order auto-regressive model that predicts soft-tissue deformations based on previous deformations, the velocity and acceleration of the body, and the angular velocities and accelerations of the limbs. Dyna also models how deformations vary with a person’s body mass index (BMI), producing different deformations for people with different shapes. Dyna realistically represents the dynamics of soft tissue for previously unseen subjects and motions. Finally, we provide tools for animators to vary BMI to produce different effects, to selectively control the location and intensity of soft-tissue motions, and to apply the model to new, stylized characters.


Video



Alignments video



Get the data

Dyna data is available here


More Information



Referencing Dyna

Here are the Bibtex snippets for citing the Dyna in your work.

      @article{Dyna:SIGGRAPH:2015,
       title = {Dyna: A Model of Dynamic Human Shape in Motion},
       author = {Pons-Moll, Gerard and Romero, Javier and Mahmood, Naureen and Black, Michael J.},
       month = aug,
       number = {4},
       volume = {34},
       pages = {120:1--120:14}, 
       journal = {ACM Transactions on Graphics, (Proc. SIGGRAPH)},
       year = {2015}
      }