390 likes | 619 Views
Visibility-Guided Simplification. Eugene Zhang and Greg Turk GVU Center, College of Computing Georgia Institute of Technology. Courtesy of Nooruddin and Turk. Introduction. Problem: Use visibility information to guide simplification. . Why useful :. Introduction. Solution:
E N D
Visibility-Guided Simplification Eugene Zhang and Greg Turk GVU Center, College of Computing Georgia Institute of Technology
Courtesy of Nooruddin and Turk Introduction • Problem: • Use visibility information to guide simplification. • Why useful:
Introduction • Solution: • Define a surface visibility measure. • Classify surface regions (mesh triangles) based on this measure. • Allow higher geometric errors in low visibility regions during simplification.
Outline • Previous Work in Visibility and Simplification. • Visibility Measure Definition • Visibility Measure Calculation • Visibility-Guided Simplification • Conclusion and Future Work
Previous Work • Visibility calculation. • Visible surface determination. • [Sutherland et al 74], [Catmull ‘74], [Myers ‘75], [Fuchs et al ‘80] • [Appel ‘68], [Weiler & Atherton ‘77], [Whitted ‘80] • Aspect Graph. • [Koenderink & Van Doorn ‘76], [Gigus et al ‘90] • Interior/Exterior classification. • [Nooruddin & Turk ‘00] • Texture Mapping with the help of visibility • [Sheffer & Hart ’02] (This conference)
Previous Work • Mesh simplification based on edge collapse. • Progressive Meshes.[Hoppe ‘96] • Geometry-Based Simplification.([Ronfard & Rossignac ‘96], [Garland & Heckbert ‘97]). • Image-Driven Simplification. [Lindstrom & Turk ‘00]
Outline • Previous Work in Visibility and Simplification. • Visibility Measure Definition • Visibility Measure Calculation • Visibility-Guided Simplification • Conclusion and Future Work
c3 F(p, c3)=1 p c1 F(p, c1)=1 F(p, c2)=0 c2 Visibility Function Camera Space S Object M
Visibility Function viewing angle normalization factor Visibility Measure • V(p) measures the hard-to-see property of p. c: (camera position) R(c): ray N(p): surface normal p: (point on model)
Visibility Measure Visibility Measure: 0 ---1/3---2/3---1
Visibility Measure • The overall visibility of model M,
Outline • Previous Work in Visibility and Simplification. • Visibility Measure Definition • Visibility Measure Calculation • Visibility-Guided Simplification • Conclusion and Future Work
Visibility Measure Calculation • Difficulty: exact visibility calculation is computationally expensive. • Our Solution: • Find a dense set of viewpoints in S (subdivided octahedron). • F(t,v)=1 iff part of triangle t is visible from viewpoint v. • Use hardware rendering to quickly compute F(t, v) for all t and v.
Visibility Measure Calculation • Algorithm for computing F(t, v) using hardware rendering • From each viewpoint v in S • Mark F(t,v)=0 for each triangle in M • render M using color encoding of triangle ID’s. • read the color buffer. • set F(t,v)=1 if and only if color code of t is present in the color buffer from v.
Visibility Measure Calculation • Potential pitfalls: • When triangle is too large, F(t, v) is far from being constant. • When visible triangle is too small or sliver-shaped, the scan conversion algorithm will likely miss it. (fall into “cracks”). • Solutions: • Subdivision based on edge length and a given resolution. • Use depth information to help identify visible triangles that fall into “cracks”.
Visibility Measure Calculation (Results) Visibility Measure: 0 ---1/3---2/3---1
Visibility Measure Calculation • Camera space issues: • How many cameras are sufficient? • Does it matter where we place them?
Visibility Measure Calculation 6 18 258 4096 Camera Positions Surface Visibility
Outline • Previous Work in Visibility and Simplification. • Visibility Measure Definition • Visibility Measure Calculation • Visibility-Guided Simplification • Conclusion and Future Work
Mesh Simplification Edge collapse simplification. • Key: what error measure to use. • Geometry-based: e.g., Quadric ([Garland & Heckbert ‘97]). • Perception-driven: e.g., Image-driven ([Lindstrom & Turk ‘00]).
Visibility-Guided Simplification • Quadric Measure Eq(e) • T = 1-ring neighborhood of edge e. • triangle t in T is on plane • Then • Higher Eq(e) means higher Curvature. v v e
Visibility-Guided Simplification • Evaluating of Quadric Measure is fast • or • where
Visibility-Guided Simplification • Our algorithm: • Edge collapse scheme. • Error metric = Quadric measure + Visibility measure. • New vertex location determined by Quadric measure. • Advantages: • Allow higher geometric errors for difficult-to-see regions. • Have comparable speed as the quadric measure.
Visibility-Guided Simplification • Visibility-Guided Measure: • or • where
Visibility-Guided Simplification Quadricbased 15,000 Original 1,169,608 Visibility Guided 15,000
Visibility-Guided Simplification Quadricbased 15,000 Original 1,688,933 Visibility Guided 15,000
Visibility-Guided Simplification Quadricbased Original Visibility Guided Quadricbased Original Visibility Guided
Visibility-Guided Simplification Quadricbased 10,000 Original 140,113 Visibility Guided 10,000
Visibility-Guided Simplification • Visual fidelity of the simplified models are measured in terms of image-based error between rendered images from 20 viewpoints ([Lindstrom & Turk ‘00]). • Geometric Errors are measured using Metro ([Cignoni et al ‘98]).
Visibility-Guided Simplification Quadricbased 20,000 Original 1,087,416 Visibility Guided 20,000
Visibility-Guided Simplification Quadricbased Visibility Guided Average image difference: red=higher error
Conclusion • Defined a surface visibility measure. • Proposed an algorithm to efficiently and accurately calculate this measure. • Combined this measure with the Quadric measure for mesh simplification • better visual fidelity • similar speed
Future Work • More accurate algorithm for visibility function calculation. • e.g., change output type from binary to continuous. • Out-of-core calculation for larger models. • Visibility-guided mesh parameterization. • Visibility-guided shape matching.
Thanks to Geometric Models Will Schroeder Ken Martin Bill Lorensen Bruce Teeter Terry Yoo Mark Levoy and the Stanford Graphics Group Mesh Simplification Code Michael Garland Excellent Suggestions Anonymous reviewers Sponsor NSF (ACI 0083836)