quasi-rigid objects in contact. introduction introduction recent paper of m. pauly, d. pai, l....

36
Quasi-Rigid Objects in Contact

Upload: miles-nigel-page

Post on 14-Dec-2015

214 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Quasi-Rigid Objects in Contact. Introduction Introduction Recent paper of M. Pauly, D. Pai, L. Guibas, Quasi-Rigid Objects in Contact,Eurographics/ACM

Quasi-Rigid Objects in Contact

Page 2: Quasi-Rigid Objects in Contact. Introduction Introduction Recent paper of M. Pauly, D. Pai, L. Guibas, Quasi-Rigid Objects in Contact,Eurographics/ACM

IntroductionIntroduction

Recent paper of M. Pauly, D. Pai, L. Guibas, Quasi-Rigid Objects in Contact,Eurographics/ACM SIGGRAPH Symposium on Computer Animation (2004) presents techniques for modeling contact between quasi-rigid objects – solids that undergo modest deformation in the vicinity of a contact, while the overall object still preserves its basic shape.

Contact is ubiquitous in real world interactions and is one of the most difficult problems in 3D computer animation.

Applications: Bio-medical surgery simulation artificial joints, dental implants Mechanical design: wear and tear of industrial parts Physics-based animation:

movies games

Page 3: Quasi-Rigid Objects in Contact. Introduction Introduction Recent paper of M. Pauly, D. Pai, L. Guibas, Quasi-Rigid Objects in Contact,Eurographics/ACM

Existing ModelsExisting Models

Physical models used to address contact fall into two broad categories:

- Rigid body models and deformable body models.

Rigid body dynamics• small number of state variables• efficient collision detection• contact sensitivity problem (a stool with hundreds of legs)

Fully deformable (e.g. FEM, mass-spring) • accurate modeling of complex materials (elasticity,

plasticity)• too costly for models that hardly deform

Page 4: Quasi-Rigid Objects in Contact. Introduction Introduction Recent paper of M. Pauly, D. Pai, L. Guibas, Quasi-Rigid Objects in Contact,Eurographics/ACM

Quasi-Rigid ObjectsQuasi-Rigid Objects

A new type of model that called quasi-rigid combines the benefits of rigid body models for dynamic simulation and the benefits of deformable models for resolving contacts and producing visible deformations.

Quasi-rigid means objects whose surfaces can undergo modest deformations in the vicinity of a contact, while the overall object still preserves its basic shape.

Page 5: Quasi-Rigid Objects in Contact. Introduction Introduction Recent paper of M. Pauly, D. Pai, L. Guibas, Quasi-Rigid Objects in Contact,Eurographics/ACM

Surface modelSurface model

Surfaces are represented by point clouds, i.e., sets of point primitives that sample the position and normal of the underlying surface.

The moving least squares (MLS) surface model to define a smooth continuous surface from a set of point samples is used.

Given a point cloud P as input, the corresponding MLS surface S is defined as the stationary set of a projection operator P(x), i.e.,

S = {x 3| P(x) = x}. The projection P(x) is evaluated by first fitting a local least

squares plane that serves as a local parametrization domain. A second least squares optimization then yields a bivariate

polynomial g(u; v) that locally approximates the surface. The projection of x onto S is given as P(x) = q+g(0;0) n, where q is the origin and n the normal of the reference plane.

Page 6: Quasi-Rigid Objects in Contact. Introduction Introduction Recent paper of M. Pauly, D. Pai, L. Guibas, Quasi-Rigid Objects in Contact,Eurographics/ACM

Quasi-Rigid ObjectsQuasi-Rigid Objects

Physical model • A point force acting on a quasi-rigid solids

leads to a deformation that is restricted to a small, local area (active region) around the point of contact, while keeping the overall shape intact.

• Linear elasticity: Global system response by superpositionforces and displacements evaluated on surface only

Page 7: Quasi-Rigid Objects in Contact. Introduction Introduction Recent paper of M. Pauly, D. Pai, L. Guibas, Quasi-Rigid Objects in Contact,Eurographics/ACM

Quasi-Rigid ObjectsQuasi-Rigid Objects

Surface modelSurface model point cloud representation for modeling point cloud representation for modeling

consistent, highly dynamic contact surfaceconsistent, highly dynamic contact surface

Page 8: Quasi-Rigid Objects in Contact. Introduction Introduction Recent paper of M. Pauly, D. Pai, L. Guibas, Quasi-Rigid Objects in Contact,Eurographics/ACM

Physical ModelPhysical Model A widely used method in contact mechanics is the Boussinesq approximation,

which models the surface around a point of contact as an elastic half-space Boussinesq approximation

• infinite elastic half-space

yx

