Hierarchical Multi-Resolution Finite Element Model for Soft Body Simulation Matthieu Nesme, François Faure, Yohan Payan 2 nd Workshop on Computer Assisted Diagnosis and Surgery March 2006, Santiago de Chile TIMC & GRAVIR laboratories
Hierarchical Multi-Resolution Finite Element Model for Soft Body Simulation 2 Motivation To model soft bodies for surgical training or per-operative simulators (EPIDAURE-INRIA)
Hierarchical Multi-Resolution Finite Element Model for Soft Body Simulation 3 Goal Deformable model allowing: – Interactivity speed robustness – Accuracy accurate deformations and forces Finite Element dynamics = fast deformation propagation – Patient specific mesh
Hierarchical Multi-Resolution Finite Element Model for Soft Body Simulation 4 Goal Deformable model allowing: – Interactivity speed robustness – Accuracy accurate deformations and forces Finite Element dynamics = fast deformation propagation – Patient specific mesh
Hierarchical Multi-Resolution Finite Element Model for Soft Body Simulation 5 Outline Previous work – Interactive deformable models – Patient specific models Contribution – Deformable Octree Mesh – Hierarchical Finite Element Results
Hierarchical Multi-Resolution Finite Element Model for Soft Body Simulation 6 Previous Work - Interactive deformable models Speed / Fast computation – Multiresolution [Debunne01,Wu01,Dequidt05] – FE Linear computation of large displacements [Etzmuß03,Müller04,Nesme05] [Debunne01]
Hierarchical Multi-Resolution Finite Element Model for Soft Body Simulation 7 Background Dynamical Propagation / Static convergence
Hierarchical Multi-Resolution Finite Element Model for Soft Body Simulation 8 Background How many time steps or iterations are necessary to propagate deformation to all nodes ? ? Dynamical Propagation / Static convergence
Hierarchical Multi-Resolution Finite Element Model for Soft Body Simulation 9 Background How many time steps or iterations are necessary to propagate deformation to all nodes ? ? Explicit solvers#steps=O(#nodes) Iterative implicit solvers #iterations=O(#nodes) Iterative static solvers Dynamical Propagation / Static convergence
Hierarchical Multi-Resolution Finite Element Model for Soft Body Simulation 10 Previous Work - Interactive deformable models Fast dynamical propagation / static convergence – Multigrid solver [Terzopolous88,Wu04] – Hierarchical FE [Grinspun02,Capell02] Better compromise speed / propagation
Hierarchical Multi-Resolution Finite Element Model for Soft Body Simulation 11 Previous Work - Patient specific models 1. Scan data voxels 2. Segmentation tagged voxels 3. Surface meshing triangles 4. Volume meshing tetrahedra, hexahedra 5. FEM modeling simulation
Hierarchical Multi-Resolution Finite Element Model for Soft Body Simulation 12 Previous Work - Patient specific models 1. Scan data voxels 2. Segmentation tagged voxels 3. Surface meshing triangles 4. Volume meshing tetrahedra, hexahedra 5. FEM modeling simulation 4 generic volume mesh + matching [Couteau00,Clatz05] – Slow, specific cases, degenerate mesh
Hierarchical Multi-Resolution Finite Element Model for Soft Body Simulation 13 Previous Work - Patient specific models 1. Scan data voxels 2. Segmentation tagged voxels 3. Surface meshing triangles 4. Volume meshing tetrahedra, hexahedra 5. FEM modeling simulation 4 & 5 Meshless method [Desbrun95,Müller04] – Not interactive
Hierarchical Multi-Resolution Finite Element Model for Soft Body Simulation 14 Previous Work - Patient specific models 1. Scan data voxels 2. Segmentation tagged voxels 3. Surface meshing triangles 4. Volume meshing tetrahedra, hexahedra 5. FEM modeling simulation
Hierarchical Multi-Resolution Finite Element Model for Soft Body Simulation 15 Contribution Deformable Octree Mesh 3 & 4 & 5 – Does not need for volume or surface mesh directly segmented scan – Multiresolution Hierarchical FE – Fast propagation
Hierarchical Multi-Resolution Finite Element Model for Soft Body Simulation 16 Octree Mesh
Hierarchical Multi-Resolution Finite Element Model for Soft Body Simulation 17 Octree Mesh Decompose the bounding box of the object into an octree FEM modeling on cells
Hierarchical Multi-Resolution Finite Element Model for Soft Body Simulation 18 Octree Mesh Decompose the bounding box of the object into an octree FEM modeling on cells Interpolate the displacement within cells
Hierarchical Multi-Resolution Finite Element Model for Soft Body Simulation 19 Octree Mesh Decompose the bounding box of the object into an octree FEM modeling on cells Interpolate the displacement within cells Add degrees of freedom where needed
Hierarchical Multi-Resolution Finite Element Model for Soft Body Simulation 20 Octree Mesh Precompute a maximal resolution
Hierarchical Multi-Resolution Finite Element Model for Soft Body Simulation 21 Octree Mesh Precompute a maximal resolution Multiresolution with virtual tree structures – Mechanics – Rendering – (collision mangement, …)
Hierarchical Multi-Resolution Finite Element Model for Soft Body Simulation 22 Octree Mesh Compute cell properties using filling ratio and material properties
Hierarchical Multi-Resolution Finite Element Model for Soft Body Simulation 23 Octree Mesh Compute cell properties using filling ratio and material properties
Hierarchical Multi-Resolution Finite Element Model for Soft Body Simulation 24 Octree Mesh Compute cell properties using filling ratio and material properties
Hierarchical Multi-Resolution Finite Element Model for Soft Body Simulation 25 Mechanics
Hierarchical Multi-Resolution Finite Element Model for Soft Body Simulation 26 Mechanics Classical Finite Element formulation Elements Interpolations functions NODAL
Hierarchical Multi-Resolution Finite Element Model for Soft Body Simulation 27 Hierarchical FE Bases Define functions using a hierarchical basis Goal: to give a better propagation
Hierarchical Multi-Resolution Finite Element Model for Soft Body Simulation 28 Hierarchical FE Bases Define functions using a hierarchical basis Goal: to give a better propagation
Hierarchical Multi-Resolution Finite Element Model for Soft Body Simulation 29 Hierarchical FE Bases Define functions using a hierarchical basis Goal: to give a better propagation
Hierarchical Multi-Resolution Finite Element Model for Soft Body Simulation 30 Hierarchical FE Bases Hierarchical positions hierarchical nodal P0P0 P1P1 P2P2 P3P3 ΔP 4 ΔP 5 ΔP 6 ΔP 7 ΔP 8
Hierarchical Multi-Resolution Finite Element Model for Soft Body Simulation 31 Hierarchical FE Bases Hierarchical positions hierarchicalnodal
Hierarchical Multi-Resolution Finite Element Model for Soft Body Simulation 32 Hierarchical FE Bases Functions influencing an element hierarchicalnodal
Hierarchical Multi-Resolution Finite Element Model for Soft Body Simulation 33 Hierarchical FE Bases Propagation in nodal Explicit Implicit / static step 0 iteration 0 initial deformation
Hierarchical Multi-Resolution Finite Element Model for Soft Body Simulation 34 Hierarchical FE Bases Propagation in nodal step 0step 1 iteration 0 iteration 1 Explicit Implicit / static initial deformation propagated deformation
Hierarchical Multi-Resolution Finite Element Model for Soft Body Simulation 35 Hierarchical FE Bases Propagation in nodal step 0step 1 step 2 iteration 0 iteration 1 iteration 2 Explicit Implicit / static initial deformation propagated deformation
Hierarchical Multi-Resolution Finite Element Model for Soft Body Simulation 36 Hierarchical FE Bases Propagation in nodal step 0step 1 step 2step 3 iteration 0 iteration 1 iteration 3iteration 2 Explicit Implicit / static initial deformation propagated deformation
Hierarchical Multi-Resolution Finite Element Model for Soft Body Simulation 37 Hierarchical FE Bases Propagation with hierarchical functions Explicit Implicit / static step 0 iteration 0 initial deformation
Hierarchical Multi-Resolution Finite Element Model for Soft Body Simulation 38 Hierarchical FE Bases Propagation with hierarchical functions step 0step 1 iteration 0 iteration 1 direct interaction Explicit Implicit / static initial deformation propagated deformation
Hierarchical Multi-Resolution Finite Element Model for Soft Body Simulation 39 Hierarchical FE Bases Propagation with hierarchical functions step 0step 1 iteration 0 iteration 1 direct interactioninterpolation + Explicit Implicit / static initial deformation propagated deformation interpolated deformation
Hierarchical Multi-Resolution Finite Element Model for Soft Body Simulation 40 An implementation Linear strain and stress tensors Linear interpolation inside cubic elements Static solver using Conjugate Gradient in hierarchical coordinates
Hierarchical Multi-Resolution Finite Element Model for Soft Body Simulation 41 Results - Propagation Evolution of the solution during a static solving – Pull blue node – Measure displacement of green node force Displacement
Hierarchical Multi-Resolution Finite Element Model for Soft Body Simulation 42 Results - Propagation Evolution of the solution during a static solving – Pull blue node – Measure displacement of green node force Displacement
Hierarchical Multi-Resolution Finite Element Model for Soft Body Simulation 43 Results - Propagation Evolution of the solution during a static solving – Pull blue node – Measure displacement of green node force Displacement real-time
Hierarchical Multi-Resolution Finite Element Model for Soft Body Simulation 44 Results - Propagation Static solver with changing boundary conditions 10 CG iterations nodal / hierarchical
Hierarchical Multi-Resolution Finite Element Model for Soft Body Simulation 45 Results – Global convergence Number of CG iterations for global convergence Example 1 Example 2 force gravity Number of elements composing the beam Example 1 nodal hierarchical Example 2 nodal hierarchical (in number of CG iterations)
Hierarchical Multi-Resolution Finite Element Model for Soft Body Simulation 46 Conclusion & Perspective Deformable octree mesh – does not need for surfacic or volumic mesh Hierarchical FE – fast propagation Hierarchical corotational for large displacements Automatic adaptative criteria Hierarchical boundary conditions
Hierarchical Multi-Resolution Finite Element Model for Soft Body Simulation 47 Hierarchical Multi-Resolution Finite Element Model for Soft Body Simulation Thank you Matthieu Nesme, François Faure, Yohan Payan
Hierarchical Multi-Resolution Finite Element Model for Soft Body Simulation 48 An implementation Difference with classical nodal FE: – Computations of K take into account all ancestors cells Functions at the same level of the considered element Functions at an upper level from ancestors
Hierarchical Multi-Resolution Finite Element Model for Soft Body Simulation 49 An implementation Integration Range definition of the functions ancestor
Hierarchical Multi-Resolution Finite Element Model for Soft Body Simulation 50 Previous Work - Interactive deformable models Force computation (deformation, stress) Dynamics Time integration Multiresolution models
Hierarchical Multi-Resolution Finite Element Model for Soft Body Simulation 51 Previous Work - Dynamics Explicit methods – Fast computation of one step – Slow propagation Implicit methods [Baraff98] – Stable – Solve a system – Longer step – Propagation / computational time
Hierarchical Multi-Resolution Finite Element Model for Soft Body Simulation 52 Previous Work - Force computation Precomputation [Cotin96] – Precomputed inverse matrix – Quasi-static solver – Small displacements Large displacements – Non-linear strain tensor [Debunne01,Picinbonno03] – Corotational [Etzmuß03,Müller04] Material laws [Terzopoulos88,Hauth03]
Hierarchical Multi-Resolution Finite Element Model for Soft Body Simulation 53 Previous Work - Adaptativity Multiresolution – Allocate ressources where they are most profitable Several meshes at several levels of detail [Debunne01] – Difficult meshes building – No mathematical proofs Precomputed progressive meshes [Wu01] – Difficult to adapt meshes during the animation Octree Mesh [Dequidt05] – Problems at join between several levels of detail Hierarchical [Grinspun02,Wu04] Better compromise speed / propagation
Hierarchical Multi-Resolution Finite Element Model for Soft Body Simulation 54 Hierarchical FE Bases Hierarchical positions P 0 P 1 P 2 P 3 ΔP 4 ΔP 5 ΔP 6 ΔP 7 ΔP 8 P 0 P 1 P 2 P 3 (P 0 +P 1 )/2+ΔP 4 (P 1 +P 2 )/2+ΔP 5 (P 2 +P 3 )/2+ΔP 6 (P 3 +P 0 )/2+ΔP 7 (P 0 +P 1 +P 2 +P 3 )/4+ΔP 8 hierarchical nodal P0P0 P1P1 P2P2 P3P3 ΔP 4 ΔP 5 ΔP 6 ΔP 7 ΔP 8
Hierarchical Multi-Resolution Finite Element Model for Soft Body Simulation 55 Hierarchical FE Bases Define functions using a hierarchical basis Goal: to give a better propagation Hierarchical functionsNodal functions
Hierarchical Multi-Resolution Finite Element Model for Soft Body Simulation 56 Octree Mesh Compute cell properties using filling ratio and material properties Image par image, virer surfacique, commencer par finnest->coarsest + multires et fleche
Hierarchical Multi-Resolution Finite Element Model for Soft Body Simulation 57 Results - Propagation Evolution of the solution during a static solving – Pull blue node – Measure displacement of green node force Displacement real-time