Patent Description:
There is an extensive literature on (and commercial solutions for) estimating skeleton proxies from marker sets. Since MoSh does not use a skeleton, these methods are not reviewed here. Instead, it is focused on several key themes in the literature that more directly relate to the work: fitting models to sparse markers, dense marker sets, and surface capture.

From Markers to Models: To get body shape from sparse markers, one needs a model of body shape to constrain the problem. There have been several previous approaches.

<NPL>, learn a model of body shape variation in a fixed pose from 3D training scans.

<NPL> go further to learn a model that captures both body shape and non-rigid pose deformation.

Allen et al. show that one can approximately recover an unknown 3D human shape from a sparse set of <NUM> landmarks. They do this only for a fixed pose since their model does not represent pose variation. Importantly the landmarks are perfect and known; that is, they have the 3D points on the mesh they want to recover and do not need to estimate their location on the mesh. Unlike MoSh this does not address the problem of estimating body shape and pose from mocap markers alone.

Anguelov et al. [<NUM>], and also the companion patent application <CIT> by four of the authors, show how to animate a SCAPE model from motion capture markers. Their method requires a 3D scan of the subject with the markers on their body. This scan is used for two purposes. First it is used to estimate the 3D shape model of the person; this shape is then held fixed. Second the scanned markers are used to establish correspondence between the scan and the mocap markers. These limitations mean that the approach cannot work on archival mocap data and that a user needs both a 3D body scanner and a mocap system.

It is important to note that Anguelov et al. did not solve the problem addressed by MoSh. They fit a SCAPE model to a 3D body scan (what they call shape completion) and with known marker locations, animate the model from mocap markers. It is gone go beyond their work to estimate the body shape from only the sparse mocap markers without the use of any scan and without knowing their precise location on the body. This is done by simultaneously solving for the marker locations, the shape of the body and the pose using a single objective function and optimization method. Unlike [Anguelov et al. <NUM>], MoSh is fully automatic and applicable to archival data.

It is gone also beyond previous work to define new marker sets and evaluate the effect of these on reconstruction accuracy. This provides a guide for practitioners to choose appropriate marker sets.

Dynamics of Soft Tissue: Unlike MoSh, the above work does not address the capture of soft tissue motion. Interestingly, much of the attention paid to soft-tissue motion in the mocap community (particularly within biomechanics) actually focuses on minimizing the effects of soft tissue dynamics, as disclosed in <NPL>. Soft tissue motion means the markers move relative to the bones and this reduces the accuracy of the estimated skeletal models. For animation, it is argued that such soft tissue motions are actually critical to making a character look alive.

Dense Marker Sets: To capture soft-tissue motion, previous work has used large, dense, marker sets. <NPL>, use <NUM> markers to recover skin deformation; in the process, they deform a subject-specific model to the markers and estimate missing marker locations. In <NPL>:<NUM>, they use a large (<NUM>-<NUM>) marker set for ≈ <NUM>, <NUM> frames of activity to create a subject-specific model; this model can then be used to recover pose for the same subject in later sessions with a sparse marker set. In these works, the authors visualize soft-tissue deformations on characters resembling the mocap actor. Here soft-tissue deformations are transferred to more stylized characters.

<NPL>, use <NUM> markers on the shoulder complex and a data driven approach to infer a model of shoulder articulation. While dense markers can capture rich shape and deformation information, they are not practical for many applications. Placing the markers is time consuming and a large number of markers may limit movement. With these large sets, additional challenges emerge in dealing with inevitable occlusions and marker identification.

Recent work captures skin deformations using a dense set of markers or patterns painted on the body, like <NPL> or <NPL>. The work is similar to Park and Hodgins but uses computer vision methods rather than standard mocap markers.

The present invention differs in that it conforms to standard mocap practice and is backwards-compatible with existing sparse marker sets. The goal of MoSh is to get more out of sparse markers.

Surface Capture: At the other extreme from sparse markers are methods that capture full 3D meshes at every time instant, like <NPL> or <NPL>; this can be conceived of as a very dense marker set. Still other methods use a scan of the person and then deform it throughout a sequence, like <NPL> or <NPL>.

Existing methods for surface capture rely on multi-camera computer vision algorithms that are computationally expensive compared with commercial marker-based systems. These methods are most applicable to capturing complex surfaces like clothing or breathing that are difficult to parametrize, like <NPL>:<NUM>. In the case of body shape, it is found that, together with a parametric body model, a small marker set is already very powerful.

<NPL> Brazilian Symposium on, <NUM>-<NUM>, in a related approach use an intermediate template that is animated in a traditional way from mocap markers. They then transfer the template motion to a more complex mesh. Like MoSh this method is motivated by standard practice but it still indirects through a crude proxy, rather than solving directly for shape and pose from markers.

Attribute Capture: The idea that markers contain information about body shape is not new. <NPL>, use motion capture data to extract socially meaningful attributes, such as gender, age, mental state and personality traits by applying 3D pose tracking to human motion. This work shows that a sparse marker set contains rich information about people and their bodies. MoSh takes a different approach by using the sparse marker data to extract faithful 3D body shape. Like Livne et al. , it is shown that gender can be estimated from markers. Beyond this, it is suspected that the full 3D body model can be used to extract additional attributes.

Motion Magnification. There has been recent work on magnifying small motions in video sequences, like <NPL>; <NPL>:<NUM>; or <NPL>:<NUM>; but less work on magnifying 3D motions.

In part this may be because capturing 3D surface motions is difficult. Other work exaggerates mocap skeletal motions using mocap data, like <NPL>.

<NPL>:<NUM> develop methods for spatially localized modeling of deformations and show that these deformations can be edited and exaggerated.

<NPL>:<NUM> edit body shape to exaggerate it but do not model or amplify non-rigid soft-tissue dynamics. While the exaggeration of facial motion has received some attention, this is the first work to use only sparse marker sets to extract full-body soft tissue motion for exaggeration.

In summary, MoSh occupies a unique position - it estimates 3D body shape and deformation using existing mocap marker sets. MoSh produces animated bodies directly from mocap markers with a realism that would be time consuming to achieve with standard rigging and skeleton-based methods.

It is an object of the present invention to estimate body shape and pose together using marker data by exploiting a parametric model of the human body.

According to a first aspect, this object is solved by a method for providing a three-dimensional body model for generating an animation, based on a moving body, according to claim <NUM>.

The three-dimensional body model is trained by means of a set of scans in a plurality of shapes and poses in order to represent shape and pose-dependent deformations. The training can be executed separately for men and women.

In a preferred embodiment of the method, the marker set is sparse.

In an example of the method a handful of markers are arranged on any body part.

In a further preferred embodiment of the method, a number of body markers is below or equal to <NUM> or <NUM>.

In a further preferred embodiment of the method, the pose of the body is assumed to vary smoothly over time.

In a further example of the method the body shape of the subject does not change over time.

In an embodiment of the method the body shape of the subject changes over time.

The changing body shape is constrained to be close to a fixed body shape representing a person's identity.

In a further preferred embodiment of the method the method is applied for providing an animation of a character without converting motion capture data to a rigged model of the character.

In a further example of the method the three-dimensional body model is directly used for an animation of a character.

In a further preferred embodiment of the method, the personalized three-dimensional body model is used as reference for retargeting the data to other animated characters.

In a further preferred embodiment of the method the personalized three-dimensional body model considers dynamics of soft tissue, like fat and muscle.

In a further preferred embodiment of the method the dynamics of soft tissue is transferred to a further personalized three-dimensional body model.

In a further preferred embodiment of the method the dynamics of soft tissue is exaggerated or attenuated, when transferring it to the further personalized three-dimensional body model.

In a further preferred embodiment of the method the method may be executed on archival motion capture sequences.

In a further preferred embodiment of the method, at least a subset (and/or the additional set) of body markers is positioned on soft tissue.

In a further example of the method the additional set of body markers is selected from a generated superset of additional marker sets.

In a further example of the method the additional set of body markers is selected to optimize a given objective function.

In a further example of the method a greedy search method is used for selecting the additional set of body markers.

In a further preferred embodiment of the method the method is used in a motion capture system.

In a further example of the method the body is an animal body.

According to a second aspect, this object is solved by an apparatus for providing a three-dimensional body model for generating an animation, based on a moving body, according to claim <NUM>. In an exemplary embodiment, the apparatus comprises a model storage which is adapted for providing a parametric three-dimensional body model, which allows shape and pose variations; a position detector which is adapted for applying a set of body markers; an optimizer, which is adapted for optimizing the set of body markers by generating an additional set of body markers and applying the same for providing 3D coordinate marker signals for capturing shape and pose of the body and dynamics of soft tissue; and a processor for automatically processing the 3D coordinate marker signals in order to provide a personalized three-dimensional body model, based on estimated shape and an estimated pose of the body by means of predicted marker locations. The set of body markers can be a standard set of body markers. The set of body markers can be applied to the three-dimensional body model.