xyx

)(

2

1),(

p

Gu

Poisson’s ratio

shear modulus

force at x

displacement at ydue to force at x

Page 9: Quasi-Rigid Objects in Contact. Introduction Introduction Recent paper of M. Pauly, D. Pai, L. Guibas, Quasi-Rigid Objects in Contact,Eurographics/ACM

Physical ModelPhysical Model

Boussinesq approximation system response function exhibits a rapid

fall-off with increasing distance r

rGrf

1

2

1)(

yx r

Page 10: Quasi-Rigid Objects in Contact. Introduction Introduction Recent paper of M. Pauly, D. Pai, L. Guibas, Quasi-Rigid Objects in Contact,Eurographics/ACM

Physical ModelPhysical Model

Linear elasticity• superposition

xyx

xy d

p

Gu

S

)(

2

1)(

total displacement at y

Page 11: Quasi-Rigid Objects in Contact. Introduction Introduction Recent paper of M. Pauly, D. Pai, L. Guibas, Quasi-Rigid Objects in Contact,Eurographics/ACM

Volume PreservationVolume Preservation Volume preservation can be formulated as the following

constraint on the response function f (r)

A plausible analytical function can be obtaine by shifting Boussinesq function in the positive z-direction and modulating it with a Gaussian

0

0)( rdrrf

Page 12: Quasi-Rigid Objects in Contact. Introduction Introduction Recent paper of M. Pauly, D. Pai, L. Guibas, Quasi-Rigid Objects in Contact,Eurographics/ACM

Volume PreservationVolume Preservation

Figure illustrates volume preservation for quasi-rigid objects on a simple example of a ball in contact with a plane, using the transfer function(a) original configuration prior to contact resolution, (b) plane deformable, sphere rigid, (c) sphere deformable, plane rigid, (d) both models deformable.

Page 13: Quasi-Rigid Objects in Contact. Introduction Introduction Recent paper of M. Pauly, D. Pai, L. Guibas, Quasi-Rigid Objects in Contact,Eurographics/ACM

DiscretizationDiscretization

In a discrete setting, we need to find relations between the displacement ui that node qi experiences due to the tractions pj acting on all other nodes. system response matrixRpu

vector of displacements

[u1,...,uN]T

vector of tractions[p1,...,pN]T

xxq

xd

GR

S i

jij

)(

2

1

matrix coefficient

Page 14: Quasi-Rigid Objects in Contact. Introduction Introduction Recent paper of M. Pauly, D. Pai, L. Guibas, Quasi-Rigid Objects in Contact,Eurographics/ACM

Approximate system response at discrete nodes (point samples)

DiscretizationDiscretization

force at node j

shape function

N

jjjpp

1

)()( xx

xqx

xdp

Gu

S i

j

jji

)(

2

1

displacementat node i

Page 15: Quasi-Rigid Objects in Contact. Introduction Introduction Recent paper of M. Pauly, D. Pai, L. Guibas, Quasi-Rigid Objects in Contact,Eurographics/ACM

ContactContact

Given the model for quasi-rigid objects defined above, our goal is to determine the contact surface S of two solids A and B and compute the forces that act on this surface.

The bodies A and B are represented by two point clouds PA and PB that define two corresponding MLS surfaces SA and SB.

During a simulation, the two bodies might collide and interpenetrate.

Page 16: Quasi-Rigid Objects in Contact. Introduction Introduction Recent paper of M. Pauly, D. Pai, L. Guibas, Quasi-Rigid Objects in Contact,Eurographics/ACM

ContactContact

Collision detection• Static bounding volume hierarchies (small

deformations). If a collision is detected, we compute two sets of active nodes QA and QB

Contact resolution• Compute forces and displacements that resolve

contact Contact surface

• Find contact surface that is consistent for both models

Page 17: Quasi-Rigid Objects in Contact. Introduction Introduction Recent paper of M. Pauly, D. Pai, L. Guibas, Quasi-Rigid Objects in Contact,Eurographics/ACM

Contact ResolutionContact Resolution

Collision detection determines points that potentially experience displacements (active nodes)

Find corresponding point for each active node

active nodes

corresponding nodes

Page 18: Quasi-Rigid Objects in Contact. Introduction Introduction Recent paper of M. Pauly, D. Pai, L. Guibas, Quasi-Rigid Objects in Contact,Eurographics/ACM

Contact ResolutionContact Resolution

A conservative estimate (that might include some points that are not penetrating, but close to the intersection region) is used

To further improve performance, a bounding sphere hierarchy for fast intersection culling is used.

Page 19: Quasi-Rigid Objects in Contact. Introduction Introduction Recent paper of M. Pauly, D. Pai, L. Guibas, Quasi-Rigid Objects in Contact,Eurographics/ACM

Contact ResolutionContact Resolution Separation of active nodes Given the sets of active nodes QA and QB, we need to

find tractions on these points such that the corresponding displacements lead to deformed surfaces S’A and S’ B that are in contact, but do not interpenetrate.

Let S = S’A S’ B be the (as yet unknown) contact surface between the deformed models.

If the two surfaces touch at a point x S, the corresponding normal tractions at this point on each of the two surfaces are equal, i.e., pA(x) = pB(x)

Page 20: Quasi-Rigid Objects in Contact. Introduction Introduction Recent paper of M. Pauly, D. Pai, L. Guibas, Quasi-Rigid Objects in Contact,Eurographics/ACM

Contact ResolutionContact Resolution

Let qA QA be an active node of model A and assume for now that after deformation this point will end up on the final contact surface.

Then there exists a corresponding point xA SB such that its position in the final configuration coincides with the deformed position of qA and the normal tractions at both points are equal.

Page 21: Quasi-Rigid Objects in Contact. Introduction Introduction Recent paper of M. Pauly, D. Pai, L. Guibas, Quasi-Rigid Objects in Contact,Eurographics/ACM

Contact ResolutionContact Resolution

Separation of active nodes• Initial separation

• Final separation Bi

Ai

Bi

Aii uus qq

Bi

Aiis qq ~

Page 22: Quasi-Rigid Objects in Contact. Introduction Introduction Recent paper of M. Pauly, D. Pai, L. Guibas, Quasi-Rigid Objects in Contact,Eurographics/ACM

Contact ResolutionContact Resolution

Condition for contact resolution:

• Non-negative separation: si ≥ 0

• Non-negative force: pi ≥ 0

Page 23: Quasi-Rigid Objects in Contact. Introduction Introduction Recent paper of M. Pauly, D. Pai, L. Guibas, Quasi-Rigid Objects in Contact,Eurographics/ACM

Finally, we observe that the separation si and the traction pi are complementary – at each point, at least one of them is zero; to be able to have non-zero traction, we must have zero separation, and to have non-zero separation, we must have zero traction. Therefore, we can combine these complementarity conditions to obtain

Linear Complementarity Problem (LCP)

Solved using Lemke’s method

Contact ResolutionContact Resolution

qRps 0s0p0psT

Page 24: Quasi-Rigid Objects in Contact. Introduction Introduction Recent paper of M. Pauly, D. Pai, L. Guibas, Quasi-Rigid Objects in Contact,Eurographics/ACM

The linear complementarity problem in linear algebra consists of starting with a known n-dimensional column vector q and a known n×n matrix M, and finding two n-dimensional vectors w and z such that:

q = w − Mz wi ≥ 0 and zi ≥ 0 for each i

wi × zi = 0 (i.e. either wi =0 or zi = 0) for each i There are several algorithms (e.g. Lemke's algorithm)

dealing with specific cases of the linear complementarity problem. A linear complementarity problem has a unique solution if and only if M is a P-matrix.

A P-matrix is a complex square matrix with every principal minor > 0.

Linear Complementarity Problem

Page 25: Quasi-Rigid Objects in Contact. Introduction Introduction Recent paper of M. Pauly, D. Pai, L. Guibas, Quasi-Rigid Objects in Contact,Eurographics/ACM

An LCP in standard form is specified by a pair b, M with a vector b in n and an n n matrix M (see COTTLE, R. W., PANG, J.-S., and STONE, R. E. (1992). The Linear Complementarity Problem. San Diego: Academic Press., p. 1). The problem is to find z n so that

z 0 b + Mz 0 ♥

zT (b + Mz) 0 For Lemke’s method, the system ♥ is rewritten and

generalized as follows.• Let I be the nn identity matrix and d be an n-vector with

positive components(for example, d =(1,…,1)T ). • Using an auxiliary variable z0, the term b + Mz in (♥ ) is

replaced by b +d z0 + Mz, which is denoted by the n-vector w.

Linear Complementarity Problem

Page 26: Quasi-Rigid Objects in Contact. Introduction Introduction Recent paper of M. Pauly, D. Pai, L. Guibas, Quasi-Rigid Objects in Contact,Eurographics/ACM

• The problem generalizing (♥) is that of finding w 0, z0 0 and z 0 so that

Iw - dz0 + Mz = b ♥♥ and zT w = 0 hold.

• A solution w , z0 , z to this problem defines a solution to (♥) if and only if z0 = 0 .

• In (♥♥), the vector b is represented as a nonnegative linear combination of certain columns of the matrix [I,-d,-M].

• Like the simplex algorithm for linear programming, Lemke’s algorithm traverses basic solutions of this system.

Linear Complementarity Problem

Page 27: Quasi-Rigid Objects in Contact. Introduction Introduction Recent paper of M. Pauly, D. Pai, L. Guibas, Quasi-Rigid Objects in Contact,Eurographics/ACM

Contact SurfaceContact Surface

Consistent conforming contact surface. • For instance, For instance, even though the distance between both meshes

might be zero at all the mesh vertices, there could still be intersections or gaps between the two surfaces

Adaptive moving least squares approximation requires no re-meshing or zippering.

• At any time instance, the surface of model A is represented by its original points PA plus all active nodes of B that lie on the contact surface (analogously for model B)

Page 28: Quasi-Rigid Objects in Contact. Introduction Introduction Recent paper of M. Pauly, D. Pai, L. Guibas, Quasi-Rigid Objects in Contact,Eurographics/ACM

SimulationSimulation

Treat objects as rigid while in free Treat objects as rigid while in free motionmotion

• Whenever a collision between two objects is detected, we retrace the simulation to the time instance of first contact and proceed with a smaller time step.

Integrate contact forces to compute Integrate contact forces to compute total total wrenches, i.e., the forces and torques, acting on the bodies.

Page 29: Quasi-Rigid Objects in Contact. Introduction Introduction Recent paper of M. Pauly, D. Pai, L. Guibas, Quasi-Rigid Objects in Contact,Eurographics/ACM

FrictionFriction A major benefit of explicitly modeling the contact surface

is that we can accurately simulate effects that are primarily dictated by contact, such as friction.

Friction could be added to the elastic LCP in essentially the same way as it is added to dynamic LCPs , using a polyhedral approximation to the friction cone.

But this increases the size of the LCP significantly by adding m+1 pairs of complementary variables at each contact point, where m is the number of facets of the friction cone.

However, if we make the simplifying assumption that tangential tractions do not cause significant deformations, we can decouple tangential and normal quantities during contact resolution.

This greatly simplifies the computations.

Page 30: Quasi-Rigid Objects in Contact. Introduction Introduction Recent paper of M. Pauly, D. Pai, L. Guibas, Quasi-Rigid Objects in Contact,Eurographics/ACM

ExampleExample

Model acquisitionModel acquisition laser-range scan laser-range scan consisting of 55,061 sample

points of which 11,317 experience a displacement due to the contact resolution.

Hierarchy constructionHierarchy construction recursive clusteringrecursive clustering efficient multi-level computationefficient multi-level computation

Page 31: Quasi-Rigid Objects in Contact. Introduction Introduction Recent paper of M. Pauly, D. Pai, L. Guibas, Quasi-Rigid Objects in Contact,Eurographics/ACM

ExampleExample

SimulationSimulation

Page 32: Quasi-Rigid Objects in Contact. Introduction Introduction Recent paper of M. Pauly, D. Pai, L. Guibas, Quasi-Rigid Objects in Contact,Eurographics/ACM

ExampleExample

Measurement Simulation

X2 FootSensor (xSensor Corp.) 37 x 13 sensors, 1.94 sensors/cm2

ValidationValidation

Page 33: Quasi-Rigid Objects in Contact. Introduction Introduction Recent paper of M. Pauly, D. Pai, L. Guibas, Quasi-Rigid Objects in Contact,Eurographics/ACM

Bio-medical ApplicationsBio-medical Applications Simulate friction effects to predict Simulate friction effects to predict

attritionattrition

design of artificial jointsdesign of artificial joints

Page 34: Quasi-Rigid Objects in Contact. Introduction Introduction Recent paper of M. Pauly, D. Pai, L. Guibas, Quasi-Rigid Objects in Contact,Eurographics/ACM

Computer AnimationComputer Animation

Quasi-rigid body simulationQuasi-rigid body simulation

Page 35: Quasi-Rigid Objects in Contact. Introduction Introduction Recent paper of M. Pauly, D. Pai, L. Guibas, Quasi-Rigid Objects in Contact,Eurographics/ACM

ConclusionConclusion

Quasi-rigid objects bridge the gap Quasi-rigid objects bridge the gap between rigid bodies and fully between rigid bodies and fully deformable modelsdeformable models

Simple and efficient model for contact Simple and efficient model for contact resolutionresolution

Limitations: Limitations: small deformationssmall deformations linear elasticity linear elasticity sharp cornerssharp corners

Page 36: Quasi-Rigid Objects in Contact. Introduction Introduction Recent paper of M. Pauly, D. Pai, L. Guibas, Quasi-Rigid Objects in Contact,Eurographics/ACM

Future WorkFuture Work

Coupling with low-resolution FEM Coupling with low-resolution FEM modelmodel

Incorporate friction into LCPIncorporate friction into LCP Application: Contact simulation in knee Application: Contact simulation in knee

jointjoint