# US 9,519,988 B2 · Subspace clothing simulation using adaptive bases

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 9,519,988 B2
- Document ID: US9519988B2
- Status: Granted
- Kind: B2
- Application number: 14/502,388
- Filed: 2014-09-30
- Published: 2016-03-31
- Granted: 2016-12-13
- Earliest claimed: 2014-09-30
- Assignees: Pixar; ETH Zurich; Disney Enterprises, Inc.
- Applicants: Pixar
- Inventors: Robert Sumner; Fabian Hahn; Bernhard Thomaszewski; Stelian Coros; Forrester Cole; Mark Meyer; Anthony Derose; Markus Gross
- Web page: https://patentgrep.com/patent/US9519988B2

## CPC

- G06T 13/40: of characters, e.g. humans, animals or virtual beings
- G06F 18/23: Clustering techniques
- G06V 10/762: using clustering, e.g. of similar faces in social networks
- G06T 2210/16: Cloth
- G06T: IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- G06V: IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING

## Abstract

A method of animation of surface deformation and wrinkling, such as on clothing, uses low-dimensional linear subspaces with temporally adapted bases to reduce computation. Full space simulation training data is used to construct a pool of low-dimensional bases across a pose space. For simulation, sets of basis vectors are selected based on the current pose of the character and the state of its clothing, using an adaptive scheme. Modifying the surface configuration comprises solving reduced system matrices with respect to the subspace of the adapted basis.

## Claims

### Claim 1

A method of generating animation data of deformable surface, the method comprising:
receiving results of simulations of the deformable surface at a plurality of training poses, the results at a training pose comprising one or more configurations of the deformable surface, wherein a configuration specifies positions of a plurality of locations on the deformable surface;
clustering the plurality of training poses into a plurality of clusters, each cluster comprising one or more of the plurality of training poses;
for each cluster:
determining one or more representative poses of the cluster; and
determining a local basis for a subspace of the configurations associated with the cluster based on the one or more representative poses of the cluster;
receiving a new pose corresponding to a particular multidimensional point in pose space;
identifying one or more clusters based on a distance in pose space from the new pose to each of the one or more clusters;
constructing an adapted basis from the one or more local bases of the one or more identified clusters;
determining the positions of the plurality of locations on the deformable surface for the new pose using the adapted basis.

### Claim 2 (depends on 1)

A method of claim 1, wherein determining the local basis of a first cluster of the plurality of clusters includes using a dimension reduction analysis and the configurations associated with the training poses of the first cluster.

### Claim 3 (depends on 2)

The method of claim 2, further comprising:
modifying the configurations associated with the training poses of the first cluster before performing the dimension reduction analysis by:
subtracting a state of a kinematic model evaluated at the new pose, and then transforming back to a neutral pose.

### Claim 4 (depends on 1)

The method of claim 1, wherein a first configuration in a local basis of one of the identified clusters is selected for inclusion in the adapted basis based on an alignment of the first configuration with a gradient of a full space dynamic model of the deformable surface.

### Claim 5 (depends on 2)

The method of claim 2, wherein the dimension reduction analysis is applied to differences between the configurations and respective states of a kinematic model for the training poses.

### Claim 6 (depends on 4)

The method of claim 4, wherein the gradient of the full space dynamic model of the deformable surface is selected for inclusion in the adapted basis.

### Claim 7 (depends on 1)

The method of claim 1, wherein the deformable surface represents clothing.

### Claim 8 (depends on 1)

The method of claim 1 wherein one of the training poses represents a shape of a three-dimensional object and the configuration of the deformable surface from the simulation at the training pose is such that part of the deformable surface is located on the surface of the three-dimensional model.

### Claim 9 (depends on 1)

The method of claim 1 wherein determining the positions of the plurality of locations on the deformable surface for the new pose comprises:
calculating a reduced system matrix K and a reduced system gradient r with respect to the adapted basis;
solving for a reduced coordinate vector q so that Kq=r; and
using q in determining the positions of the plurality of locations on the deformable surface.

### Claim 10 (depends on 9)

The method of claim 9, wherein the reduced system matrix and the reduced system gradient are respectively determined as a projection of the full space dynamic model into a subspace spanned by the adapted basis and as a projection of the gradient of the full kinematic model into the subspace spanned by the adapted basis.

### Claim 11

A computer product comprising a non-transitory computer readable medium storing a plurality of instructions that when executed control a computer system to generate animation data of deformable surface, the instructions comprising:
receiving results of simulations of the deformable surface at a plurality of training poses, the results at a training pose comprising one or more configurations of the deformable surface, wherein a configuration specifies positions of a plurality of locations on the deformable surface;
receiving results of clustering the training poses into a plurality of clusters, each cluster comprising one or more of the plurality of training poses, wherein the results include, for each cluster, determining one or more representative poses of the cluster, determining a local basis for a subspace of the configurations associated with the cluster based on the one or more representative poses of the cluster;
receiving a new pose corresponding to a particular multidimensional point in pose space;
identifying one or more clusters based on a distance in pose space from the new pose to each of the one or more clusters;
constructing an adapted basis from the one or more local bases of the identified clusters;
determining the positions of the plurality of locations on the deformable surface for the new pose using the adapted basis.

### Claim 12 (depends on 11)

The computer product of claim 11, wherein determining the local basis of a first cluster of the plurality of clusters includes using a dimension reduction analysis and the configurations associated with the training poses of the first cluster.

### Claim 13 (depends on 12)

The computer product of claim 12, further comprising:
modifying the configurations associated with the training poses of the first cluster before performing the dimension reduction analysis by:
subtracting a state of a kinematic model evaluated at the new pose, and then by transforming back to a neutral pose.

### Claim 14 (depends on 11)

The computer product of claim 11, wherein a first configuration in a local basis of one of the identified clusters is selected for inclusion in the adapted basis based on an alignment of the first configuration with a gradient of a full space dynamic model of the deformable surface.

### Claim 15 (depends on 14)

The computer product of claim 14, wherein the dimension reduction analysis is applied to differences between the configurations and respective states of a kinematic model for the training poses.

### Claim 16 (depends on 14)

The computer product of claim 14, wherein the gradient of the full space dynamic model of the deformable surface is selected for inclusion in the adapted basis.

### Claim 17 (depends on 11)

The computer product of claim 11, wherein one of the training poses represents a shape of a three-dimensional object and the configuration of the deformable surface from the simulation at the training pose is such that part of the deformable surface is located on the surface of the three-dimensional model.

### Claim 18 (depends on 11)

The computer product of claim 11 wherein determining the positions of the plurality of locations on the deformable surface for the new pose comprises:
calculating a reduced system matrix K and a reduced system gradient r with respect to the adapted basis;
solving for a reduced coordinate vector q so that Kq=r; and
using q in determining the positions of the plurality of locations on the deformable surface.

### Claim 19 (depends on 11)

The computer product of claim 11, wherein the reduced system matrix and the reduced system gradient are respectively determined as a projection of the full space dynamic model into a subspace spanned by the adapted basis and as a projection of the gradient of the full kinematic model into the subspace spanned by the adapted basis.

### Claim 20 (depends on 11)

A system comprising one or more processors communicatively linked with the computer product of claim 11 and configured to execute the plurality of instructions.
