1 / 46

Embedded Deformation for Shape Manipulation

Embedded Deformation for Shape Manipulation. Robert W.Summer Johannes Schmid Mark Pauly SIGGRAPH 2007 Presenter : 김 종 현. Abstract. 우리는 일반적이고 , 자연스럽고 , 직관적인 조정을 거쳐 변형하는 알고리즘을 소개 할 것이다 . 하나의 변형은 각 Graph Node 와 관련이 있다 . 위치 제한은 embedded object 의 points 로 기술한다 .

Download Presentation

Embedded Deformation for Shape Manipulation

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. Embedded Deformation for Shape Manipulation Robert W.Summer Johannes Schmid Mark Pauly SIGGRAPH 2007 Presenter : 김 종 현

  2. Abstract • 우리는 일반적이고, 자연스럽고, 직관적인 조정을 거쳐 변형하는 알고리즘을 소개 할 것이다. • 하나의 변형은 각 Graph Node와 관련이 있다. • 위치 제한은 embedded object의 points로 기술한다. • 특징 보존은 하나의 true rotation (교환하는 값) 으로부터 각 변형의 편차를 측정하여 암호화 했다. • 우리는 editing meshes, polygon soups, mesh animation, animate particle system에 의한 증명 • Unstructured Set of Polygons

  3. Introduction • 우리는 마침내!!! 직관적인 자연스런 특징 변형을 어떠한 embedded in space에서 적용시킬 수 있다. • 우리는 이 모든 문제를 object embedded 의 직관적인 조종을 통해 공간상에서의 변형을 제공한다. • 우리 알고리즘의 목적은 아래의 원리에 의한 motivation 이다. • Generality • Efficiency • Detail preservation • Direct manipulation

  4. Generality Shape representation의 넓은 지역을 수용하기 위해서는 공간 변형을 기반으로 한 변형모델을 구체화 한다. 이것은 주변 공간의 global remapping을 제공을 한다. 우리 알고리즘에서의 공간 변형은 Affine transformation의 집중/안정(collection)에 의해서 정의 각 요소들은 가까운 공간에서의 변형이 된다.

  5. Efficiency • 능률은 엄청나게 복잡한 geometry model이 나온 이후로 항상 고려해야 할 사항이다!!! • 그 사항을 기술하는 것이 바로!!! Reduced deformable model 이다. 이것은 geometry의 복잡성으로부터 변형 • 알고리즘의 복잡성을 분리 했다. • Deformation graph는 매우 간단, 일반적이고 어떠한 geometry representation의 독립적 • 하나의 deformation graph는 간접적인 edges에 의해서 연결된 nodes로 구성 • 하나의 Affine transformation은 각 노드들과 관련 그래서 노드들은 결과적으로 변형을 위한 공간구성을 제공 • Graph edges은 겹쳐진 영향력의 연결된 노드들 (globally)

  6. (x2 , y2) (x1 , y1) y y (x2 , y2) (x2’, y2’) mapping 아핀 변환 (x3 , y3) (x4 , y4) (x1 , y1) x x (x1’, y1’) Affine transformation ??? • 컴퓨터 그래픽스에서 좌표를 변환할 때 이용 • 선분에서 선분으로 변환 • 이미지를 여러 형태와 위치로 변환 시키는 것이 용이 • 평행 이동, 원점에 대한 회전, 크기 변형, 비틀기 가능

  7. Translation & Scaling Translation : 물체를 정의하는 모든 점에 대해 3개의 변수들을 이동 Scaling : 공간상의 한 점(x, y , z)를 원점에 대하여 x축, y축, z축으로 sx, sy, sz만큼 신축되어 새로운 점을 생성

  8. Rotation Rotation : 회전 변환 : 회전축을 필요로 한다. • 점 p(x, y, z)를 z좌표축에 대하여 회전

  9. Rotation • 점 p(x, y, z)를 y좌표축에 대하여 회전 • 점 p(x, y, z)를 x좌표축에 대하여 회전

  10. Reflection Reflection : 3차원 공간에서의 객체 반사 : 주어진 평면에 대한 거울반사 된 객체가 얻어짐

  11. 3D Rotation • 원점 기준 회전(Origin rotation) versus 중심점 기준 회전 (pivot Point Rotation) • 중심점 기준 회전

  12. Detail preservation 실제로 이 요구방법은 부분 특징을 변형(deformation, stretch, shear)이 되는 동안 rotation 시키는 것이다. Affine transformation은 재 표현된 local deformation의 graph node와 관련이 있고, detail은 이것들의 변형이 교환되었을 때 가장 잘 보존이 된다.

  13. Direct manipulation 우리의 명확한 변형은 위치상에서의 제한된 최적화된 문제로서 점들을 기술했다!! 그것들이 하나의 embedded object이다. (사용자 직접 조종) • 이 알고리즘은 Affine transformation을 위한 최적의 값을 찾아냈다. • 자세한 보존은 정확한 true rotation으로부터 변형된 각 편차 값을 측정하여 각 function 안에서 암호화.

  14. Direct manipulation • shape의 representation과 그 geometry의 복잡성에 독립적이다. • feature rotation 이 후에는 최적화된 절차 안에서 암호화 된다. • 자연스런 편집은 위치상의 제한을 통하여 단독적으로 이루어지게 된다. • deformation graph가 간단, 탄력성 있는 구조. 그래서 좋지 않은 node의 분포가 흡족하게 수정 해 준다. • 새로운 변형 방법을 제공, 이것은 이전에 부족했던 직관력 있는 편집을 확장. • 우리의 방법은 복합적인 연결된 요소들과 전통적인 meshes, polygon soup, point-based model 등

  15. Background • FFD (Free Form Deformation) • Sederberg, Perry, Siggraph 1986 • 전역 변형과 같은 것을 표현하기 위한 방법은 에워싸인 공간에서의 변형을 야기하는 조정점(control points)의 격 • 자에서 free-form deformation을 이용하는 것 • 이것 혹은 유사한 표현으로, 어떤 target mesh도 모든 mesh vertex에 global deformation을 적용함으로써, • 변형 할 수 있음

  16. Background • Direct manipulation of free-from deformations • 고정된 격자 구조는 최적화 되지 않는데, 왜냐하면 알맞게 크기가 결정된 격자는 모든 target mesh의 점에 대한 • 임의적인 비선형적 변형을 표현 못하기 때문 고정 격자 한계! • Wires : A geometric deformation technique • Singh, Fiume, Siggraph 1998

  17. Background • Volumetric • 효율성과 안정성 증가를 위한 부분 공간 구조를 확립. (Zhou et al 2005; Shi et al 2006) • 비선형 방법들은 (Sheffer and Kraevoy 2004; Huang et al 2006; Botsch et al 1006) 높은 편질 질 • 하지만 높은 계산의 cost를 가진다. • 이들의 알고리즘들은 상세하게 shape representation 변형을 표현하지 못하기 때문에 embedded object NO!! • Huang and colleagues(2006)에 의한 방법은 mesh-based Laplacian에너지로 제한보존을 나타낸다. • 이것은 vertex들의 term과 그들의 한 링의 주변들로부터의 계산이 된다. (one ring) : 펭귄도 한 링 이다!!!

  18. Background • 우리의 방법은 하나의 특별한 representation을 노력하지 않는다!!!! • 그리고 어떠한 3d point로 된 모델로 적용 시킬 수 있다. 다른 Wires 또는 다른 공간 알고리즘들은 detail을 보존하는데 • 명백하지 않다. • deformation graph의 복잡성은 수정하는데 있어서 shape의 복잡성에 독립적. • 그래서 우리의 기술은 shpae과 서로 작요하여 조정이 가능하다. • graph는 volumetric의 정밀한 분석을 필요로 하지 않는다. • 그 구조가 volumetric, 이전의 방법에서 사용한 subspace구조보다 간단. • 우리의 알고리즘은 유연성을 제공, geometry의 복잡성에 대해 독립적, 심플하다.

  19. Deformation Graph • 새롭게 감소된 모델을 우리는 “deformation graph”라고 부르겠다!!! • shape representation의 다양한 종류의 복잡한 변형을 표현. • 이 모델의 공간 변형은 Affine transformation의 집합(모임)으로 정의 할 수 있다. • 3차원 공간에서 하나의 변형은 embedded graph의 각 노드와 관련이 있다. • 각 Affine transformation은 바로 가까이에 있는 공간상의 부분적인 변형을 포함 • 간단히 말해서 부분적으로 의존!!!!!!

  20. Deformation Graph Node(j)의 Affine transformation은 R(j)의 3 by3 matrix에 의해서 열거된다!!!! 3 by 1 translation vector t(j) N(j)는 Node(j)를 포함하는 간선 변형의 영향력은 노드 중심에 있어야 한다. 그러므로 R(j)에서의 어떠한 point p의 새로운 위치 p’는 다음이다. What????

  21. Deformation Graph Node(j)의 Affine transformation은 R(j)의 3 by3 matrix에 의해서 열거된다!!!! g(j) g(j) + t(j) 여기서 끝일까????

  22. Deformation Graph Rotation Matrix • 결과적으로 우리의 알고리즘은 캐릭터 애니메이션에서 효과적으로 사용되는 skeleton subspace 변형 방법과 유사!! • 그래프 node의 영향력은 smooth 하게 blend. • 각 shape vertex(1..n)의 변형된 위치는 deformation된 그래프 Affine transformation의 적용 후 위치의 무 • 게 값의 합니다.

  23. Deformation Graph g(1) g(1) g(2) g(2) g(0) g(0) Normal은 변형된 것과 비슷하다. 변형된 Node의 inverse, transpose에 의해 각 변형된 노말의 무게 값의 합에 의해서 변형된 것과 비슷하다.

  24. Deformation Graph 하나의 행렬은 다각형과 다른 기하 요소들을 일관되게 변환 하는데사용된다. 그러나 이러한 행렬들이 중요한 기하학 적 성질인 표면 법선 벡터를 반환하는데도 사용될 수 있는 것은 아니다. 법선 벡터에는 기하 구조 변환에 사용된 특정 행렬의 역 행렬의 전치 행렬이 사용되어야 한다. 그러므로 기하구조를 변환 하는데 사용된 행렬이 M이라고 하면, 법선 벡터를 변환 하는 행렬은 다음과 같아야 한다. 이에 대한 정의는 Turkowski의 저서를 참고 하면 됩니다!!!

  25. Deformation Graph 무게 값 w(j : 1..n) 은 공간적으로 변화 한다. 즉, 연속적으로 바뀐다는 것이다!!! 그러므로 무게 값은 vertex의 위치에 달려있다!!! 그래프 구조 때문에, 변형은 서로 바로 곁에 있는 것은 대부분 비슷할 것이다. 그러므로 일관성과 효율성이 있다. 우리의 deformation graph는 영향이 제한이 있다. 우리들은 deformation graph의 영향을 제한 : knode 에서 가장 가까운 부분의 vertex 그래프의 영향으로 제한 무게 값은 아래의 식에 따라서 미리 계산!!!!

  26. Deformation Graph d(max) = 4, 8 값이 클 수록 더 많이 reference 를 한다!!!! 나눠주는 부분은 바로 normalize! (c) : k = 4, (d) : k = 8 g(j)

  27. Constraint : rotation 3 by 3 matrix R을 회전으로 표현하기 위해서는, 그것은 6개의 conditions을 만족시켜야 한다. 3열들의 각각은 unit length 이여야 하고, 모든 열들은 다른 하나에 orthogonal해야 한다. 그 condition으로 부터 Squared derviation (편차제곱)는 Rot(R)로 부터 주어진다. R의 column vector3 x 1 은 c1, c2, c3이다. Rotation Matrix는 unit length 이고, 각 행과 열이 각각의 내적에 의해 orthogonal이다!!! 의 각 행과 각 행 혹은 열은 서로 직교함을 증명하여라. 궁금하신 분 ?? http://ace3.yc.ac.kr/jhs/mecha/re1/data/chap2_1.htm

  28. Constraint : rotation 그래서 E(rot) Term은 deformation graph의 transformation 회전 error 의 합이다!! • 만약 Rotation Error 가 없다면 이 Rot(R)의 값은 0이다. • Rotation Matrix의 내적은 : 0, unit length 이므로 1거기서 -1해주므로 0 그래서 최종으로 0!!! • 각 축에 대해서 얼마나 회전 error • 자신의 길이 error

  29. Constraint : regularization 만약 node(j)와 node(k)가 인접하다면, 그들은 embedded shape의 공통적인 부분집합에서 작용! Node(k)의 위치는 Node(j)의 Affine transformation으로부터 예보. j k 현재 위치에서 deformation 현재 Node의 위치 인접해 있는 Node의 위치

  30. Constraint : regularization k j j j j k j k k i k K뒤에 Node가 더 있다고 한다면?? 무게 값 aik는 node(j)와 node(k)가 겹쳐진 영향력에 비례하는 값!! 하지만 많은 shape representation 동 안에 나쁘게 정의가 된다. (point based model, particle system) 우리는 무조건 1.0!!!

  31. Constraint : regularization 이 규칙화는 무게를 지탱하는 equation과 유사하다. ( Allen et al. 2003 Summer and Popovic 2004; Pauly et al. 2005) 그러나 변형된 vertex의 위치들은 비교된다. 차라리 그들을 변형 하는게 더 낫다. 그리고 그 변형은 nodes 과 관계가 있고, 글로벌 좌표 시스템이 낫다. 결국 자기네들이 쓰는 방법이 좋다고 말을 하고 있다.!!!!

  32. Constraint : constraint • 사용자 컨트롤은 embedded shape의 직접 조종을 통해 최적화 되어 있다. • model 점들의 모임이 선택이 된다. 그리고 사용자의 조종에 의해 조종이 된다. • 고정이 된다. 그리고 model의 모임에 있는 점들은 선택이 되고, 공간 안에서 고정이 된다고 약속한다.

  33. Constraint : constraint • 그 위치의 제한은 선택이 되고, 움직이는 mode의 점들에 의해 열거. • 그들의 영향력은 Affine transformation이 변형된 점의 위치에 작용된 이후로 최적화 된다. 제한된 vertex 최종적으로 조종된 vertex 사용자가 정의한 mesh의 부분을 허용 그것이 곧 수정되어 지는 부분 고정된 제한은 overhead를 계산하지 않는다. (윗 그림에서 컬러로 표현) 그러므로 사용자는 고밀도의 변형그래프를 사용(fine scale). 수정 된 부분 그렇지 않은 부분 선택 가능

  34. Optimization : numerical • 우리는 Gauss-Newton 알고리즘을 iterative해서 풀었다. 결과적으로 nonlinear least-squares 문제를 풀었다. • Gauss-Newton 알고리즘을 linearizses했다. • 결국은 최소값을 찾기 위해서 least squares 를 사용한다. Fixed transformation Taylor 전개를 x에 대하여 풀면 다음과 같은 식이 나온다. 각 function에서 정의된 equation이다. (vector) 그래서

  35. Optimization : numerical Vector x는 Affine transformation의 entries 이다. J는 f(x)의 자코비안 매트릭스 이다. 각각의 Gauss-Newton iteration으로 x(k)를 이용하여 푼다. 알지못하는transformation의 현재 추정치는 • Convergence 할 때까지 반복 • 우리는 각 함수 에서의 변화를 감지해서 알 수 있었다. • 백터 는 update magnitude • 우리의 경험으로 6번의 반복 후에 최적화된 수렴이 나왔다!!

  36. Result • Detail preservation • 적은 nodes 개수 • detail 을 보존

  37. Result • Detail preservation

  38. Result • Intuitive editing • 직관적인 편집 • 85,792 vertices • 넓은 지역에 있어서 특징이 보존

  39. Result • Intuitive editing • 머리가 부분적으로 변화했을 때, 840개의 node가 더 detail 하게된다. • 몸에 선택된 fixed node를 제외한 얼굴 node만 선택했을 경우 138개의 node

  40. Result • Intuitive editing • 연결되지 않은 정보. 많은 hole and outlier • 전체180개의 분리된 요소들 안에서 79,226 vertices • deformation graph : 221 • 자동적으로 uniform sampling에 의해 자동적으로 만들어 진다.

  41. Result • Mesh animations • mesh 단순화를 수동적으로 이동 시킨다. • 그 이후로 그래프 node는 mesh vertices과 동시에 선택되어 진다. • 애니메이션 자취를 위한 node 위치의 추가적인 계산을 요구하지 않는다. • 사용자는 한 상태의 keyframes에 의해서 script를 수정할 수 있다. • output mesh animation은 사용자는 편집을 혼합시킨다.

  42. Result • Particle simulations • 시뮬레이션 파라미터를비틈으로써 small scale로 가능하다. • 더 격렬하게 수정이 될 것이다.

  43. Result Ep2는 s/w를 사용한다. Deformation graph 전달 • Efficiency Constraints된 통계적 수(vertices) 각 Gauss-Newton iteration 이 요구하는 시간 : 20ms ~ 30ms

  44. Conclusion • 우리는 embedded deformation을 위한 shape manipulation 알고리즘을 만들었고, 그 디테일을 만족!!! • 우리의 method는 주목할 만하다!!Why?? 간단, 효율, 다목적이기 때문에!!! 음…. • 앞에서 말한 여러가지 모델에 적용이 가능. • 한계점 • deformation graph의 구조가 editing하는 동안에 static 하다. • 결정적으로 달성할 수 있는 deformation 이 복잡하다. • find scale edit는 조잡한 graph에 의해서 표현될 수 없다. • 하지만!!! Graph를 쉽게 creation~!!

  45. Cholesky

  46. Newton Raphson

More Related