Combining Edges and Points for Interactive High-Quality Rendering

Slides:



Advertisements
Similar presentations
COMPUTER GRAPHICS SOFTWARE.
Advertisements

Sven Woop Computer Graphics Lab Saarland University
Multidimensional Lightcuts Bruce Walter Adam Arbree Kavita Bala Donald P. Greenberg Program of Computer Graphics, Cornell University.
Graphics Pipeline.
Zhao Dong 1, Jan Kautz 2, Christian Theobalt 3 Hans-Peter Seidel 1 Interactive Global Illumination Using Implicit Visibility 1 MPI Informatik Germany 2.
Interactive Rendering using the Render Cache Bruce Walter, George Drettakis iMAGIS*-GRAVIR/IMAG-INRIA Steven Parker University of Utah *iMAGIS is a joint.
GI 2006, Québec, June 9th 2006 Implementing the Render Cache and the Edge-and-Point Image on Graphics Hardware Edgar Velázquez-Armendáriz Eugene Lee Bruce.
Reusing Pixels for Interactive Global Illumination Bruce Walter Cornell University.
Render Cache John Tran CS851 - Interactive Ray Tracing February 5, 2003.
Modeling the Interaction of Light Between Diffuse Surfaces Cindy M. Goral, Keenth E. Torrance, Donald P. Greenberg and Bennett Battaile Presented by: Chris.
1 Dr. Scott Schaefer Shadows. 2/40 Shadows Shadows provide clues about depth Make scenes appear more realistic.
Paper Presentation - An Efficient GPU-based Approach for Interactive Global Illumination- Rui Wang, Rui Wang, Kun Zhou, Minghao Pan, Hujun Bao Presenter.
Shadow Silhouette Maps Pradeep Sen, Mike Cammarano, Pat Hanrahan Stanford University.
(conventional Cartesian reference system)
1 Image-Based Visual Hulls Paper by Wojciech Matusik, Chris Buehler, Ramesh Raskar, Steven J. Gortler and Leonard McMillan [
Lightcuts: A Scalable Approach to Illumination Bruce Walter, Sebastian Fernandez, Adam Arbree, Mike Donikian, Kavita Bala, Donald Greenberg Program of.
Advanced Topics in Computer Vision Spring 2006 Video Segmentation Tal Kramer, Shai Bagon Video Segmentation April 30 th, 2006.
IN4151 Introduction 3D graphics 1 Introduction to 3D computer graphics part 2 Viewing pipeline Multi-processor implementation GPU architecture GPU algorithms.
Enhancing and Optimizing the Render Cache Bruce Walter Cornell Program of Computer Graphics George Drettakis REVES/INRIA Sophia-Antipolis Donald P. Greenberg.
Copyright  Philipp Slusallek IBR: View Interpolation Philipp Slusallek.
Hardware-Based Nonlinear Filtering and Segmentation using High-Level Shading Languages I. Viola, A. Kanitsar, M. E. Gröller Institute of Computer Graphics.
Matrix Row-Column Sampling for the Many-Light Problem Miloš Hašan (Cornell University) Fabio Pellacini (Dartmouth College) Kavita Bala (Cornell University)
Feature-Based Textures Ganesh Ramanarayanan Kavita Bala Bruce Walter Cornell University EGSR 2004.
CSCE 641: Computer Graphics Image-based Rendering Jinxiang Chai.
Real-Time Ray Tracing 3D Modeling of the Future Marissa Hollingsworth Spring 2009.
Direct Illumination with Lazy Visibility Evaluation David Hart Philip Dutré Donald P. Greenberg Cornell University SIGGRAPH 99.
Technology and Historical Overview. Introduction to 3d Computer Graphics  3D computer graphics is the science, study, and method of projecting a mathematical.
Computer graphics & visualization REYES Render Everything Your Eyes Ever Saw.
1 Single Scattering in Refractive Media with Triangle Mesh Boundaries Bruce Walter Shuang Zhao Nicolas Holzschuch Kavita Bala Cornell Univ. Grenoble Univ.
Efficient Volume Visualization of Large Medical Datasets Stefan Bruckner Institute of Computer Graphics and Algorithms Vienna University of Technology.
11/11/04© University of Wisconsin, CS559 Fall 2004 Last Time Shading Interpolation Texture mapping –Barycentric coordinates for triangles.
Lecture 3 : Direct Volume Rendering Bong-Soo Sohn School of Computer Science and Engineering Chung-Ang University Acknowledgement : Han-Wei Shen Lecture.
Interactive Rendering of Meso-structure Surface Details using Semi-transparent 3D Textures Vision, Modeling, Visualization Erlangen, Germany November 16-18,
Sebastian Enrique Columbia University Real-Time Rendering Using CUReT BRDF Materials with Zernike Polynomials CS Topics.
-Global Illumination Techniques
1 Shadows (2) ©Anthony Steed Overview n Shadows – Umbra Recap n Penumbra Analytical v. Sampling n Analytical Aspect graphs Discontinuity meshing.
- Laboratoire d'InfoRmatique en Image et Systèmes d'information
Subject Name: Computer Graphics Subject Code: Textbook: “Computer Graphics”, C Version By Hearn and Baker Credits: 6 1.
Visual Computing Computer Vision 2 INFO410 & INFO350 S2 2015
Radiance Cache Splatting: A GPU-Friendly Global Illumination Algorithm P. Gautron J. Křivánek K. Bouatouch S. Pattanaik.
Global Illumination (3) Path Tracing. Overview Light Transport Notation Path Tracing Photon Mapping.
David Luebke3/12/2016 Advanced Computer Graphics Lecture 3: More Ray Tracing David Luebke
Path/Ray Tracing Examples. Path/Ray Tracing Rendering algorithms that trace photon rays Trace from eye – Where does this photon come from? Trace from.
Solid Modeling Dr. Scott Schaefer.
Acquiring, Stitching and Blending Diffuse Appearance Attributes on 3D Models C. Rocchini, P. Cignoni, C. Montani, R. Scopigno Istituto Scienza e Tecnologia.
Illumination and Shading. Illumination (Lighting) Model the interaction of light with surface points to determine their final color and brightness OpenGL.
3D Rendering 2016, Fall.
Real-Time ray casting for virtual reality
COMPUTER GRAPHICS CHAPTER 38 CS 482 – Fall 2017 GRAPHICS HARDWARE
Real-Time Soft Shadows with Adaptive Light Source Sampling
CSI-447: Multimedia Systems
Chapter 10 Computer Graphics
Distributed Ray Tracing
3D Graphics Rendering PPT By Ricardo Veguilla.
Hybrid Ray Tracing of Massive Models
Jim X. Chen George Mason University
© University of Wisconsin, CS559 Fall 2004
Models and Architectures
(c) 2002 University of Wisconsin
Path Tracing (some material from University of Wisconsin)
Static Image Filtering on Commodity Graphics Processors
© 2003 University of Wisconsin
Computer Graphics One of the central components of three-dimensional graphics has been a basic system that renders objects represented by a set of polygons.
UMBC Graphics for Games
Distributed Ray Tracing
(c) 2002 University of Wisconsin
Anti-aliased and accelerated ray tracing
SUBJECT : COMPUTER GRAPHICS
Distributed Ray Tracing
Real-time Global Illumination with precomputed probe
Presentation transcript:

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

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

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

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

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

Related Work Sparse sampling and reconstruction Fast ray tracing [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]

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

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

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

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

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

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

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

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

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

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

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

Edge Finding: Types Silhouettes Shadows: hard and soft eye object point light source shadow event blocker receiver area light source umbral event penumbral event blocker receiver

Edge Finding Hierarchical trees: fast edge finding Interval-based

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

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

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

Video

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

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

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

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

Questions?

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