According to a third aspect, this object is solved by a non-transitory computer readable medium containing computer-readable instructions stored therein for causing a computer processor to perform the steps of the method according to the first aspect.

<FIG> shows a block diagram of a method for providing a three-dimensional body model, which may be applied for an animation, based on a moving body. Motion and Shape are captured from sparse markers, a method denoted as MoSh (Motion and Shape capture).

The method comprises the step S101 of providing a parametric three-dimensional body model, which allows shape and pose variations; the step S102 of applying a standard set of body markers; the step S103 of optimizing the set of body markers by generating an additional set of body markers and applying the same for providing 3D coordinate marker signals for capturing shape and pose of the body and dynamics of soft tissue; and the step S104 of automatically providing an animation by processing the 3D coordinate marker signals in order to provide a personalized three-dimensional body model, based on estimated shape and an estimated pose of the body by means of predicted marker locations.

<FIG> shows a schematic view of an apparatus <NUM> for providing a three-dimensional body model which may be applied for an animation, based on a moving body. The apparatus <NUM> comprises a model storage <NUM> which is adapted for providing a parametric three-dimensional body model, which allows shape and pose variations; a position detector <NUM> which is adapted for applying a standard set of body markers; an optimizer <NUM>, which is adapted for optimizing the set of body markers by generating an additional set of body markers and applying the same for providing 3D coordinate marker signals for capturing shape and pose of the body and dynamics of soft tissue; and a processor <NUM> for automatically processing the 3D coordinate marker signals in order to provide a personalized three-dimensional body model, based on estimated shape and an estimated pose of the body by means of predicted marker locations. The method and the features can be implemented by means of a computer having a storage and processor.

<FIG> shows Carnegie Mellon University CMU subjects. Example body shapes <NUM> and poses <NUM> of a body <NUM> are estimated from the CMU motion capture dataset using the standard <NUM> Vicon markers. MoSh automatically takes mocap marker data and produces animations with a level of lifelike realism that is difficult to achieve with standard skeleton-based mocap methods.

While marker-based motion capture (mocap) is widely used to animate human characters in films and games, it is also widely criticized as producing lifeless and unnatural motions. This is the result of "indirecting" through a skeleton that acts as a proxy for the human movement. In standard mocap, visible 3D markers on the body surface are used to infer the unobserved skeleton. This skeleton is then used to animate a 3D model and what is rendered is the visible body surface. Subtle information about motion of the body <NUM> is lost in the process of going from the non-rigid body surface to the rigid, articulated, skeleton representation. MoSh replaces the skeleton with a 3D parametric body model. Given a standard marker set, MoSh simultaneously estimates the marker locations on the proxy body, estimates the body shape <NUM>, and recovers the pose <NUM>. By allowing body shape <NUM> to vary over time, MoSh is also able to capture the non-rigid motion of soft tissue. This process is fully automatic and results in nuanced and lifelike animations. Since no body scanner or other hardware is required, MoSh can be applied to archival mocap data like that in <FIG>.

The basic version of MoSh has five core components. <NUM>) MoSh uses a parametric 3D body model that realistically represents a wide range of natural body shapes <NUM>, poses <NUM>, pose-dependent deformations, and other non-rigid shape deformations. For this a learned statistical body model based on SCAPE is used. <NUM>) Marker placement on the body <NUM> is done inexactly by hand, and varies from session to session; exact marker placement is not assumed. Consequently, a key contribution of MoSh is that it solves for marker locations relative to the 3D body. <NUM>) MoSh also simultaneously solves for the 3D body shape <NUM> of the person that best explains the observed 3D mocap marker data. <NUM>) Steps <NUM> and <NUM> above require that also simultaneously it is solved for 3D body pose <NUM>. Components <NUM>-<NUM> are all embodied in a single objective function and this is optimized for a subset of the mocap sequence. <NUM>) In a second stage, MoSh uses the computed body shape <NUM> and marker locations on the body <NUM>, to estimate body pose <NUM> throughout a mocap session.

This basic method produces realistic animations but the assumption of a single body shape <NUM> across the session does not account for the dynamics of soft tissue; for example, the jiggling of fat during jumping. Currently there are no practical technologies for easily capturing these soft-tissue motions and most mocap methods treat them as noise that corrupts the skeletal motion. A novel solution is developed that solves for a changing body shape <NUM> across the sequence by penalizing deviations from the shape <NUM> estimated without dynamics. The result is surprisingly realistic soft-tissue motion from traditional marker sets or new sets containing just a few more markers on areas of soft tissue. A range of marker sets is evaluated and it is found that the standard <NUM>-marker set often used for motion capture (e.g. in the CMU dataset) works surprisingly well for recovering both shape <NUM> and pose <NUM>. It is shown that larger marker sets produce more realism but with diminishing returns. The output of MoSh is a 3D body model that best fits the marker data and the accuracy of this estimated body shape <NUM> is evaluated. On the CMU dataset, a range of body shapes <NUM> is found that visually resemble reference video. For quantitative evaluation, four subjects with widely different body shapes <NUM> and performed MoSh with different numbers of markers are scanned. MoSh can be used directly for animation or as a reference for animators. It is also shown that the body shape <NUM> can be changed to retarget the mocap sequence to new bodies.

This allows a professional dancer, for example, to perform an action and then another actor with a different body shape <NUM> can be realistically animated without the labor-intensive process of transferring skeletal motion to a rigged model. As described in the next section, MoSh goes significantly beyond previous work. The main contribution of MoSh is that it provides a fully automated method for "mining" lifelike body shape <NUM> and pose information from sparse marker sets. This makes MoSh appropriate for processing archival mocap and also makes it completely compatible with existing marker-based mocap technology. MoSh is seen as complimenting rather than replacing existing methods. Because MoSh can use standard marker sets, nothing is lost relative to existing approaches. Rather, the realism and ease of use extends the usefulness of existing mocap systems and datasets and breathes new life into motion capture.

The work requires a good low-dimensional model of the human body to reduce ambiguities; here a BlendSCAPE body model is used, which is similar to the SCAPE model. The BlendSCAPE model is described in <NPL>, <NPL>. The SCAPE model is described in <NPL>.

But any differentiable mesh-producing model could be used, as long as (<NUM>) it allows shape and pose variation, and (<NUM>) is differentiable with respect to its parameters. The BlendSCAPE model produces a triangulated mesh, and is parameterized by a global translation center γ, a vector of pose parameters θ, and a vector of shape parametersβ. The surface of the body is described as S(γ,θ,β), with the coordinates of vertex k notated Sk (γ,θ,β).

The pose parameters θ consist of <NUM> angle-axis vectors, whereby length indicates the amount of rotation. Body shape <NUM> is approximated in by a linear combination of shape basis vectors; γ is a vector of these linear coefficients. This shape basis is learned from deformations of training body shapes <NUM> using principal component analysis. In what follows, body shape <NUM> is represented using between <NUM> and <NUM> principal components depending on whether or not soft tissue motions are computed. A multi-resolution version of the model is trained such that the parameters of the model are consistent across scale. For efficiency a low-resolution model with <NUM> vertices is used to optimize the marker locations, shape <NUM>, and pose <NUM>. For display a version with <NUM> vertices is rendered. The body shape model is trained from <NUM> CAESAR scans of people in an upright pose <NUM> (approximately <NUM> women and <NUM> men from the US and EU datasets). The posedependent component of the model is learned from <NUM> scans of <NUM> people (<NUM> women and <NUM> men) in a wide range of poses <NUM>. The scans are aligned. Since the model is trained from an extensive set of scans, it is able to realistically capture a wide range shapes and poses <NUM>. Separate models for men and women are trained. For MoSh, it is assumed that the gender is known but one could extract this automatically by fitting both models and selecting the one with lowest error.

<FIG> shows optimizing shape <NUM> and markers <NUM>-<NUM>. Left an initial guess of markers <NUM>-<NUM> on the template shape <NUM> in the canonical pose <NUM> is shown as dark balls. Right shape and marker locations of markers <NUM>-<NUM> after optimization during Stage <NUM> are shown. Optimized marker locations of markers <NUM>-<NUM> are shown as light balls. Note that they have moved. The inset shows the notation used in the text for the optimized marker <NUM>-<NUM>.

Mocap markers <NUM> extend from the body <NUM> to varying degrees and are placed on the body <NUM> manually. Precise placement can be difficult, particularly on heavy subjects where fat makes it difficult to palpate boney locations. The result is that it cannot be expected to know the exact marker locations in advance.

In defining a marker set the only manual part of MoSh occurs if a user wants to use a new marker set. In this case they need to identify a template vertex for each marker <NUM>, and a distance from the surface for each marker <NUM>. Both can be approximate. This only needs to be done once and then it is used for any subject captured with that marker set. For example, this is done once for the <NUM>-marker Vicon set and used for all mocap sequences in the CMU database.

