Multiresolution Representation and Visualization of Volume Data by
“Multiresolution Representation and Visualization of Volume Data” by Paolo Cignoni, Claudio Montani, Enirco Puppo, Roberto Scopigno Presented by: Allan Spale, CAVERN Viz Workshop, May 2004 Electronic Visualization Laboratory University of Illinois at Chicago
Overview • Represent and visualize scalar volume data at multiple resolutions – Built using tetrahedral meshes with scattered verticies – Built off-line using data simplification – Representation stored in a compact data structure • Creates an interactive visualization using isosurface and projection Electronic Visualization Laboratory University of Illinois at Chicago
Data Simplification • Represented by a tetrahedral mesh – For any pair of tetrahedra, they are either disjoint, or they share a common vertex, edge or triangular face – These meshes can be refined locally (i. e. adaptable) – Probably created using Delaunay tetrahedralization • Dataset approximated using a linear function – This interpolation works well with tetrahedral meshes • Different than graphics output simplification – Allows size of data to be reduced without depending on a rendering system Electronic Visualization Laboratory University of Illinois at Chicago
Terminology Guide • 2 -D visual example for terms applied to 3 -D – W : Domain of dataset (volume) – G : Reference 3 -D mesh consisting of cells (triangles) covering domain W with vertices in V – V : Original vertices in G, values from the dataset – S : Approximated tetrahedral mesh by approximating W – f : Function interpolating values at vertices V • Only focus on regular datasets – W is parallelepiped and G is a regular hexahedral mesh Electronic Visualization Laboratory University of Illinois at Chicago
Approximated Meshes • Reference model for volume dataset (V, G ) • Approximated model for volume dataset (V’, S ) – Linear function for each tetrahedron in S – Factors in the accuracy of approximation • d Î W: Domain warping with respect to W and W’ (approximation of W ) – Not applicable for convex datasets • e Î E: Approximation error of points in V “through a piecewise linear function defined on S. ” – For convex datasets, E =| v – lins(v) | where v is a value in the tetrahedron s and lins is linear function associated at s and computed at v (the above equation is not in paper) Electronic Visualization Laboratory University of Illinois at Chicago
Building the Approximated Model • Reference model (V, G ) and threshold pair m=(d, e) are used to build the approximated model (V’, S ) • Two methods for mesh simplification – Refinement heuristics • Mesh has very small subset of vertices from G • Insert new vertices into G until mesh satisfies threshold m – Decimation heuristics • Start with reference model G • Remove as many vertices as possible that satisfy warping and error threshold Electronic Visualization Laboratory University of Illinois at Chicago
Building the Approximated Model: Refinement Heuristics Test accuracy of S against m by calculating E(S ) 1. • 2. Select new vertex vmax from V using SELECT_POINT where E() is maximized Update S by inserting vmax using ADD_VERTEX 3. • • Ignore calculation of W(S ) /* ASSUME DATASETS ARE REGULAR AND CONVEX. . . convex operations marked by underlining */ procedure REFINEMENT(V, S, m) { while not (S satisfies m) { vmax = SELECT_POINT(V, S, m); S = ADD_VERTEX(S, vmax); Use algorithm for on-line Delaunay triangulation given in paper reference [20] Can use block-decomp for regular dataset } return(S) } Runtime: O(n 3), q (n 2), Space: high; needs bucketing struct and priority queue Electronic Visualization Laboratory University of Illinois at Chicago
Building the Approximated Model: Decimation Heuristics 1. 2. • Assign the reference mesh G to the approximated mesh S Test accuracy of S against m by calculating sv at G v /* ASSUME DATASETS ARE REGULAR AND CONVEX. . . convex operations marked by underlining */ procedure DECIMATION(V, G, m) { S = G; Calculate weighted average wa of tetrahedra incident at v • • • wa is the contribution of a tetrahedron r given by the solid angle of s at v For each vertex G v, search for a vertex w adjacent to v such that Dsv, w is minimized No warping calculations needed while (S satisfies m) { vmin = SELECT_MIN_VERTEX(V, S, m); S = REMOVE_VERTEX(S, vmin); } return(S) } Electronic Visualization Laboratory University of Illinois at Chicago
3. Building the Approximated Model: Decimation Heuristics Using a priority queue, select from S that produces the smallest error (ignore warping) in SELECT_MIN_VERTEX 4. /* ASSUME DATASETS ARE REGULAR AND CONVEX. . . convex operations marked by underlining */ procedure DECIMATION(V, G, m) { Call REMOVE_VERTEX and tetrahedrize the polyhedron after eliminating all tetrahedra incident on vmin • • Because removing vmin is an NP-complete op, choose vertex that minimizes Dsv, w , If possible, perform edge collapse merging edges adjacent to the deleted edge S = G; while (S satisfies m) { vmin = SELECT_MIN_VERTEX(V, S, m); S = REMOVE_VERTEX(S, vmin); } return(S) } Electronic Visualization Laboratory University of Illinois at Chicago
Multiresolution Model • Structure – Each tetrahedron marked with accuracy range • Birth: mb = ( db, eb); Death: mb = ( db, eb) • Querying the model – Storage (each type resides in a separate file) • Site: coordinates and field value • Tetrahedron: vertex indices, birth and death accuracies – For a query accuracy, retrieve the tetrahedra bounded inclusively by birth and death accuracies • Transmitting the model – Refinement: Vertices of Sfinal sorted by the refinement; use Delaunay tetrahedrization properties – Decimation: Coarsest mesh; send vertex information: coordinates, field value, mesh accuracy before deletion, and vertex collapsed upon Electronic Visualization Laboratory University of Illinois at Chicago
Results using TAn Application: Buckyball, 32 x 32 • Downsampled from 128 x 128 • Used block-decomposition refinement • Size of mesh decreases quickly with error increase Electronic Visualization Laboratory University of Illinois at Chicago
Results using TAn Application: Buckyball, 32 x 32 532 sec 1318 sec 5412 sec 44086 sec Electronic Visualization Laboratory University of Illinois at Chicago
Summary • Highlights – Offline multiresolution volume data visualization using an SGI application – User can run an app that renders model at different resolutions and saves models for later interactive use • Pros – Provides significant speedups for interactive rendering • Cons – High requirements for memory and processing • Increases space complexity by 2. 5 times at highest mesh accuracy – Offline and requires user to manually create different resolutions of models Electronic Visualization Laboratory University of Illinois at Chicago
- Slides: 13