mesh anima on decomposi on and compression
play

Mesh Anima.on Decomposi.on and Compression Zhigang Deng - PowerPoint PPT Presentation

Skinning: Real-.me Shape Deforma.on Course Mesh Anima.on Decomposi.on and Compression Zhigang Deng Example-based Skinning Decomposi.on Input


  1. “Skinning: ¡Real-­‑.me ¡Shape ¡Deforma.on” ¡Course ¡ Mesh ¡Anima.on ¡Decomposi.on ¡ ¡ and ¡Compression ¡ Zhigang ¡Deng ¡

  2. Example-­‑based ¡Skinning ¡Decomposi.on ¡ • Input ¡ • Output ¡ – Without ¡skeleton: ¡ + ¡ – With ¡skeleton: ¡ Skinning ¡ ¡ Skeleton ¡ Weights ¡

  3. Example-­‑based ¡Skinning ¡Decomposi.on ¡ ¡ ¡ • Background/Mo.va.ons ¡ – Availability ¡and ¡affordability ¡of ¡performance ¡capture ¡ – Reusing ¡a ¡small ¡set ¡of ¡example ¡poses ¡for ¡edi.ng/ control ¡ Marker-­‑based ¡mocap ¡with ¡ ¡ Performance ¡Capture ¡of ¡Interac.ng ¡ ¡ Any ¡3D ¡model ¡ dense ¡markers ¡ Characters ¡with ¡Handheld ¡Kinects ¡ Authoring ¡tools ¡ [Park ¡and ¡Hodgins ¡2006] ¡ ¡[Ye ¡et ¡al. ¡2012] ¡ ¡[Mohr ¡and ¡Gleicher ¡2003] ¡ Weta ¡Digital's ¡Tissue ¡System ¡

  4. Example-­‑based ¡Skinning ¡Decomposi.on ¡ • Applica.ons ¡ – Anima.on ¡edi.ng ¡ 6 ¡DoFs ¡ 3 ¡DoFs ¡ – Compression, ¡hardware-­‑accelerated ¡skinning ¡ GPUs ¡ CPUs ¡ – Mesh ¡segmenta.on ¡ – Collision ¡detec.on ¡ – Skin ¡retarge.ng ¡

  5. Skinning ¡Weight ¡Reduc.on ¡& ¡Compression ¡ • Mo.va.on ¡ – Impose ¡the ¡sparseness ¡constraint ¡on ¡the ¡weights ¡ – Maximally ¡retaining ¡the ¡visual ¡quality ¡

  6. Road ¡Map ¡ Part ¡I: ¡ ¡  ¡ Example-­‑based ¡Skinning ¡Decomposi.on ¡ ¡ Part ¡II: ¡ ¡ Example-­‑based ¡Skeleton ¡Extrac.on ¡ Part ¡III: ¡ ¡ Skinning ¡Weights ¡Reduc.on ¡& ¡Compression ¡

  7. Review: ¡Linear ¡Blend ¡Skinning ¡ The ¡deformed ¡ ¡ Rota.on ¡of ¡ posi.on ¡ bone ¡ j ¡ ¡ of ¡vertex ¡ i ¡ ¡ Rest ¡pose ¡posi.on ¡ ¡on ¡vertex ¡ i ¡ ¡ t,i = P m v 0 j =1 w ij ( R t,j v i + T t,j ) Influence ¡of ¡bone ¡ j ¡ ¡on ¡vertex ¡ i ¡ ¡ Transla.on ¡of ¡ bone ¡ j ¡ ¡

  8. Example-­‑based ¡Skinning ¡ Decomposi.on ¡ • Defini.on ¡(inverse ¡of ¡LBS ¡problem) ¡ – Automa.cally ¡extract ¡the ¡LBS ¡model ¡from ¡example ¡poses ¡ • Several ¡selected ¡skinning ¡decomposi.on ¡methods ¡ – Skinning ¡mesh ¡anima.on ¡(SMA) ¡[James ¡and ¡Twigg ¡2005] ¡ – Fast ¡and ¡efficient ¡skinning ¡of ¡animated ¡meshes ¡(FSD) ¡[Kavan ¡et ¡al. ¡2010] ¡ – Smooth ¡skinning ¡decomposi.on ¡with ¡rigid ¡bones ¡(SSDR) ¡[Le ¡and ¡Deng ¡2012] ¡

  9. Problem ¡Formula.on ¡ • A ¡constrained ¡least ¡squares ¡op.miza.on ¡problem ¡ 2 � � S n m � � X X X � � v 0 W , R , T E = min min w ij ( R t,j v i + T t,j ) t,i � � � W , R , T � � t =1 i =1 j =1 � � Non-­‑nega.vity ¡constraint ¡ Subject to: w ij � 0 , 8 i, j m Affinity ¡constraint ¡ X w ij = 1 , 8 i j =1 Sparseness ¡constraint ¡ |{ w ij | w ij 6 = 0 }|  K, 8 i T R t,j = I , det R t,j = 1 , ∀ t, j Orthogonal ¡constraint ¡ R t,j • Constraints ¡used ¡in ¡different ¡methods ¡ – SSDR ¡and ¡SMA ¡can ¡handle ¡the ¡orthogonal ¡constraint ¡

  10. General ¡Pipeline ¡ Op7miza7on ¡of ¡Skinning ¡ Parameters ¡ Clustering-­‑based ¡ Bone ¡transforma.ons ¡ Bone ¡ update ¡ Ini7aliza7on ¡ Skinning ¡weights ¡ ¡ update ¡

  11. Clustering-­‑based ¡Bone ¡Ini.aliza.on ¡ • Goal ¡ – Ini.alize ¡proxy ¡bones ¡from ¡ example ¡poses ¡ • Algorithms ¡ image ¡courtesy ¡of ¡[kavan ¡et ¡al ¡2010] ¡ – Mean ¡shi* ¡clustering ¡ ( SMA ): ¡ without ¡explicitly ¡specifying ¡# ¡of ¡ bones. ¡ – Mul1ple ¡source ¡region ¡growing ¡ ( FSD ): ¡efficient. ¡ – K-­‑means ¡clustering ¡ ( SSDR ): ¡ assuming ¡each ¡vertex ¡is ¡driven ¡by ¡ one ¡bone ¡only. ¡ K-­‑means ¡clustering ¡in ¡SSDR ¡method ¡

  12. Op.miza.on ¡of ¡Skinning ¡Parameters ¡ • Single-­‑pass ¡strategy ¡in ¡the ¡SMA ¡method ¡ – Iden.fy ¡influence ¡bones ¡per ¡vertex ¡(a ¡fixed ¡number) ¡ • Having ¡the ¡smallest ¡squared ¡error ¡when ¡predic.ng ¡deformed ¡posi.on ¡ of ¡vertex ¡ i ¡alone. ¡ e ij = P S t,i − [ R t,j | T t,j ] v i || 2 t =1 || v 0 j = 1 · · · m 2 , – Es.mate ¡bone-­‑vertex ¡weights ¡ • A ¡constrained ¡least ¡squares ¡problem ¡ P P j 2 B i ([ R t,j | T t,j ] v i ) w ij = v 0 t = 1 · · · S j w ij = 1 t,i , • Mul.-­‑pass ¡(Itera.ve) ¡strategy ¡in ¡FSD ¡and ¡SSDR ¡ – Itera.vely ¡update ¡bone ¡transforma.ons ¡and ¡skinning ¡weights ¡ ¡ • only ¡describe ¡the ¡algorithm ¡in ¡SSDR ¡in ¡this ¡course ¡

  13. Itera.ve ¡Op.miza.on ¡in ¡SSDR ¡ 2 � � S n m � � X X X � � v 0 W , R , T E = min min w ij ( R t,j v i + T t,j ) t,i � � � W , R , T � � t =1 i =1 j =1 � � Subject to: w ij � 0 , 8 i, j m X w ij = 1 , 8 i j =1 |{ w ij | w ij 6 = 0 }|  K, 8 i T R t,j = I , det R t,j = 1 , ∀ t, j R t,j

  14. SSDR: ¡Update ¡Skinning ¡Weights ¡ 2 � � min W , R , T E = min W , R , T P S P n t,i − P m � v 0 j =1 w ij ( R t,j v i + T t,j ) � � t =1 i =1 �

  15. SSDR: ¡Update ¡Bone ¡Transforma.ons ¡ 2 � � min W , R , T E = min W , R , T P S P n t,i − P m � v 0 j =1 w ij ( R t,j v i + T t,j ) � � t =1 i =1 �

  16. SSDR: ¡Skinning ¡Weights ¡Update ¡ • Per vertex solver: Constrained Linear Least Squares � Non-­‑nega.vity ¡Constraint ¡ Affinity ¡Constraint ¡ • Speed up the Active Set Method [Lawson and Hanson] � – Pre-compute LU factorization of and � – Pre-compute QR decomposition of �

  17. SSDR: ¡Skinning ¡Weights ¡Update ¡ • Per vertex solver: Constrained Linear Least Squares � Sparseness ¡Constraint ¡ • Weight pruning of bones with small contribution � e ij = k w ij ( R t,j v i + T t,j ) k 2 Keep |K| bones with largest e ij and solve the LS again � Refer ¡to ¡the ¡Course ¡Note ¡for ¡more ¡detailed ¡explana.on ¡of ¡the ¡non-­‑nega.ve ¡least ¡ squares ¡solver ¡with ¡affinity ¡constraint ¡

  18. SSDR: ¡Bone ¡Transforma.ons ¡Update ¡ • Per ¡example ¡pose ¡solver ¡ 2 � � E t = min R t,j | T t,j ,j =1 ··· m P n t,i − P m � v 0 j =1 w ij ( R t,j v i + T t,j ) � � i =1 � Nonlinear ¡Constraint ¡ T R t,j = I , det R t,j = 1 , ∀ t, j Subject ¡to: ¡ R t,j  Levenberg-Marquardt optimization [ Marquardt 1963 ] �  Optimized solution Slow �  Absolute Orientation (a.k.a. Procrustes Analysis) 
 [ Kabsch 1978; Horn 1987 ] �  Fast Approximate solution �

  19. SSDR: ¡Bone ¡Transforma.ons ¡Solver ¡ • Solution: Solve bone transformation one-by-one to minimize the deformation residual of remaining bones �  Linear solver, fast, and simple �  Near optimized solution ¡ Example ¡pose ¡ Rest ¡pose ¡ Weights ¡ Green ¡bone ¡ Red ¡bone ¡

  20. SSDR: ¡Bone ¡Transforma.ons ¡Solver ¡ • Solution: Solve bone transformation one-by-one to minimize the deformation residual of remaining bones �  Linear solver, fast, and simple �  Near optimized solution ¡

  21. SSDR: ¡Bone ¡Transforma.ons ¡Solver ¡ • Solution: Solve bone transformation one-by-one to minimize the deformation residual of remaining bones �  Linear solver, fast, and simple �  Near optimized solution ¡

  22. SSDR: ¡Bone ¡Transforma.ons ¡Solver ¡ • Solution: Solve bone transformation one-by-one to minimize the deformation residual of remaining bones �  Linear solver, fast, and simple �  Near optimized solution ¡

  23. SSDR: ¡Bone ¡Transforma.ons ¡Solver ¡ • Solution: Solve bone transformation one-by-one to minimize the deformation residual of remaining bones �  Linear solver, fast, and simple �  Near optimized solution ¡

  24. SSDR: ¡Bone ¡Transforma.ons ¡Solver ¡ • Solution: Solve bone transformation one-by-one to minimize the deformation residual of remaining bones �  Linear solver, fast, and simple �  Near optimized solution ¡

  25. SSDR: ¡Bone ¡Transforma.ons ¡Solver ¡ • Solution: Solve bone transformation one-by-one to minimize the deformation residual of remaining bones �  Linear solver, fast, and simple �  Near optimized solution ¡ Amer ¡ Before ¡

  26. SSDR: ¡Bone ¡Transforma.ons ¡Solver ¡ • The residual for bone � 2 � � j = P n t,i − P m � v 0 E t j w ij ( R t,j v i + T t,j ) − w i ˆ j ( R t, ˆ j v i + T t, ˆ j ) � � j =1 ,j 6 =ˆ ˆ i =1 � Bone ¡ ¡ ¡ ¡out ¡ • Now find the rigid transformation � ( ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡, ¡ ¡ ¡ ¡ ¡ ¡ ¡) ¡ R t, ˆ T t, ˆ j j v i

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend