1 / 28

An Application of Lie theory to Computer Graphics

An Application of Lie theory to Computer Graphics. Applied Topology 25 th July. 2013. Będlewo. Shizuo KAJI Yamaguchi University JST/CREST. Outline. Blend Shape - a problem in CG Mathematical setup Our solution. Blend Shape. Japanese ex-prime minister Mori. Statue of Moai.

gavivi
Download Presentation

An Application of Lie theory to Computer Graphics

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. An Application of Lie theory to Computer Graphics Applied Topology 25th July. 2013. Będlewo Shizuo KAJI Yamaguchi University JST/CREST

  2. Outline • Blend Shape - a problem in CG • Mathematical setup • Our solution

  3. Blend Shape

  4. Japanese ex-prime minister Mori Statue of Moai

  5. Blend Shape – The problem Problem: From (two or more) input images, generate interpolated images input: A, B => “(1-t)A + tB”: output Input Output t=0.5

  6. Where is it used ? • Michael Jackson “Black or White” • Movie: Terminator 2、Forest Gump… • Creating new industrial design • Video compression, High framerate TV • Adobe Photoshop/After effects Puppet Warp Igarashi et al. 2005 Beier and Neely 1992

  7. Blend Shape – basic idea input: A, B => “(1-t)A + tB”: output It usually requires additional input which should be given manually. (ex. the arrows in the picture) Construct a series of homeos indexed by t ∈ R ft : R2→ R2 t ∈ R

  8. Weakness of classical method desirable We want “Geometry aware” method

  9. What is an appropriate setupfor this problem ?

  10. Simplicial complex In CG, the most basic representation of geometric object is (triangulated) polyhedron, i.e., simplicial complex 3D 2D

  11. Simplicial complex More precisely, ・Abstract simplicial complex (= set of tetrahedra) ・Piecewise Linear (PL) embedding (= vertex positions in Rn)

  12. Paraphrase of blend shape fA fB fA/2+B/2 Instead of considering objects themselves, ・Consider embeddings from a (reference) simplicial complex ・And find a “suitable” path in the space of embeddings

  13. Our algorithm Based on Joint works with K. Anjyo, S. Hirose, H. Ochiai and K. Anjyo, S. Hirose, Y. Mizoguchi, S.Sakata

  14. Workflow Problem From given input shapes, generate interpolated shapes input: A, B => “(1-t)A + tB”: output Our strategy is divided into three steps Express input shapes by PL-maps from a reference simplicial complexFor each t ∈ R; Construct interpolated affine maps independently for each simplex Assemble those maps into a global PL-immersion

  15. 1. Isomorphic subdivision Sub problem Givenhomeomorphicsimplicial complexes, subdivided them to make combinatorially isomorphic Fact: Homeo PL-isomorphic (dimension≦3) There are algorithms to give an explicit isomorphism. But none of them is perfect. This is still an open problem in computational geometry. 1-to-1 We simply rely on existing methods here

  16. Assume we have PL-embeddings fA, fB of a reference simplicial complex to the shapes to be blended. We want to find a homotopyHt connecting fA and fB. fA fB H1/2 Ht

  17. 2. Local construction Sub problem For each simplex, construct a time varying series of interpolated affine maps, which preserve geometry locally. First, we consider simplex-wisely

  18. 2. Local construction Sub problem Given two affine maps X and Y, generate a blended affine map At := “(1-t)X + tY” The first guess for the answer would be simply the linear combination of X and Y, but it produces bad results. undesirable desirable More precisely,

  19. 2. Local construction Lie algebra Lie group But the problem is the group of affine transformations is not compact. Based on the Cartan decomposition, we have the following surjection, which meets our need. The above map is almost bijective and its continuous inverseψ can be computed. The second guess would be using Lie correspondence

  20. 2. Local construction Nice both geometrically and computationally ! Now we can blend affine maps linearly in the parameter space Key points: ・ is not surjective ・There is an explicit and fast computation algorithm for φ, ψ ・The blended map has geometric meaning: for example, the interpolated map stays as close as Euclideanmotion (In the sense of Frobenius norm)

  21. 3. Patching local maps LocaltoGlobal It is done by finding the minimum of a certain energy functional on the space of PL-immersions. Sub problem Assemble the locally constructed affine maps into a global PL-map

  22. The energy functional : the simplex-wisely blended affine map • Key points: • * It measures the difference between the PL-map and the locally constructed maps up to PL-conformal equivalence • * The minimizer is unique (modulo linear conformal equivalence) and varies smoothly with regard to t • Invariant under conformal transformation • Users can easily direct the result by adding some terms to it

  23. Visual consequence Energy w/o invariance Trajectory of a point Is specified by user Energy w/ invariance Left and center: user defined constraints Right: effect of PL-conformal invariance

  24. Applications Our algorithm directly generalizes to more than two inputs input: A, B, C, D… => “sA+ tB + uC + vD + …”: output Furthermore, nice properties of our linear parametrization of the affine transformation group allow various applications ・shape deformer (addition/scalar product) ・Inverse kinematics (calculus/differential equation) ・Motion analysis/compression using PCA/ICA (linear algebra)

  25. Demo Three shapes are blended according to weights. Weights are specified by user through the “ball controller”

  26. Demo Target shape (dino) is deformed according to user’s operation on the yellow cage.

  27. Demo Shapes are deformed according to user manipulated handles (invisible)

  28. Advertisement There will be a conference on “Math for CG” in October Google “MEIS2013” for detail

More Related