Tracking Surfaces with Evolving Topology

advertisement
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 timevarying meshes
• Input:
– time-varying meshes frames
• Output
– Correspondences between mesh frames
The correspondences are useful
Basic idea
Mesh M
frame1
Deform M to frame n;
n=n+1;
M=M’
deformed mesh M’;
Save M’;
Basic idea
• Let just consider two successive frames
– non-rigid alignment
– Topological change
– Record correspondence information
Frame t (M)
Frame t+1 (N)
alignment
Topological change
Non-Rigid Alignment
• Coarse Non-Linear Alignment
• Fine-Scale Linear Alignment
Hao Li
Columbia University
• 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)
alignment
Topological change
Topological Change
Chris Wojtan
IST Austria
• Deforming meshes that split and merge,2009,TOG
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 cell
– 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)
alignment
Topological 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)
CoarseNonRigidAlignment(M, Sn)
FineLinearAlignment(M, Sn)
non-rigid registration
ImproveMesh(M)
Ф(M) := CalculateSignedDistance(M)
ConstrainTopology(M; фM )
ф (Sn) := alculateSignedDistance(Sn)
ConstrainTopology(M; ф (Sn))
ImproveMesh(M)
SaveEventListToDisk(n)
SaveMeshToDisk(M)
}
changing surface mesh
topology
Applications
• Color
Applications
• Morph
Applications
• Displacement Maps
Applications
• Wave simulation
Applications
• Performance Capture
Evolution
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
limitations
• 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
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
http://www.cs.carleton.edu/cs_comp
s/0405/shape/marching_cubes.html
back
Download