1 / 30

Combining Edges and Points for Interactive High-Quality Rendering

Combining Edges and Points for Interactive High-Quality Rendering. Kavita Bala Bruce Walter Donald Greenberg Cornell University. Motivation. Goal: Interactive high-quality rendering Expensive shading: e.g., global illumination But, mostly smooth (coherent). naïve reconstruction. points.

andred
Download Presentation

Combining Edges and Points for Interactive High-Quality Rendering

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Combining Edges and Points for Interactive High-Quality Rendering Kavita Bala Bruce Walter Donald Greenberg Cornell University

  2. Motivation • Goal: Interactive high-quality rendering • Expensive shading: e.g., global illumination • But, mostly smooth (coherent) naïve reconstruction points

  3. edges points Edge-and-Point Rendering • Edges: important discontinuities • Silhouettes and shadows • Points: sparse shading samples edge-and-point reconstruction

  4. naive EPI Edge-and-Point Image • Alternative display representation • Edge-constrained interpolation preserves sharp features • Fast anti-aliasing

  5. EPI Properties • Works directly with edges and points • No meshing • Image-space display representation: limited sub-pixel precision • Approximate edges and points • Scales to complex objects

  6. Shading samples Edge finding Point cache Rasterization Reprojection Shader 3D edges 3D points 2D edges 2D points Edge-constrained interpolation Request samples Asynchronous System Exploits temporal coherence Decouples shading from display EPI

  7. Related Work • Sparse sampling and reconstruction • [Bala99,Guo98,Pighin97,Simmons00,Stamminger00,Tole02,Wald02,Walter99] • Fast ray tracing • [Parker99,Purcell02,Wald01] • Display representation • [Levoy86,Pfister00,Rusinkiewicz00,Zwicker01] • Edge finding • Discontinuity meshing [Heckbert92,Lischinski92] • Event finding [Duguet02,Durand99] • [Johnson01,Sander00,Sander01]

  8. Pixel types • Pixels can have arbitrary edge complexity • Classify pixels into 3 groups • Empty: no edges • Simple: can be approximated by 1 edge • Complex: everything else • Typical pixel classification statistics • empty (85-95%), simple (4-10%), complex (1-4%) Empty Simple Complex

  9. Edge-and-Point Image (EPI) • Goal: compact and fast • Store at most one edge and one point per pixel • Limited sub-pixel precision • Combine edges and points in image space • View-driven, lazy evaluation Point sample (shaded) Edge EPI pixel

  10. Reconstruction empty simple complex Edge Reconstruction • Rasterize edges onto image plane • Record their intersections with pixel boundaries • Classify pixels and reconstruct simple edges Discontinuity Edges Rasterization pixel boundary intersection

  11. Reachability • Reachable samples • Pixel’s 5x5 neighborhood • Connected without crossing any edges (or complex pixels) • Propagated outward from each pixel Reachable Unreachable Propagation

  12. Interpolation • Interpolate a color for each pixel • Uses 5x5 weighted kernel • Only interpolate from reachable samples Empty

  13. Interpolation • Interpolate a color for each pixel • Uses 5x5 weighted kernel • Only interpolate from reachable samples • Simple pixels: pick one side of edge Empty Simple

  14. Interpolation • Interpolate a color for each pixel • Uses 5x5 weighted kernel • Only interpolate from reachable samples • Simple pixels: pick one side of edge • Complex pixels: ignore reachability Empty Simple Complex

  15. Anti-Aliasing • Interpolation computes one color per pixel • Result has classic “staircase” aliasing • Use edge information at simple pixels to blend between neighboring pixels • Fast table-driven filter • Cheap and effective After interpolation After anti-aliasing

  16. Magnified view of a ray traced image with 1 sample per pixel Magnified view of our results Anti-aliasing Our result using <1 sample per pixel Edges

  17. Complex Pixel Filter • Can subdivide complex pixels in four • Many quadrants are empty or simple • Extra work only at complex pixels Complex pixel Before After

  18. Point Sampling • Point sample handling • Based on the Render Cache [Walter99,02] • Produced by asynchronous shaders • Stored in a fixed size point cache • Project points onto current image plane • Request new samples based on feedback

  19. point light source area light source umbralevent shadowevent blocker blocker penumbralevent receiver receiver Edge Finding: Types • Silhouettes eye object • Shadows: hard and soft

  20. Edge Finding • Hierarchical trees: fast edge finding • Interval-based

  21. Soft Shadow Edges Black: silhouettes, Red: umbral edges, Blue: penumbral edges

  22. Edge finding Point cache Reprojection 3D edges 3D points Edge rasterization & reconstruction 2D edges 2D points Reachability & interpolation Complex pixel filter Anti-aliasing EPI image Finished frame Putting it Together

  23. Without Edges With Edges Results: Quality • Global illumination • 3 lights • 150k polygons

  24. Video

  25. Results Sparseness: 1-2% Framerate: 8-14 fps

  26. Summary • EPI: New display representation • Combines edges and points • Image-space: no meshing • Compact EPI optimizes for common case • Scales to complex scenes • Fast anti-aliasing • Fast, hierarchical edge finding for silhouettes and shadows

  27. Conclusion • Combines best of edges and points • Decouple display from shading • Arbitrary slow shaders • Exploit coherence • Spatial: interpolation • Temporal: reprojection • Software implementation  GPU

  28. Acknowledgments • Sebastian Fernandez • Everybody at the Program of Computer Graphics • Stanford’s Digital Michelangelo Project • Georgia Tech’s Large Geometric Model Archive • NSF • Intel

  29. Questions?

  30. Edge-and-Point Image • Alternative display representation • Edge-constrained interpolation preserves sharp features • Fast anti-aliasing

More Related