To parameterize marker locations with respect to the body <NUM>, a latent frame of reference is introduced which contains markers <NUM> and the body model in a neutral pose γ<NUM>, θ<NUM>, as in <FIG> (left). The purpose of this latent frame is to establish the relationship between the body surface and the markers in a pose-independent, translation independent, and non-redundant fashion. Markers position in the latent space is optimized simultaneously with all other independent variables, e.g. shape <NUM> and pose <NUM>. Marker locations in the latent frame are denoted as <MAT>, where i denotes the landmark index. The collection of these state variables is denoted as M. Transformed marker locations in observed frames are denoted as <MAT>, where t indicates frame in the mocap sequence.

To transform an estimated marker m̃i from the latent frame to m̂i,t, in captured frame t, a relationship between each m̃i to nearby geometry in the latent frame is estimated, and then that relationship is applies in captured frames. Each m̃i can be considered with respect to its nearest vertex in the latent frame, whose index is <MAT> More specifically, m̃i can be represented in a local basis formed from its nearest vertex, the edges leaving that vertex and the normal at the vertex.

To make this concrete, the function is defined: <MAT> where g(·) is a function that returns the normal of the surface, N(k) indicates neighbors of the vertex k, and the wi are scalar weights that are collected into a vector w.

Then it is solved for the ŵi that minimizes <MAT> where the norm, ∥ŵi∥, of w is minimized to constrain the solution.

With these weights, is defined as a combination of vertices and the normal on the model. Let q̂(γ, θ, β) = q(γt, θt, β, k̂i, ŵi). With this the marker location in a captured frame can be computed as <MAT>.

Notably, the transformation from latent to observed frames is continuously re-estimated over the course of optimization. The values of k and wi define the marker <NUM> on the body <NUM> in the reference frame and they change during the optimization to reposition the markers, shown in <FIG> right. Note also that these parameters do not vary with t; they are fixed for the entire sequence. Having defined the transformation of markers <NUM> from latent to observed frames, now functions are introduced that help regularize markers <NUM> to the mesh. In the optimization method that follows it is important that the m̃i are not free to move anywhere. They are constrained by the initial markers defined above (<FIG> left).

First, let r(x,S) denote a function that returns the signed distance of x to surface S. Each marker <NUM> requires the user-specification of an expected distance di from the marker center to the skin surface. This is the a priori distance that the marker <NUM> is expected to be from the surface. Second, functions are introduced to relate markers <NUM> to user-indicated vertices on the mesh. Notationally, it is said a user creates a mapping h(i) from marker indices to vertex indices on the template. Further the position of these vertices is denoted as <MAT> meaning that v̂i(β) is the position of the model vertex in the latent frame corresponding to marker m̃i. These are used to initialize m̃i, and also as a weak prior, as will be seen below.

The goal is to estimate a faithful personalized body <NUM> from sparse marker locations <MAT>, where t and i denote time step and landmark index respectively, which explains observed marker evidence. The pose <NUM> of the body, θt ∈ Θ and the position,γt ∈ Γ vary with time. For now, it is assumed that body shape <NUM>, is fixed for an individual and represents the shape <NUM> with the first <NUM> principal components; these account for approximately <NUM>% of the variance present in the training scans of men and women.

It is wished to estimate the markers <NUM>, pose <NUM> and shape <NUM> of the body <NUM> such that the transformed markers <NUM> match the observed markers <NUM>. This is as a MAP estimation problem considered, with the joint probability factored into likelihood and prior: <MAT> where M represents the set of observed markers, mt in the sequence. Frames and landmarks are modeled as statistically independent: <MAT>.

The likelihood p(mi,t | m̃i,γt, θt, β) is constructed according to the following Gaussian distribution, and simply asserts that observed markers <NUM> should be near simulated markers <NUM>: <MAT>.

The prior can further be factored into a landmark prior and two body model priors: <MAT>.

The landmark prior is used to keep markers to a prescribed distance from the surface, and to weakly bias markers towards hand-chosen vertices.

<FIG> in first row shows registrations to 3D scans and in second row reconstructions from <NUM> markers <NUM>.

<FIG> shows per-vertex distance residuals as a function of the number of markers used. Error bars indicate 5th and 95th percentile. Where r(x,S) denotes signed distance from point x to surface S, <MAT> <MAT> <MAT>.

The pose and shape priors are modeled as Gaussian, with their statistics µβ, µϑ,Σβ, Σθ computed naively from the pose and shape training data used to train the BlendSCAPE model: <MAT> <MAT> The prior over translation γt is considered uniform, and does not contribute meaningfully to the objective.

The objective is to maximize a product of Gaussian probabilities. The sum of the log probabilities is equivalently minimized, which in the case of IID Gaussians means minimizing a sum of squares. The objective is minimized with Powell's dogleg method, using Gauss-Newton Hessian approximation.

The gradients of the objective are computed with algorithmic differentiation, which applies the chain rule to the forward process in order to compute gradients. Only the differentiation of the body model Sk(γ, θ, β) and the signed mesh distance r(x,S) were done by hand, to improve runtime performance.

The basic version of MoSh estimates a single body shape <NUM> for each mocap sequence in Stage <NUM>. One way of evaluating the success is to use markers <NUM> to estimate shape parameters β, and then fit the body model with that shape <NUM> fixed to a previously existing registration obtained with the use of a 3D scanner. Vertex distance residuals can then be used to evaluate shape distance.

To quantitatively evaluate the recovered shape <NUM>,<NUM> subjects (<NUM> women and <NUM> men) are scanned using a high-quality 3D body scanner (3dMD LLC, Atlanta, GA) and the body model is fitted to their scans. A Vicon mocap system (Vicon Motion Systems Ltd, Oxford, UK) is used to capture them with a custom <NUM>-marker set.

Given the dataset of four subjects, aligned the body template to scans of each subject in a neutral pose, as shown in <FIG> top. MoSh is used to estimate body shape <NUM> from the standard <NUM>-marker set used in the CMU database. Using <NUM> markers, vertex distance residuals (Euclidean distances between matching vertices) are found averaging <NUM>. Using <NUM> markers, the error decreased to <NUM> error. Results for the <NUM> marker reconstructions are shown in <FIG> bottom.

The CAESAR dataset consists of a large number of body shapes <NUM> that are brought into correspondence with the template mesh. These are used to evaluate the effect of the number of markers on reconstruction accuracy. Since no mocap marker data for CAESAR subjects are present, markers on the aligned meshes are simulated (one mesh per subject), body shape <NUM> from the markers <NUM> are estimated, and the surface error between the original meshes and the reconstructions is measured.

Residuals are obtained as shown in <FIG>. Diminishing returns are apparent beyond <NUM> markers <NUM>. Also notably, the values are consistent with the range that is obtained from the local subjects (between <NUM>-<NUM> mean vertex distance residuals). Note that this shows that small marker sets, e.g. <NUM> are reasonable for static body shapes <NUM>. In the next section it is explored what happens with dynamic shapes exhibiting soft-tissue motion.

<FIG> shows CMU bodies, extracted shapes (top) and reference images (bottom) for several CMU subjects. Shapes are computed with MoSh using the <NUM> Vicon markers only. A visual inspection of shape recovery from CMU can be seen in <FIG>, where video frames are shown below reconstructions from Vicon markers. To be clear, MoSh does not use this video frame; it is shown here only for a visual evaluation of rough shape. Since there the CMU dataset has no anthropometric data, a quantitative evaluation is not possible. Run-time for shape reconstruction is half an hour.

<FIG> shows CMU mocap and example meshes extracted from the CMU mocap dataset for three subjects. Given body shapes <NUM> and marker locations estimated in Stage <NUM>, the objective function over the pose parameters for a sequence is minimized. <FIG> shows some representative frames for some representative sequences in the CMU dataset. The nuance is difficult to illustrate in a static image but this is apparent in the animations. Run-time for pose estimation is <NUM> seconds per frame.

The body model was learned to represent both shape and pose dependent deformations from registrations of static subjects. But many other subtle body shape deformations were not explicitly learned by the model, including muscle contraction, breathing, gravity, external forces, and dynamics. Currently the dynamics of soft tissue cannot be recovered by either 3D scanning systems or sparse motion capture methods.

While the body shape training set does not contain examples of soft tissue dynamics, breathing, or other soft tissue deformations, it does capture many shape variations across the population. Someone breathing in might look just a bit fatter. Someone jumping might look like their chest is in a different place. These differences in body shape <NUM> can be represented within the shape space.

Earlier it was assumed the body shape <NUM> is fixed through the sequence. Now to capture these more subtle changes it is allowed for the shape <NUM> to vary across the sequence. To do so it is allowed β to vary over time, introducing βt; also σD is reduced, because now it can be explicitly accounted for marker variation that could not be accounted for without variation in β.

The shape changes due to soft-tissue dynamics may be subtle and consequently the linear shape space is extended to now use <NUM> principal components. It is found that empirically this captures a nice range of detail. For the new <NUM> components, deviations of the coefficients from zero are penalized.

