Tracking Surfaces with Evolving Topology Morten Bojsen-Hansen IST Austria Hao Li Columbia University Chris Wojtan IST Austria
Introduction Implicit surfaces are extremely popular for representing time-evolving surfaces Fluid simulation Morphing
Introduction No correspondence information Extracting correspondences between time- varying meshes ?
Input: – time-varying meshes frames Output – Correspondences between mesh frames
The correspondences are useful
Basic idea frame1 Mesh M Deform M to frame n; n=n+1; deformed mesh M’; Save M’; M=M’
Basic idea Let just consider two successive frames – non-rigid alignment – Topological change – Record correspondence information Frame t (M)Frame t+1 (N) alignmentTopological change
Non-Rigid Alignment Hao Li Columbia University Coarse Non-Linear Alignment Fine-Scale Linear Alignment Robust single-view geometry and motion reconstruction,2009,tog
Non-Rigid Alignment M->N 1 deformation graph G – constructed by uniformly sub-sampling M 2 Find affine an affine transformation (Ai; bi) for each graph node. 3 the motion of Xi is defined as a linear combination of the computed graph node transformations
Non-Rigid Alignment M->N (Coarse Non-Linear Alignment)
Non-Rigid Alignment M->N (Fine-Scale Linear Alignment)
Basic idea Let just consider two successive frames – non-rigid alignment – Topological change – Record correspondence information Frame t (M)Frame t+1 (N) alignmentTopological change
Topological Change Deforming meshes that split and merge,2009,TOG Chris Wojtan IST Austria
Topological Change For mesh M – volumetric grid Compute signed distance function – topologically complex cell the intersection of M with the cell is more complex than what can be represented by a marching cubes reconstruction inside the cellmarching cubes – triangles of M inside such cells will be replaced by marching cubes triangles
Topological Change Deforming meshes that split and merge,2009,TOG
Basic idea Let just consider two successive frames – non-rigid alignment – Topological change – Record correspondence information Frame t (M)Frame t+1 (N) alignmentTopological change
Record correspondence information A Few vertices which were created or destroyed due to topology event list – Adding new geometry: propagate information from the vertices on the boundary – Deleting vertices: march inward from the boundary of the deleted vertices and propagate information
Full Pipeline Mesh M = LoadTargetMesh(S1) ImproveMesh(M) for frame n = 2 -> N do { LoadTargetMesh(Sn) ImproveMesh(M) ImproveMesh(M) SaveEventListToDisk(n) SaveMeshToDisk(M) } non-rigid registration changing surface mesh topology CoarseNonRigidAlignment(M, Sn) FineLinearAlignment(M, Sn) Ф(M) := CalculateSignedDistance(M) ConstrainTopology(M; фM ) ф (Sn) := alculateSignedDistance(Sn) ConstrainTopology(M; ф (Sn))
Applications Color
Applications Morph
Applications Displacement Maps
Applications Wave simulation
Applications Performance Capture
Evolution
Time
contributions the first comprehensive framework for tracking a series of closed surfaces where topology can change greatly enhance existing datasets with valuable temporal correspondence information. a novel topology-aware wave simulation algorithm for enhancing the appearance of existing liquid simulations while significantly reducing the noise present in similar approaches. extracts surface information from input data alone, – no assumptions about how the data was generated – no template
unable to track surfaces invariant under our energy functions; a surface with no significant geometric features (like a rotating sphere) will not be tracked accurately limited to closed manifold surfaces limitations
Done Thanks!
triangle mesh improvement Edges become too long split them in half by adding a new vertex at the midpoint
triangle mesh improvement edges become too short; triangle interior angles become too small; dihedral angles become too small – edge collapse by replacing an edge with a single vertex Back
Topological Change Marching cube s/0405/shape/marching_cubes.html back