290 likes | 586 Views
AS-RIGID-AS-POSSIBLE SHAPE MANIPULATION. TAKEO IGARASHI THE UNIVERSITY OF TOKYO TOMER MOSCOVICH BROWN UNIVERSITY JOHN F. HUGHES BROWN UNIVERSITY. INTRODUCTION . INTRODUCTION RELATED WORK OVERVIEW ALGORITHM EXTENSIONS RESULTS FUTURE WORK.
E N D
AS-RIGID-AS-POSSIBLE SHAPE MANIPULATION TAKEO IGARASHI THE UNIVERSITY OF TOKYO TOMER MOSCOVICH BROWN UNIVERSITY JOHN F. HUGHES BROWN UNIVERSITY
INTRODUCTION INTRODUCTION RELATED WORK OVERVIEW ALGORITHM EXTENSIONS RESULTS FUTURE WORK • We present a two-step closed-form algorithm that achieves real-time interaction. • The first step finds an appropriate rotation for each triangle. • The second step adjusts its scale. • Each step uses a quadratic error metric so that the minimization problem is formulate as a set of simultaneous linear equations.
RELATED WORK INTRODUCTION RELATED WORK OVERVIEW ALGORITHM EXTENSIONS RESULTS FUTURE WORK • SHAPE MANIPULATION TECHNIQUES FALL ROUGHLY INTO TWO CATEGORIES: • Deform the space in which the target shape is embedded. [Lewis et al. 2000]--using predefined skeleton. [McCracken and Joy 1996]--each point is associated with a closed region in a FFD grid. • Deform the shape while taking its structure into account. [Gibson and Mirtich1997]--mass-spring models.
OVERVIEW INTRODUCTION RELATED WORK OVERVIEW ALGORITHM EXTENSIONS RESULTS FUTURE WORK • a)Triangulation and registration(pre-computed) • Input a 2D model • Silhouette : marching squares algorithm • Triangulation : Delaunay triangulation • Registration : accelerate the computation during interaction
OVERVIEW INTRODUCTION RELATED WORK OVERVIEW ALGORITHM EXTENSIONS RESULTS FUTURE WORK • b)Compilation(pre-computed) • User clicks on the shape to place handles. • So far, user can only place handles at existing mesh vertices. • c)Manipulation • User drags the handles to make a deformation of the shape. • Also support multiple-point input devices. • During interaction, update the handle configuration to solve the quadratic error functions.
ALGORITHM INTRODUCTION RELATED WORK OVERVIEW ALGORITHM EXTENSIONS RESULTS FUTURE WORK • Overview of the algorithm
ALGORITHM • Step 1 : scale-free construction(allow rotation and uniform scaling) INTRODUCTION RELATED WORK OVERVIEW ALGORITHM EXTENSIONS RESULTS FUTURE WORK
ALGORITHM • Step 1 : scale-free construction(allow rotation and uniform scaling) • The error between v2desired and v2’ is then represented as • We can define v0desired and v1desired similarly, so the error • associated with the triangle is INTRODUCTION RELATED WORK OVERVIEW ALGORITHM EXTENSIONS RESULTS FUTURE WORK
ALGORITHM • Step 1 : scale-free construction(allow rotation and uniform scaling) • The error for the entire mesh is simply the sum of errors for all • triangles in the mesh. We can express it in matrix form: • The minimization problem is solved by setting the partial • Derivatives of the function E1{v’} with respect to the free • variables u in v’ to zero. INTRODUCTION RELATED WORK OVERVIEW ALGORITHM EXTENSIONS RESULTS FUTURE WORK
ALGORITHM • Step 1 : scale-free construction(allow rotation and uniform scaling) • Rewrite as • G’ and B are fixed and only q changes during manipulation. • Therefore, we can obtain u by simple matrix multiplication by • pre-computing G’-1B at the beginning. INTRODUCTION RELATED WORK OVERVIEW ALGORITHM EXTENSIONS RESULTS FUTURE WORK
ALGORITHM • Step 2 : scale adjustment • Fitting the original triangle to the intermediate triangle INTRODUCTION RELATED WORK OVERVIEW ALGORITHM EXTENSIONS RESULTS FUTURE WORK
ALGORITHM • Step 2 : scale adjustment • Fitting the original triangle to the intermediate triangle • Given a triangle{v0’,v1’,v2’}in the intermediate result and • corresponding triangle in the rest shape{v0,v1,v2},the first • problem is to find a new triangle{v0fitted,v1fitted,v2fitted}that is • congruent to{v0,v1,v2}and minimizes the following function. INTRODUCTION RELATED WORK OVERVIEW ALGORITHM EXTENSIONS RESULTS FUTURE WORK
ALGORITHM • Step 2 : scale adjustment • Fitting the original triangle to the intermediate triangle • We minimize Ef by setting the partial derivatives of Ef to zero. • By solving this equation, we obtain a newly fitted triangle {v0fitted,v1fitted, v2fitted} that is similar to the original triangle • {v0, v1, v2}. We make it congruent simply by scaling the fitted triangle by the factor of INTRODUCTION RELATED WORK OVERVIEW ALGORITHM EXTENSIONS RESULTS FUTURE WORK
ALGORITHM • Step 2 : scale adjustment • Generating the final result using the fitted triangles • We can define the quadratic error function by INTRODUCTION RELATED WORK OVERVIEW ALGORITHM EXTENSIONS RESULTS FUTURE WORK
ALGORITHM • Step 2 : scale adjustment • Generating the final result using the fitted triangles • The error for the entire mesh can be represented as : • We minimize E2 by setting the partial derivatives of E2 to zero. • Rewrite as INTRODUCTION RELATED WORK OVERVIEW ALGORITHM EXTENSIONS RESULTS FUTURE WORK
ALGORITHM • Algorithm summary INTRODUCTION RELATED WORK OVERVIEW ALGORITHM EXTENSIONS RESULTS FUTURE WORK
EXTENSIONS • Collision detection and depth adjustment INTRODUCTION RELATED WORK OVERVIEW ALGORITHM EXTENSIONS RESULTS FUTURE WORK
EXTENSIONS • Weights for controlling rigidity INTRODUCTION RELATED WORK OVERVIEW ALGORITHM EXTENSIONS RESULTS FUTURE WORK
EXTENSIONS • Animations INTRODUCTION RELATED WORK OVERVIEW ALGORITHM EXTENSIONS RESULTS FUTURE WORK
EXTENSIONS • As-rigid-as-possible curve editing INTRODUCTION RELATED WORK OVERVIEW ALGORITHM EXTENSIONS RESULTS FUTURE WORK
EXTENSIONS • As-rigid-as-possible curve editing INTRODUCTION RELATED WORK OVERVIEW ALGORITHM EXTENSIONS RESULTS FUTURE WORK
RESULTS INTRODUCTION RELATED WORK OVERVIEW ALGORITHM EXTENSIONS RESULTS FUTURE WORK
FUTURE WORK INTRODUCTION RELATED WORK OVERVIEW ALGORITHM EXTENSIONS RESULTS FUTURE WORK • Determine the depth order of the overlapping regions. • Extend the technique to 3D shapes. • Allow users to put handles at arbitrary locations. • Volume preservation.