Additionally, to capture soft-tissue motions it is found that a larger marker set is useful. Because the standard marker sets are designed for estimating a skeleton, the markers are mostly placed on rigid body structures. This is another reason why exiting mocap methods lack nuance. To capture dynamics, just the opposite is wanted; the markers have to be on the soft tissue.

Note that dynamics of soft tissue are not modeled. Only the effects of such motions are fitted that are apparent in the marker data. Actually using the MoSh to learn a model of soft-tissue dynamics is an interesting direction for future work. To evaluate soft-tissue motion recovery with MoSh a normal-weight man is captured doing jumping jacks and a normal-weight woman salsa dancing. In both cases the <NUM>-marker set is used.

<FIG> shows a motion of soft tissue and a frame from the jumping-jack sequence. Left: frames from a sequence of someone jumping (shown here for reference - video was not synchronized with mocap). Middle: body shape <NUM> constructed with basic MoSh (body shape <NUM> fixed throughout the sequence). Right: allowing body shape <NUM> to change over time captures soft tissue deformations. Lighter balls correspond to the mocap markers <NUM>-<NUM>. Darker balls correspond to the predicted marker locations <NUM>-<NUM>. Note that in the right image, the predicted markers much more closely match the observed markers but that the body shape <NUM> does not become unnaturally distorted to fit them.

On the left a frame from the original video for reference is seen. Note the markers on the chest - these move up and down non-rigidly during the motion. The middle frames show reconstructions with basic MoSh, i.e. fixed body shape <NUM>, and the right shows reconstructions using the dynamic version. Allowing shape <NUM> to vary across frames can improve marker position reconstruction and produces realistic deformations.

MoSh is completely compatible with existing industry-standard mocap systems. It can be used alone or in conjunction with traditional skeletal mocap since no information is lost and MoSh can use exactly the same markers as current systems. The extended MoSh marker sets can be used depending on the required accuracy and the time available for the capture session. If a user is particularly interested in capturing specific shape features (for example breathing), he can design new marker sets and evaluate which marker sets produce the lowest reconstruction error. The hope is that MoSh breathes new life into old mocap datasets and provides an easily adopted tool that extends the value of existing investments in marker-based mocap.

Unlike many methods for extracting skeletons from markers <NUM>, no smoothing of the data is done. This helps preserve nuance but can sometimes result in high-frequency noise, particularly with small marker sets. One could easily add an optional post processing stage to filter/smooth the estimated pose <NUM>. The estimated body pose <NUM> could also be used to create a virtual marker sequence that could replace the original. This would provide a principle way of fixing occlusions or introducing body-shape-related smoothness.

The transfer of soft tissue dynamics to vastly different body shapes <NUM> needs more study. A full solution will need to adapt the shape deformation to new body shapes <NUM>; bodies with more fat should jiggle more. This will likely require training data that does not exist today.

Here it is focused on body shape <NUM> and pose <NUM>, ignoring hands and feet. It should be clear that the extension to feet and hands is straightforward.

Contact with ground could be enforced by placing constraints on foot placement. Interpretation could also be solved for and penalized during optimization. These same techniques could be applied to estimating the motion of cloth from markers or to multiple interacting people. MoSh could be used for virtual film production, allowing a director to see more realistically what an animated character will look like in a scene.

While marker-based motion capture (mocap) is widely used, it is also widely criticized as producing lifeless animations. It is argued that nuance lies in the motion of the body surface and this is captured by sparse marker sets; traditional skeletal animation throws away this detail. A new approach called MoSh (Motion and Shape capture) is demonstrated, that automatically extracts this detail from marker data. MoSh estimates body shape <NUM> and pose <NUM> together using marker data by exploiting a parametric model of the human body. A key advance beyond previous work is that MoSh solves for the marker locations relative to the body <NUM> and estimates body shape <NUM> directly from the markers without the use of 3D scans.

It is gone further and showed that soft tissue motions can be captured directly from the sparse marker data by allowing body shape <NUM> to vary over time. MoSh is illustrated by automatically recovering body shape <NUM>, pose <NUM>, and dynamics from archival mocap data. It is also shown the effect of different marker sets on pose and shape accuracy. It is found that we body shape <NUM> from sparse markers can be accurately estimated, effectively turning the mocap system into a body scanner. Without user input, MoSh produces lifelike animations that have much more subtlety and realism than those produced by existing methods.

<FIG> shows shape <NUM> from mocap. MoSh computes body shape <NUM> and pose <NUM> from standard mocap marker sets. Body shapes <NUM> and poses <NUM> are recovered with <NUM> markers <NUM> and compares the body shapes <NUM> with 3D scans. While fine details are missing, MoSh enables users of standard mocap to obtain reasonable 3D body shapes <NUM> from markers <NUM> alone. Bodies <NUM> in darker color are estimated from <NUM> mocap markers <NUM>, while scans in lighter color are captured with a high-resolution 3D body scanner. Split-color bodies <NUM> compare the shape <NUM> estimated from sparse markers <NUM> with scans. MoSh needs only sparse mocap marker data to create animations (darker posed bodies) with a level of realism that is difficult to achieve with standard skeleton-based mocap methods.

While marker-based motion capture (mocap) is widely used to animate human characters in films and games, it is also widely criticized as producing lifeless and unnatural motions. It is argued that this is the result of "indirecting" through a skeleton that acts as a proxy for the human movement. In standard mocap, visible 3D markers <NUM> on the body surface are used to infer the unobserved skeleton. This skeleton is then used to animate a 3D model and what is rendered is the visible body surface. While typical protocols place markers <NUM> on parts of the body <NUM> that move as rigidly as possible, soft-tissue motion always affects surface marker motion. Since non-rigid motions of surface markers <NUM> are treated as noise, subtle information about body motion is lost in the process of going from the non-rigid body surface to the rigid, articulated, skeleton representation. It is argued that these non-rigid marker motions are not noise, but rather correspond to subtle surface motions that are important for realistic animation.

MoSh replaces the skeleton with 3D parametric body model. Given a standard marker set, MoSh simultaneously estimates the marker locations on a proxy 3D body model, estimates the body shape <NUM>, and recovers the articulated body pose <NUM>. By allowing body shape <NUM> to vary over time, MoSh is able to capture the non-rigid motion of soft tissue. Previous work on the mocap of such motions relies on large marker sets [Park and Hodgins <NUM>; Park and Hodgins <NUM>]. In contrast, it is shown that significant soft tissue motion is present in small marker sets and that capturing it results in more nuanced and lifelike animations. MoSh also recovers qualitatively and metrically accurate body shapes <NUM> from small numbers of markers.

The basic version of MoSh has five core components. <NUM>) MoSh uses a parametric 3D body model that realistically represents a wide range of natural body shapes <NUM>, poses <NUM>, and pose-dependent deformations. For this a learned statistical body model based on SCAPE is used, as disclosed by [Anguelov et al. <NUM>) Marker placement on the human body <NUM> varies across subjects and sessions, consequently it is not assumed that the exact marker placement is known. Instead, a key contribution of MoSh is that it solves for the observed marker locations relative to the 3D body model. <NUM>) MoSh also simultaneously solves for the 3D body shape <NUM> of the person that best explains the observed 3D mocap marker data. <NUM>) Steps <NUM> and <NUM> above require that it is also simultaneously solved for 3D body pose <NUM>. Components <NUM>-<NUM> are all embodied in a single objective function and this is optimized for a subset of the mocap sequence. <NUM>) In a second stage, MoSh uses the computed body shape <NUM> and marker locations on the body <NUM>, to estimate body pose <NUM> throughout a mocap session.

This basic method produces appealing animations but the assumption of a single body shape <NUM> across the session does not account for the dynamics of soft tissue; for example, the jiggling of fat during jumping. Currently there are no practical technologies for easily capturing these soft-tissue motions. Previous methods have used large marker sets, as disclosed in [Park and Hodgins <NUM>] but these are time consuming to apply, difficult to label, and suffer from occlusion. These methods also do not apply to archival data. Video-based surface capture methods offer the potential for even greater realism, as disclosed in [de Aguiar et al. <NUM>; Stark and Hilton <NUM>], but are not yet mature and are not widely adopted. To capture soft-tissue deformation, it is allowed for the body shape <NUM> to change over time to better fit the marker motions. The solution uses a low-dimensional shape model to make it practical and penalizes deviations from the fixed body shape <NUM> estimated without soft-tissue deformation. It is made an assumption that these deformations can be approximated within the space of static human body shape variations; that is, the soft tissue deformations of an individual effectively by is modeled changing their identity. Given a sufficiently rich space of body shape variation, this works surprisingly well.

