Sampling and Reconstruction with Adaptive Meshes Outline Problem Background -- Numerical Grid Generation Dynamic Meshes Adaptive Meshes Algorithm Results Advantages & Disadvantages Demetri Terzopoulos and M. Vasilescu Presented by Yuan Chen Problem Background Dynamic Mesh Dynamic Mesh Essential component of adaptive mesh Constructed from physically-based nodes and springs (Numerical Grid Generation) A tool for numerical solution of partial differential equations on arbitrarily shaped regions. The numerical solution is built on those grids. Make best use of those finite grids to represent the physical solution with sufficient accuracy. The grid is influenced by both the geometric configuration and by the physical solution being done thereon. Adaptively sample the data to lower resolution --- for compression or simplification Conventional approaches: uniformly sampling Finite elements: spring and its attached nodes (Node) Node: i, i = 1, ….N -- mass: mi -- position : Xi (t ) = [ xi (t ), yi (t ), zi(t )] -- velocity: vi = dXi / dt -- acceleration: ai = d 2 Xi / dt 2 n -- force f i (t ) n Be subject to a net nodal force: f i (t ) 1 Dynamic Mesh Spring: ij -- connect node j to node i -- natural length lij -- stiffness cij Force exerted on node i: i sij = Dynamic Mesh (Spring) For each node: mi j cijeij rij , rij (Motion equations) d 2 Xi dt 2 +γi dX i + g i = f i ; i = 1,..., N dt mi : mass X i : position i : damping coefficien t g i : the total force exerted from all connected springs f i : an external force applied at node i rij = X j − X i , eij = rij − lij Dynamic Mesh (Numerical time-integration) Dynamic Mesh Quadrilateral elements are assembled into bounded surfaces (actually rectanglar) At each time step t: 1. f i nt t t = f i − i vi − g i Bi fint d 2Xi m +γ t t 2 .a i = i dt 2 mi t t t+ t 3.v i = v i + ta i t+ t t t+ t 4. X i = X i + tv i dXi i dt + gi = f i ; i = 1,..., N Boundary condition: The boundary nodes can only move along the boundary in (x,y) visual domain Adaptive Meshes Adaptive Meshes (Adaptation functions) Dynamic meshes with an adaptation function Adaptation function, -- stiffness of springs are changed according to the adaptation function during the process. G is a normalized spatial filter; H is some function of partial derivative of the input data field. (Utilized in this paper) Nodal Observation, -- stiffness of spring increases in regions with rapid variation. 2 Adaptive Meshes (Feedback procedure) Algorithm Feedback procedure t c ij = ( 1 − Algorithm t t ij )c min + ij c max , 1 t t t (O i + O j ) ij = 2 More interesting area Higher larger larger mi d 2Xi dX + γ i i + gi = f i ; i = 1,..., N dt dt 2 Input: A 2D scalar-valued intensity or range image d(k,l) At each time step t : 1. Evaluate the adaptation function and nodal observation for each node i 2. Adjust the stiffness for each spring ij 3. Compute the total force from springs for each node i 4. Evaluate the current nodal forces, acceleration, the new velocity, and the new position. (Data forces) External data force at time t: f i t = [ 0,0, α ( d (Π X it ) − zit )] The only trigger to shift nodes in z direction. For surface reconstruction, it deflects the mesh to fit the input data. Results (Image Reconstruction) Results (Surface Reconstruction) Image from D. Terzopoulos & M. Vasilescu 3 Advantages Applicable to arbitrary dimensional data sets Nodes are optimally distributed to preserve the interesting properties of the input data. Interactive rates (no actual timing data) Image from D. Terzopoulos & M. Vasilescu Disadvantages Not suitable for arbitrary mesh in 3D -- Assume a planar surface as initial guess No theoretical justification 4