Modelbased Manipulations of B Spline Surfaces to simulate Deformations of the Facial Tissue
←
→
Page content transcription
If your browser does not render page correctly, please read the page content below
Modelbased Manipulations of B−Spline Surfaces to simulate Deformations of the Facial Tissue D. Bartz Computer Graphics Group and Telecommunications Institute University of Erlangen, Germany Outline: • Overview • Medical Foundations • Modelbased Simulation • Triangular B−Splines • Results & Discussion • Conclusions Graphische Datenverarbeitung, Universität Erlangen−Nürnberg
Overview Modelbased Simulation: • mass spring system within five layers [Waters, Terzopoulos, 1990] • manipulations of positions of nodes cause distortion of equilibrium of springsystem • calculate new equilibrium • render top layer with spline method to improve resolution • Waters, Terzopoulos: Manipulation of springs with artifical muscle actors • in this work: direct manipulation of spring nodes within the layer, which represent bone layer Graphische Datenverarbeitung, Universität Erlangen−Nürnberg
Medical Foundations (1) Mechanical properties of facial tissue: • epidermis (A) • dermis (B) • subcutis (C) • fascia • bone Facial tissue has an inhomogeneous, and non−directional behavior. [From: PZ90] Graphische Datenverarbeitung, Universität Erlangen−Nürnberg
Medical Foundations (2) Human skull: We manipulate the position of the • Maxilla • Mandibular [From: Rohe90] Graphische Datenverarbeitung, Universität Erlangen−Nürnberg
Modelbased Simulation (1) • Each edge represents a spring in a mass spring system. epidermis • Spring stiffness dermis with respect subcutis to mechanical fascia behavior bone 3D laser scanner data: triangulation Graphische Datenverarbeitung, Universität Erlangen−Nürnberg
Modelbased Simulation (2) Spring system after median cut Graphische Datenverarbeitung, Universität Erlangen−Nürnberg
Modelbased Simulation (3) fi = mi . ai(t) + γi . vi(t) + gi , i ε {0..N} where gi = Σc ij (||rij|| − lij) . rij j ε Νi || rij || • equation describes balanced spring system • moving of spring nodes causes distortion • to compute new balance, use iteration method Graphische Datenverarbeitung, Universität Erlangen−Nürnberg
Modelbased Simulation (4) ai(t) = (fi − gi . vi(t) − gi) . Bi/mi • using a two step numerical integration method (Euler): K1 = H(yn , tn) = a(vn, xn) vn+1 = vn + ∆t . K1 xn+1 = xn + ∆t . vn+1 Graphische Datenverarbeitung, Universität Erlangen−Nürnberg
Modelbased Simulation (5) Algorithm: determine processing steps and the dedicated regions in bone layer foreach processing step do select all points in region do apply translation vector to points while points have not reached target positions od Graphische Datenverarbeitung, Universität Erlangen−Nürnberg
Triangular B−Splines (1) • surface: triangulation / unstructured grid Tensor product−B−Splines not appropriate Triangular B−Splines (DMS−Splines) (Dahmen, Micchelli, Seidel 1992) • properties: • piecewise polynomial • affine invariant • locality • convex hull • positivity • local control • optimal smoothness Graphische Datenverarbeitung, Universität Erlangen−Nürnberg
Triangular B−Splines (2) Mathematical foundations: • based on − Simplex Splines (Dahmen, Micchelli 1982) − B−Patches (Seidel 1991) • Computation of selected Simplex Splines, with respects to a triangulation and a set of knot clouds (parametrization) • half−open convex hull t2,2 t2,1 • barycentric coordinates t2,0 (positive oriented triangles) t0,1 t0,0 t1,0 t0,2 t1,2 t1,1 Graphische Datenverarbeitung, Universität Erlangen−Nürnberg
Triangular B−Splines (3) Four major problems to be solved: • Construction of a proper parametrization • Construction of a proper control net • Construction of evaluation points in |R2 • Evaluation of Triangular B−Spline base functions at the evaluation points Graphische Datenverarbeitung, Universität Erlangen−Nürnberg
Triangular B−Splines (4) Problem 1: parametrization • Take advantage of the "scan property" of the triangulation in |R3 Cutting edge Graphische Datenverarbeitung, Universität Erlangen−Nürnberg
Triangular B−Splines (5) Construction of the knot cloud foreach ti,0 e T do if ti,0 on_rim_of_T then estimate maximal_region m estimate neighborhood of ti,0 select knot within m with best quality concerning neighborhood else estimate neighborhood of ti,0 estimate knot with best quality With respects to: concerning neighborhood • affine independent fi • guaranteed partition od of one • no intersection of edges • no degenerated triangles Graphische Datenverarbeitung, Universität Erlangen−Nürnberg
Triangular B−Splines (6) Problem 2: control net ... is an approximation problem: • Simple approximation by vertex identification Pros: fast, simple, robust Cons: bad quality • Least−Square−Approximation (LES) Pros: better quality Cons: high space and time complexity (O(n3)) (really huge design matrix) Problem 3: Evaluation points • n(n+1)/2 evaluation points per patch • n=5 15 evaluation points: Graphische Datenverarbeitung, Universität Erlangen−Nürnberg
Triangular B−Splines (7) Problem 4: evaluation of base function Algorithm (Pfeifle, Seidel 1994) is • a modification of deBoor algorithm • limited to quadric Triangular B−Splines C1 smoothness Graphische Datenverarbeitung, Universität Erlangen−Nürnberg
Results & Discussion (1) data set: P/[s] n=3 n=5 n=7 #vertices/ #vertices #vertices #vertices #triangles E/[s] #triangles E/[s] #triangles E/[s] #triangles A: 2115 8277 18487 552/1012 31 22 4048 94 16192 344 36432 B: 4586 18263 41032 1157/2273 68 60 9092 392 36368 1966 81828 C: 5979 23861 107136 1502/2976 102 193 11904 780 47616 3423 53647 D: 34282 136567 10000001 8641/17001 584 2517 47616 25156 272016 1500001 623036 Computed on a Onyx RealityEngine2, only using one processor (R4400) 1: estimate Graphische Datenverarbeitung, Universität Erlangen−Nürnberg
Results & Discussion (2) Problems: • simplified tissue model: − homogeneous conditionalization within every layer − bone layer is approximated with a copy of a triangulation of the epidermis layer − no detail models (lips, eyes, ears,...) − no muscle model (but easy to implement) • results are strongly dependent on selection of vertices and translations planning and reproduction is difficult • method is not surgical oriented (at this stage) • numerical problem with "bad" triangulations of the face Graphische Datenverarbeitung, Universität Erlangen−Nürnberg
Conclusion & Future Work Conclusion: • tissue model out of spring systems • epidermis layer is rendered with Triangular B−Splines Future Work: • improvement of the tissue model • improvement of the construction of the control net • error correction of "bad" numerical data • high potential in parallelization Graphische Datenverarbeitung, Universität Erlangen−Nürnberg
References DMS92 W. Dahmen, C. A. Micchelli, H.−P. Seidel: Blossoming begets B−Splinebases built better by B−patches", In: Mathematics of Computations. I(1), p. 97−115, July 1992 PS94a R. Pfeifle, H.−P. Seidel: "Faster evaluation of quadric bivariate DMS−spline surfaces", Proc. of Graphics Interface’94, p. 182−189, 1994 PZ90 W. Pschyrembel, C.Zink: "Pschyrembel Klinisches Woerter− buch", Walter de Gruyter Verlag, Berlin, 1990 Rohe90 J.W. Rohen: "Funktionelle Anatomie des Menschen" Schattauer Verlag, Stuttgart, 1990 Seide91 H.−P. Seidel: "Polar−Forms and Triangular B−Spline Surfaces", In: Blossoming: The New Polar−Form Approach to Spline Curves and Surfaces, SIGGRAPH’91, Course Note #26, 1991 WT90 K. Waters, D. Terzopoulos: "A physical model of facial tissure and muscle articulation", In: Proc. of the First Conference on Visualization in Biomedical Computing, p. 77−82, May 1990 Graphische Datenverarbeitung, Universität Erlangen−Nürnberg
You can also read