While body shape <NUM> and pose <NUM> can be estimated from standard marker sets and archival mocap sequences, it is gone further to design additional marker sets with greater or fewer markers. Using a principle objective function, and a training set of 3D body meshes, the effect of different marker sets on the accuracy of body shape <NUM> and pose <NUM> capture are evaluated. While the standard <NUM>-marker set that is often used for motion capture (e.g. in the CMU dataset) works surprisingly well for recovering both shape <NUM> and pose <NUM>, it is found that an expanded set, with <NUM> additional markers, captures more soft tissue motion.

The method is validated with nearly <NUM> mocap sequences. Since no body scanner or other hardware is required, MoSh can be applied to archival mocap data. To demonstrate this gender, shape, and motion of <NUM> subjects in the CMU mocap dataset using <NUM> markers are reconstructed. The resulting animations are nuanced and lifelike and the body shapes <NUM> qualitatively match reference video. For quantitative evaluation, twenty subjects with widely different body shapes <NUM> are scanned and MoSh is performed with different numbers of markers <NUM>.

MoSh can be used directly for animation or as a reference for animators. The body shape <NUM> can be changed to retarget the mocap sequence to new bodies (cf. [Anguelov et al. This transfer works for any character with the same topology as the body model. Several cartoon characters are aligned to the mesh and then animated without the labor-intensive process of developing a rigged model or retargeting the skeletal motions. The animations include the transfer of soft tissue motions and it is shown further how these motions can be magnified to produce interesting animations with exaggerated soft-tissue dynamics.

In summary, the main contribution of MoSh is that it provides a fully automated method for "mining" lifelike body shape <NUM>, pose <NUM>, and soft-tissue motions from sparse marker sets. This makes MoSh appropriate for processing archival mocap. By using the same (or slightly augmented) marker sets, MoSh complements, existing marker-based mocap in that animators can extract standard skeletal models from the markers, MoSh meshes, or both.

<FIG> shows optimizing shape <NUM> and markers <NUM>. Left: initial guess of markers <NUM>-<NUM>,vi, on the template shape <NUM> in the canonical pose. Right: Shape and marker locations after optimization. Optimized marker locations, m̃i, are shown as markers <NUM>-<NUM>. Note that they have moved, as shown in the inset.

Extracting body shape <NUM> from sparse markers <NUM> is clearly an ill-posed problem; an infinite number of bodies <NUM> could explain the same marker data. To infer the most likely body <NUM> a model of human shape is used that captures the correlations in body shape <NUM> within the population. For this a learned body model is used that is similar to SCAPE, as disclosed by [Anguelov et al. It should be noted however that any mesh model could be used, as long as (<NUM>) it allows shape and pose variation, and (<NUM>) is differentiable with respect to its parameters.

The body model is a function that returns a triangulated mesh with <NUM>,<NUM> vertices, and is parameterized by a global translation center γ, a vector of pose parameters, θ, a mean shape, µ, and a vector of shape parameters, β. Shape <NUM> is defined in terms of deformations applied to the triangles of a base template mesh. The surface of the body <NUM> is described as S(β,θ,γ), with the coordinates of vertex k notated Sk(β,θ,γ). The body mesh is segmented into parts and each part can undergo a rotation defined by <NUM>. The pose parameters θ consist of <NUM> angle-axis vectors, whereby length indicates the amount of rotation. Like SCAPE, the function S(·) includes posedependent non-rigid deformations that are learned from bodies <NUM> in a wide range of poses <NUM>. Body shape <NUM> is approximated by the mean shape and a linear combination of shape basis vectors; β is a vector of these linear coefficients. This shape basis is learned from deformations of training body shapes <NUM> using principal component analysis (PCA). In what follows, body shape <NUM> is represented using <NUM> principal components.

The body shape model is trained from <NUM> CAESAR scans of people in an upright pose <NUM> (approximately <NUM> women and <NUM> men from the US and EU datasets), as disclosed by ROBINETTE, K. , BLACKWELL, S. , DAANEN, H. , BOEHMER, M. , FLEMING, S. , BRILL, T. , HOEFERLIN, D. , AND BURNSIDES, D. Civilian American and European Surface Anthropometry Resource (CAESAR) final report. AFRL-HE-WP-TR-<NUM>-<NUM>, US Air Force Research Laboratory. The posedependent component of the model is learned from <NUM> scans of <NUM> people (<NUM> women and <NUM> men) in a wide range of poses. The scans are aligned using the technique in [Hirshberg et al. Since the model is trained from an extensive set of scans, it is able to realistically capture a wide range shapes and poses. For details of SCAPE, it is referred to [Anguelov et al.

Note that three body shape models are trained: separate models for men and women, plus a gender neutral model. If the gender of the subject is known, the appropriate model is used. If not, the gender-neutral model is fitted, the gender is inferred, and then a genderspecific model is used as described below.

Mocap markers <NUM> extend from the human body to varying degrees and are placed on the body <NUM> manually. Precise placement can be difficult, particularly on heavy subjects where fat makes it difficult to palpate boney locations. The result is that it cannot be expected to know the exact marker locations in advance. The first step of MoSh solves for the marker locations, relative to a template body mesh, for a given mocap sequence (or collection of sequences for one subject).

It is assumed that the number of markers and their approximate location relative to a reference template mesh is known. The only manual part of MoSh occurs if a user wants to use a new marker set. In this case they need to identify a template vertex for each marker <NUM>. Notationally, it is said that a user creates a mapping h(i) from marker indices, i, to vertex indices on the template. Each marker <NUM> requires the user-specification of an expected distance di from the marker center to the skin surface. Both the location and the distance can be approximated since these are optimized for each subject.

To parameterize marker locations with respect to the body <NUM>, it is introduced a latent coordinate system that contains markers and the body model in a neutral pose, γ<NUM>, θ<NUM>. as in <FIG> (left). The purpose of this latent coordinate system is to model the relationship between the body surface and the markers <NUM> in a pose-independent, translation-independent, fashion. This relationship is then transferred to meshes in observed mocap frames.

Then the default position of the markers, vi, is denoted as, <MAT> where Nk(β,θ,γ) indicates the vertex normal for index k given body model parameters. Thus vi(β) is the position of the model vertex, offset by a user-prescribed distance, di, from the surface, in the latent coordinate system, corresponding to marker i. These markers <NUM>-<NUM> are illustrated as balls in <FIG>.

Defining the marker set needs to be done once and then it is used for any subject captured with that marker set. For example, this is done once for the <NUM>-marker Vicon set and used for all mocap sequences in the CMU database.

The default markers, vi are approximated and below it is optimized to solve for the body shape, β, and the actual location of the latent markers, m̃i, for a given subject and mocap sequence. Let M denote the collection of latent markers. Notationally, i is used to indicate marker number and t to indicate the mocap sequence frame number. Observed markers are denoted mi,t individually and Mt together. From a collection of Mt the latent markers M are estimated. These markers <NUM>-<NUM> are shown as balls in <FIG>.

To that end, a function m̂(m̂i,β,ϑt,γt) is defined that maps latent markers to the world given a particular shape <NUM>, pose <NUM>, and location of the body <NUM>. These are called "simulated markers". Intuitively, it is solved for the shape, pose, body location, and latent marker locations m̃i such that, when projected into the mocap sequence, the simulated markers match the observed markers Mt.

This requires a mapping from local surface geometry to a 3D marker position that can be transferred from the latent coordinate system to the observed markers resulting from different poses. A marker position is represented in an orthonormal basis defined by its nearest triangle in the latent coordinate system. That basis is defined by three vectors: the triangle normal, one of the triangle's normalized edges, and the cross product between those two. This is geometrically depicted in <FIG> (left).

<FIG> shows marker transformations. In the latent coordinate space (left) a marker <NUM>-<NUM>, m̃i is projected into a basis defined by the nearest vertex: specifically by its normal, an arbitrary normalized edge, and the cross product between them. This provides a pose invariant representation for the marker <NUM>. When the body pose changes (right), the location of the marker, m̂(m̂i,β,ϑt,γt), is computed in the observed frame.

The rigid transformation matrix that projects m into the basis for closest triangle τ(m̃) in the mesh, is denoted as Bτ(m̃)(β,θ,γ). Then a simulated marker position, m̂(·) is defined as <MAT> Where m̃* = [m̃T, <NUM>]T and m̂*(·) = [m(·)T, <NUM>]T denote the marker locations in homogeneous coordinates. Eq. <NUM> can be seen as having two steps. First, the matrix <MAT> (β, θ<NUM>, γ<NUM>)transforms m̃* from a 3D latent-space position into a coordinate vector in the space of its local basis. In the second step, Bτ(m̃)(β, θt, γt) maps this coordinate vector into a 3D observed-space position, m̃*(·), defined by the specific position and pose, θt, γt. This is illustrated in <FIG> (right).

With the marker parameterization defined, next the objective function is defined that is used to estimate marker positions, shape <NUM>, pose <NUM>, and non-rigid motion.

Let sequences of body pose ϑ<NUM>. n, and position γ<NUM>. n, with n time instants be denoted as <NUM> and Γ respectively. It is wished to estimate the latent markers M̃, poses Θ, body locations Γ, and body shape β, such that the simulated markers m̂(·), match the observed markers mi,t. To do so it is defined an objective function with several terms.

The data term, ED, is the sum of squared distances between simulated and observed landmarks: <MAT> Note that distances are measured in cm.

A surface distance energy term, ES, encourages markers <NUM> to keep a prescribed distance from the body surface in the latent coordinate system. Let r(x,S) denote the signed distance of a 3D location x to the surface S. Then <MAT> Since the marker locations are roughly known to begin with, estimated latent markers are penalized if they deviate from this. The energy term EI regularizes the adjusted marker <NUM> towards its original position <MAT> Also pose and shape priors are defined to regularize the estimation of body shape <NUM> and pose <NUM>. These are modeled as Gaussian, with their statistics µβ, µθ, Σβ, Σθ computed from the pose and shape training data used to train the body model. β and θt are regularized by penalizing the squared Mahalanobis distance from the mean shape and pose: <MAT> <MAT> It is also added a velocity constancy term Eu that helps to smooth marker noise by a small amount: <MAT> The objective in total is the sum of these terms, each weighted by its own weight, λ: <MAT> The objective function above is quite general and it enables to solve a variety of problems depending on what is minimized and what is held constant. In all cases, optimization uses Powell's dogleg method, with Gauss-Newton Hessian approximation. The gradients of the objective function are computed with algorithmic differentiation. Only the differentiation of the body model Sk(β,θ,γ) and the signed mesh distance r(x,S) were done by hand, to improve runtime performance.

There are two main optimization processes. The first estimates time-independent parameters (body shape β and marker placements M), while the second estimates time-dependent parameters Θ = {θ<NUM>. θn}, Γ = {γ<NUM>.

Body Shape and Latent Markers: For a given mocap sequence (or set of sequences for the same subject), optimization always starts by estimating the latent marker locations M̃, body shape β, poses Θ, and body positions Γ for a subset of the frames. The latent marker locations and the body shape are assumed to be time independent and can be estimated once for the entire sequence (or set of sequences).

Notably, the transformation from latent to observed coordinate systems is continuously re-estimated during the optimization of marker placement. The assignment of nearest neighbors, the local basis itself, and the coefficients relating a marker <NUM> to that basis undergo continual adjustment to allow refinement of the relationship between markers and the body surface.

The λ values in Eq. <NUM> are: λD = <NUM>, λS = <NUM>, λI = <NUM>, λβ = <NUM>, λθ = <NUM>, λu = <NUM>.

The λ values were initialized to normalize each term by an estimate of its expected value at the end of the optimization; in particular, the distance-based λ values (λD, λS, λI) have interpretations as inverse variances with units of <MAT>. These λ values were then empirically refined.

The velocity term is not used in this stage (λu = <NUM>) because it is optimized over random disconnected frames.

To help avoid local optima, the optimization is run in six stages, starting with strong regularization and then gradually decreasing this. Specifically, the regularization weights {λθ, λβ, λI} are lowered from being multiplied by <NUM>, then by <NUM>, <NUM>, <NUM>, <NUM>, and finally <NUM>. Note that these regularization terms are linear and quadratic in contrast to the data term, which is non-linear. Similar to graduated non-convexity schemes, by increasing the regularization weights the objective function is made more convex, potentially helping the optimization avoid local optima during early stages of the process. In practice this is found to work well.

Computational cost increases with the number of frames used to estimate the parameters since each frame requires its own pose θt. For efficiency this optimization is performed using a randomly selected subset of mocap time instants. Experiments are run with different numbers of randomly chosen frames and saw little improvement with more than <NUM> frames. Consequently <NUM> random frames for all experiments are used here.

Pose: Motion capture now becomes the problem of estimating the pose of the body, θt, and body position, γt, at each time instant given the known body shape <NUM> and latent markers <NUM>. The optimization at frame t is initialized with the solution at t - <NUM> if it is available and then a short optimization is run for each time step.

For pose estimation, the values are now: λD = <NUM>, λS = <NUM>, λI = <NUM>, λβ = <NUM>, λθ = <NUM>, λu = <NUM>. Note that now the velocity smoothness term, λu is employed. A weight of zero means that this term is not used and the corresponding parameters are not optimized. Specifically, it is not optimized the marker locations or body shape. However a pose prior, λθ = <NUM>, is used to penalize unlikely poses. Here the staged regularization is not used because the optimization begins close to the minimum and converges quickly.

Pose and Soft Tissue Motion: In the optimization above it is assumed that body shape <NUM> and latent marker locations do not change. To capture soft tissue motions it is now allowed for the body shape <NUM> to vary across the sequence while keeping the marker transformation fixed. Still β is denoted as a shape <NUM> estimated in the first stage, but now the time-varying deviations in shape from β are denoted as = {β<NUM>. βn}, such that a person's shape <NUM> at time t is now β +βt.

To regularize the βt, one additional energy term is added to Eq. <NUM>: <MAT> and set λΔ to <NUM>, adding λΔEΔ(·) in Eq. <NUM>. This term allows body shape <NUM> to change over time while regularizing it to not deviate too much from the person's "intrinsic shape", β.

While the body shape training set does not contain examples of soft tissue dynamics, it does capture many shape variations across the population. These are exploited to capture soft tissue deformations during motion. Someone inhaling, for example, might look like a different person with a higher chest or a bigger stomach. When someone jumps up and down, the chest changes in ways that resemble the chests of other people. It is interesting, and perhaps surprising, that the shape variations between people can be used to approximate the shape variation of an individual due to dynamics. Presumably there are soft-tissue deformations that cannot be explained this way but, given sufficiently many training body shapes <NUM>, and sufficiently many principal components, it is posit that a wide range of such deformations are representable. It is suspected, however, that training shapes specific to soft-tissue deformations could be used to learn a more concise model. Note further that dynamics of soft tissue are not modeled, it is only approximated what is present in the mocap marker data.

Since standard marker sets are designed for estimating a skeleton, the markers are mostly placed on rigid body structures to minimize soft tissue motion. This is another reason why existing mocap methods lack nuance. Consequently to capture soft tissue dynamics, it is wanted just the opposite; markers are on the soft tissue. This is considered below.

Run Time: Shape and marker estimation requires about <NUM> minutes. Pose estimation without soft tissue estimation takes about <NUM> second per frame; pose estimation with soft tissue estimation requires about <NUM> seconds per frame.

<FIG> shows marker sets. The union of all markers <NUM> illustrates the <NUM> possible markers <NUM> that are considered. Light grey markers <NUM>-<NUM> correspond to a standard <NUM>-marker Vicon set. The <NUM> darker markers <NUM>-<NUM> were found to improve shape estimation the most. The union of light grey and darker markers <NUM>-<NUM> and <NUM>-<NUM> corresponds to the <NUM>-marker set used for capturing shape and soft-tissue motion. Lighter markers <NUM>-<NUM> were deemed redundant and were not used. The standard <NUM>-marker set comprises light grey markers <NUM>-<NUM>. Lighter and darker markers <NUM>-<NUM> and <NUM>-<NUM> correspond to the set of additional markers <NUM> that are considered. Using the greedy method, it is found that the lighter markers <NUM>-<NUM> were not as useful for estimating shape as the darker markers <NUM>-<NUM>.

Body shape estimation from motion capture depends on the number and placement of markers; here it is proposed a method for constructing a new marker set to improve body surface reconstruction. To be practical a marker set must be simple, make sense to the technician applying it, be repeatable across subjects, and take into account self-occlusion, self-contact, and the impact on subject movement. Consequently it is started with a standard marker set and additional symmetrical marker locations are proposed for a total of <NUM> candidate markers as shown in <FIG>.

Then these putative markers are evaluated to determine how important the different markers are for shape recovery. For this a set of <NUM> meshes of <NUM> females of different shapes is used in a variety of poses selected from the FAUST dataset, as described in [Bogo et al. A template mesh is aligned to each of the 3D scans resulting in a set of registered meshes, Rz, z = <NUM>. <NUM>, in which all vertices are in correspondence across the <NUM> instances. The <NUM> markers are associated with vertices of the template and then body shape is estimated from different subsets of the markers. The accuracy of the result is evaluated in terms of the Euclidean distance between the vertices of the estimated and true mesh. Specifically the root mean squared error (RMSE) is computed over all the vertices (including the subset used for fitting) for all meshes.

More formally, given a maximum number of markers, c, a subset, T, of the mesh vertices, A, is sought that enables the most accurate estimation of body shape. This subset T is the one that minimizes a cost EM (T); that is <MAT>.

Notationally, now body model parameters {β,θ,γ} are abbreviated as P. Also vertex k of registered mesh z is denoted as Rkz. The best parameters <MAT>, given access only to subset T of the vertices for registered mesh z, are defined as <MAT> The cost of choosing subset T takes into account the distance between all vertices i ∈A across all the registered meshes z ∈Z = {<NUM>. <NUM>} <MAT> Note that the RMSE is (EM(T)/(|A||Z|))<NUM>/<NUM>.

Evaluating all possible subsets of <NUM> markers is infeasible so a greedy approach is taken. If there are currently N markers, one is removed, the cost for the N - <NUM> possible sets is evaluated, and the deleted marker <NUM> is selected that produces the lowest error. This marker <NUM> is removed and it is repeated.

<FIG> shows marker selection residuals. The plot shows the mesh shape reconstruction error as a function of marker count. <FIG> shows a plot of the RMSE for different numbers of markers. Note that here it is started with the <NUM>-marker set and markers are subtracted from it and markers are added to it. Surprisingly one can remove markers from the standard set and still obtain reasonable shape estimates down to about <NUM> markers <NUM>. It is decided to keep the original set and add the <NUM> additional darker markers <NUM>-<NUM>. The addition of markers <NUM>-<NUM> to the <NUM> results in a noticeable decrease in RMSE. Note that a similar error to the set of <NUM> could be obtained with fewer markers <NUM> by dropping some of the original <NUM>. To enable comparison with CMU results, however, it is decided to preserve the <NUM> and add to this set.

The first stage of optimization is evaluated, which computes the body shape <NUM> and marker locations. To compare estimated body shapes <NUM> to real ones, <NUM> subjects are scanned using a high-resolution 3D body scanner (3dMD LLC, Atlanta, GA). Before scanning, all subjects gave informed written consent. Additionally, <NUM> of the subjects were professional models who signed modeling contracts that allow us to release their full scan data.

A Vicon mocap system (Vicon Motion Systems Ltd, Oxford, UK) is also used to capture subjects with <NUM> markers. The <NUM> markers were selected using the marker optimization analysis from the full set of <NUM>, evaluated above. At most <NUM> markers <NUM> are used for shape and pose estimation; unused markers <NUM> prove valuable to evaluate held-out marker error. In all cases the optimization is used with soft-tissue deformation. Error is processed and evaluated using a total of <NUM> mocap sequences.

The goal is to estimate a body shape <NUM> that minimizes 3D body shape reconstruction error. This error is measured in two different ways: as held-out marker error and as mesh registration error. Held-out marker error reveals how well marker locations can be predicted that were not used by the optimization: for example, if <NUM> of the markers are used to estimate the body shape <NUM> then the remaining markers are used to estimate held-out error.

<FIG> shows effects of marker number on reconstruction error. The mean and standard deviations of distance residuals indicate how the marker number affects reconstruction. Left: Shape reconstruction error. This is computed as the mean absolute distance between the true body shape (as represented by the alignment of the template to a scan) and the body shape estimated by MoSh reposed to match the registered mesh. Right: Held-out marker error across all sequences. This measures errors in both shape and pose but is inflated by marker placement error and marker movement. In both plots, <NUM>% (± <NUM>) of the residuals are contained between the error bars.

As shown in <FIG> (right), the mean distance for held-out markers <NUM> drops to approximately <NUM> when <NUM> markers <NUM> are used. Note that these errors include deviations in placing markers <NUM> on a subject, which can easily exceed a centimeter. Specifically, when shape <NUM> is estimated from a subset of markers <NUM>, the placement of the held-out markers <NUM> is not optimized. So this error combines human placement error with errors in soft-tissue motion of the held-out markers that are not predicted by the subset used for fitting.

After about <NUM> markers the improvement is very gradual. This is interesting because it suggests that small marker sets can give good estimates of body shape <NUM>. Note that this evaluation uses all <NUM> mocap sequences and hence evaluates how well MoSh explains marker motions due to changes in both shape <NUM> and pose <NUM>.

<FIG> shows shape reconstruction. First row: raw 3D scans from a high-resolution scanner. Second row: registered meshes obtained by precisely aligning a template mesh, with the same topology as the model, to the scans. These registered meshes faithfully capture the body shape <NUM> and are used for the quantitative analysis. Third row: the model with shape,β, estimated from only <NUM> markers. Here the pose,θ, of the model is estimated to match the registered meshes to facilitate comparison. Bottom row: Distance between second and third rows. The heat map shows Euclidean distance from the registered mesh to the nearest point on the surface of the body <NUM> estimated by MoSh; dark means zero and light means ≥<NUM>.

Example 3D scans of several subjects are shown in <FIG> (row <NUM>). For each subject a template mesh is aligned to the scan and this template mesh has the same topology as the MoSh body model (<FIG> row two); this produces a registered mesh that is used for evaluation. Note that the registered meshes faithfully represent the scans and conform to the mesh topology of the model but do not have holes. Registration error is a measure of how well a subject's registered mesh can be explained in terms of average vertex-to-vertex mesh distance. Recovered body shapes <NUM> using <NUM> markers are shown in <FIG> row three. Here the MoSh result is posed in the same pose <NUM> as the scan. Given that MoSh results in a shape vector β, {θ, γ } are adjusted for a body model to minimize model-to-registration distance. The heat map in the bottom row of <FIG> shows the distance from the MoSh shape to the registered mesh, illustrating how well MoSh approximates the shape from <NUM> markers <NUM>.

This registration error is shown in <FIG> (left). Registration error behaves much like held-out marker error, except it is uniformly smaller. Unlike the held-out experiment, here it is only needed to explain shape <NUM> and not both pose <NUM> and shape <NUM>. Shape estimates are obtained from <NUM> mocap frames and are well constrained.

While large marker sets like those used in [Park and Hodgins <NUM>] certainly contain more information, it is seen in <FIG> (left) diminishing returns with larger marker sets. The ideal number of markers is likely related to the resolution of the mesh.

<FIG> shows shape from markers. The effect of the number of markers (<NUM>, <NUM>, <NUM>, <NUM>, <NUM>) on the registration error (in m) of the estimated shape is shown. Far right: reference image of the subject. To give some insight into what these numbers mean, <FIG> shows body shape <NUM> for one subject reconstructed using different numbers of markers <NUM>. Here markers <NUM> are selected based on the greedy evaluation strategy. What is surprising is that with only <NUM> markers <NUM>, a shape <NUM> is got that roughly captures the person's size. Note that the registration error decreases as more markers <NUM> are added; the numerical results show the registration error in m.

For the <NUM> models, scans, aligned meshes, mocap sequences, and MoSh fits can be provided. This data allows others to estimate shape <NUM> from the same sequences and compare with both the ground truth shape <NUM> and the results.

<FIG> shows CMU bodies and extracted shapes <NUM> (bottom) and reference images (top) for several CMU subjects. Shape <NUM> and pose <NUM> is computed with MoSh using <NUM> Vicon markers only.

While a ground truth shape <NUM> for the CMU dataset is not given, results can be evaluated qualitatively. A visual inspection of shape recovery from CMU can be seen in <FIG>, where video frames are shown above the bodies and poses estimated from <NUM> standard markers. To be clear, MoSh does not use this video frame; it is shown here only for a visual evaluation of rough shape. Since the CMU dataset has no anthropometric data, a quantitative evaluation is not possible.

For the above CMU results sequences are used for which the gender of the subject could be determined using accompanying video footage. Next it is asked whether gender can be estimate from the markers automatically (cf. [Livne et al. A linear support vector machine is used to predict gender from body model parameters. First a gender-neutral body model is fitted to all subjects in the CAESAR dataset to obtain linear shape coefficients. Then the SVM is trained to predict known gender given the shape parameters. Then gender classification is evaluated on body shape parameters estimated by MoSh from the CMU dataset with the gender-neutral body model. For the <NUM> subjects with known gender it is correctly predicted <NUM>% of the time; this is comparable to [Livne et al. <NUM>], which is not surprising since both methods rely on essentially the same kind of marker data.

Given the estimate of intrinsic shape,β, and the marker locations, M, now the pose <NUM> across a mocap sequence is optimized. The pose <NUM> for <NUM> subjects is computed across <NUM> different mocap sequences in the CMU dataset.

<FIG> shows CMU mocap. Example meshes extracted from the CMU mocap dataset and representative frames from the animation. All shapes and poses are estimated automatically using only <NUM> markers <NUM>. <FIG> shows some representative frames from some representative sequences in the CMU dataset. Even with <NUM> markers <NUM> some soft tissue deformation can be captured and the results shown here allow body shape deformation over time. The visual nuance of pose reconstruction is difficult to illustrate in a static image but is apparent in the accompanying video. Note that this is fully automatic.

The best way to evaluate accuracy of pose <NUM> and shape <NUM> together is in terms of held out marker error. For this <NUM> subjects and <NUM> mocap sequences are used acquired with the extended marker set. <NUM> markers are used for estimation and <NUM> to compute held-out error. This error is <NUM> and corresponds to the rightmost point on the right plot in <FIG> (right).

With a small marker set, noise in any one marker <NUM> can have an impact. In the shape estimation stage, the shape and marker placement are estimated from many poses <NUM>, so variation in any individual marker <NUM> should not unduly harm shape or marker placement estimation. During pose estimation, velocity constancy helps reduce the effect of single marker noise. Future work should address methods to automatically detect and downweight missing markers or markers that have moved.

The body model was learned to represent both shape <NUM> and posedependent deformations from registered meshes of static subjects. Many other subtle body shape deformations were not explicitly learned by the model, including static muscle contraction, breathing, gravity, external forces, and dynamics. What is shown is that the space of body shapes <NUM> learned from different people captures variations in shape <NUM> that can approximate soft tissue motions. Note that the dynamics of soft tissue are not modeled. Only the effects of such motions are fitted that are apparent in the marker data.

<FIG> shows motion of soft tissue and examples from several sequences. Some representative samples are shown. In each pair, the left image is without modeling dynamics (body shape <NUM> fixed) and the right with dynamics (body shape varying). Each image shows the full body and a detail region. Light balls correspond to the mocap markers <NUM>. Dark balls correspond to the simulated marker locations. Allowing body shape <NUM> to change over time better captures soft tissue deformations. Note that, with dynamics, the predicted markers much more closely match the observed markers.

The estimated body shape <NUM> is shown with a single body shape, β, per subject (left image in each pair) and the results allowing deviations, βt, from this shape <NUM> (right image in each pair). Note the markers on the chest and belly. Dark are the simulated markers predicted by the model and light are the observed markers. With changing body shape <NUM>, the markers <NUM> undergoing soft-tissue deformation are more accurately fitted. This is not surprising, but what is important is that the shape <NUM> remains "natural" and continues to look like the person.

Numerically it is seen that the mean observed marker error go down from <NUM> to <NUM> with dynamics. Again this is not surprising since it is allowed for the shape <NUM> to deform to fit these markers <NUM>. Held out marker error is also tested; these are markers <NUM> that were not used to estimate shape <NUM>. Here too the mean error is seen to go from <NUM> to <NUM>. This is not a significant improvement, but rather a validation that fitting the soft-tissue motion does not hurt held-out marker error. This confirms the subjective impression that the body shape <NUM> does not deform unnaturally and the non-rigid motions, away from the tracked markers, reflect realistic body deformations. While, of course, fine ripples cannot be captured with a sparse set of markers, it is surprising how much realistic deformation MoSh can estimate.

In the video one sees the observed markers "swimming" around relative to the estimated shape <NUM> when dynamics are not modeled. There <NUM> markers are also compared with the <NUM>-marker set and find that the extra markers placed on the soft tissue are important.

The soft tissue deformations correspond to directions in the space of human body shapes <NUM>. The amount of deformation along these directions can be varied to either attenuate or amplify the effect. Specifically the 3D motion is magnified by multiplyingβt by a userspecified constant to exaggerate the soft tissue deformations.

This is difficult to show in print but the video shows examples of the same sequence with different levels of exaggeration. It is found that the deformations could be magnified by a factor of <NUM> or <NUM> while retaining something like natural motion. Pushing the exaggeration by a factor of <NUM> sometimes produce interesting effects and, other times, unnatural body shapes <NUM>.

This tool could be useful to animators to produce reference material since it highlights how soft tissue deforms. It could also be used to create new effects that exaggerate human actions but in a way that is based on physically realistic deformations.

<FIG> shows retargeting soft-tissue motions. Top row: Body part segmentation for human and stylized characters. Middle row: retargeting pose and soft-tissue motion of an actor (left) to a stylized female character (middle), with heat maps (right) illustrating the percentage of soft-tissue deformation; dark means zero and light means ≥ <NUM> percent deformation. Bottom row: retargeting to another stylized character. The soft-tissue motions can be visualized.

An important use of skeletal mocap data is the retargeting of motion to a new character; the same can be done with MoSh. Consider the stylized characters in <FIG> that were downloaded from the Internet. For each character, the template is deformed towards the character using regularized registration, initialized by hand-clicked correspondences. To model shape deformations from this character mesh, the PCA model of body shape <NUM> is simply re-centered by replacing the original mean shape, µ, with the character's template deformations. The soft tissue deformation coefficients,βt, are then simply applied to this new mean shape. The estimated translation, γt, and MoSh part rotations, θt, are also directly applied to the parts of the new character along with the learned non-rigid pose-dependent shape deformations. This produces plausible animations. Note that, to get realistic soft-tissue transfer, human actors with body shapes are used that resemble the stylized character; see <FIG>. Of course, these deformations can also be exaggerated. MoSh addresses a key criticism of existing motion capture methods. By estimating a changing body shape <NUM> over time from sparse markers, MoSh captures detailed non-rigid motions of the body <NUM> that produce lifelike animations. MoSh is completely compatible with existing industry-standard mocap systems. It can be used alone or in conjunction with traditional skeletal mocap since no information is lost and MoSh can use exactly the same markers as current systems. The hope is that MoSh breathes new life into old mocap datasets and provides an easily adopted tool that extends the value of existing investments in marker-based mocap.

There are several current limitations that present interesting directions for future work. For example, it is needed to roughly know the marker set and it is also assumed the markers are in correspondence. It can be corrected for some mislabeled markers but still a largely labeled dataset is assumed. Establishing correspondence and cleaning markers sets is a time consuming part of current mocap practices. It would be interesting to leverage the body model to try to solve these problems automatically. For example, the simulated markers could also be used to detect when a marker <NUM> is missing or has moved. If a marker <NUM> moves between sessions its location could then be updated on the fly. It could also be estimated the noise in each marker <NUM> independently and take this into account during pose and shape estimation. The estimated body pose <NUM> could also be used to create a virtual marker sequence that could replace the original. This would provide a principle way of fixing occlusions. Simulating a different set might be useful for methods that extract skeletal data from markers.

The quality of MoSh output is very dependent on the quality of the body model that is used. If the model cannot represent a pose <NUM> realistically, then the output of MoSh will have artifacts. This is observed for a few poses, for example, both arms pointed forward, elbows straight and palms together. This suggests the pose training set should be augmented with new poses.

An interesting direction for future work would be to use other types of body models. For example, it should be possible to replace the model with one that uses linear blend skinning and corrective blend shapes.

The method for evaluating new marker sets could be used to construct sets to capture specific types of non-rigid deformations such as breathing. If the 3D mesh sequences are given the analysis could be extended to select marker sets directly relevant for capturing soft tissue motion. It is not evaluated which poses <NUM> are most effective for estimating body shape <NUM>; <NUM> are simply chosen at random. Jointly optimizing the marker set and the poses <NUM> could make a mocap system a more effective "body scanner;" the body scanning protocol would involve attaching the markers and having the subject assume the prescribed poses.

The soft-tissue motions are approximations based on sparse markers but result in dense deformations. Since it is easy to acquire the data, it would be interesting to use these to train a more physical model of how soft tissue moves. That is, possibly MoSh could be leveraged to learn a more sophisticated body shape model with dynamics. This could allow generalization of soft-tissue motions to new body shapes <NUM> and movements. Improved estimation could also be achieved by coupling the marker-based analysis with video or range data.

An important application of MoSh is virtual production: enabling directors to see realistically what an entire animated character would look like in a scene, while on-set, has the potential to be a valuable asset for creative control. But it should be clear to someone practiced in the art that although it is applied to the body <NUM> as a whole, this method can be applied with specific focus to particular parts (faces, hands and feet) or with attention to clothing.

Claim 1:
A method for providing a personalized three-dimensional body model for generating an animation, based on a moving body (<NUM>), wherein the method comprises:
- Providing a parametric three-dimensional body model, which allows shape (<NUM>) and pose (<NUM>) variations, wherein the parametric three-dimensional body model is trained by means of a set of scans of people in a plurality of shapes (<NUM>) and poses (<NUM>) in order to represent shape (<NUM>) and pose (<NUM>)-dependent deformations;
- Receiving a sequence of 3D motion capture, mocap, marker data in relation to a set of markers (<NUM>) located on the moving body (<NUM>), wherein the sequence comprises a plurality of captured frames;
- Automatically providing a personalized three-dimensional body model on the basis of the parametric three-dimensional body model and the captured sequence of 3D mocap marker data, wherein the automatically providing comprises:
o A first optimization process, in which for a subset of the frames of the sequence of 3D mocap marker data, marker locations relative to the three-dimensional body model, body shape (<NUM>) and body pose (<NUM>) are simultaneously estimated, wherein marker locations and body shape (<NUM>) are assumed to be time-independent, and
o A second optimization process for estimating body pose (<NUM>) using the marker locations and body shape (<NUM>) estimated in the first optimization process, wherein the marker locations are kept fixed, and wherein the body shape (<NUM>) is allowed to vary across the mocap sequence while being constrained to be close to the body shape estimated in the first optimization process; and
- Generating an animation using the personalized three-dimensional body model.