1 / 17

by Travis Grant grant_travis@emc

CS 563 Advanced Topics in Computer Graphics Film and Image Pipeline (Ch. 8) Physically Based Rendering. by Travis Grant grant_travis@emc.com. Film and Image Pipeline. Basic Challenge:

arella
Download Presentation

by Travis Grant grant_travis@emc

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. CS 563 Advanced Topics in Computer GraphicsFilm and Image Pipeline (Ch. 8)Physically Based Rendering by Travis Grant grant_travis@emc.com

  2. Film and Image Pipeline • Basic Challenge: PBRT’s output (EXR) avoids some loss by leveraging a format that utilizes floating-point color values. PBRT.EXE however does not “compensate” for reality of display device constraints. It does provide a means for transformations that can be applied during image quantization in order to retain as closely as possible the ideal image for “realistic” display. Ultimately a discrete pixel values have to be assigned. • Key Pipeline Components: • Film Interface • Image Film • Image Output • Image Pipeline

  3. Film and Image Pipeline Image Film Pixel xWidth sample[1] Sample yWidth sample[2] sample[n] ApplyImagingPipeline() tools/exrtotiff.cpp ray[1] Film::WriteImage 1) Tone Reproduction ray[2] 2) Gamma Correction 3) Scaling 4) Dithering ray[n] filename.exr filename.tiff not used by pbrt.exe grant_travis@emc.com :: Slide3

  4. Film and Image Pipeline • Film Interface: Very basic functions with limited functionality Film(int xres, int yres) Film::AddSample() updates image during rendering Film::WriteImage() called by Scene::Render() as rendering loop exits Film::GetSampleExtent()

  5. Film and Image Pipeline • Image Film: Only “built-in” Film Implementation • filter function • crop window • alpha values • Image Output

  6. Film and Image Pipeline • Image Pipeline: • Tone Reproduction remap wide range of pixel radiance values to range the display is capable of • Gamma Correction account for non-linear relationships between color values sent to the the display and their brightness on the display • Scaling cover range of input values expected by the display • Dithering small amount of random noise to pixel values to help break up transitions

  7. Film and Image Pipeline • Luminance & Photometry • HVS may observe varying degrees of brightness given the same SPD for various frequencies (i.e. Green vs. Blue) • luminance is closely related to radiance. • Given radiance, luminance can be computed with a simple conversion formula

  8. Film and Image Pipeline • Bloom • Compensates for inability of Display Devices to Display Accurate luminance (see prev. slide) • effect causes a blurred glow in the area around the bright object • “Tricks” HVS into perceiving that an image on a display is brighter than it really is • Although actual anatomical HVS reasons are not fully understood “simulating” the effect creates a perceived better “realism” grant_travis@emc.com :: Slide8

  9. Film and Image Pipeline p. 383 Fig. 8.3 (b) W/O Bloom Effect p. 383 Fig. 8.3 (a) Bloom effect applied grant_travis@emc.com :: Slide9

  10. Film and Image Pipeline • Bloom Algorithm 2 params (bloomRadius & bloomWeight) Possibly Apply (!bloomRadius<=0) compute pixels effected initialize bloom filter table - avoids feedback - precompute for future reference compute new pixel values mix into original image bloomRadius of .1 or .2 are good practical starting values grant_travis@emc.com :: Slide10

  11. Film and Image Pipeline • Radiance Values (Understanding the Challenge) • PBRT accurately encodes The basilica scenes with multiple orders of magnitude of radiance values • HOWEVER, the standard approach of choosing a fixed radiance value to “map” to the brightest displayable value performs poorly grant_travis@emc.com :: Slide11

  12. Q: What’s wrong? A: HVS can see detail through the entire scene. Max Radiant Values x Analysis: In All 3 images the light from the windows is blown out In the Top and Middle Images some areas are too dark to make out much details In the bottom Image large regions map to the max value (no details remain) 10x More Sophisticated tone mapping algorithms are needed. 100x p. 383 Fig. 8.4 St. Peter’s Basilica in Rome

  13. Film and Image Pipeline p. 392 Fig. 8.5 St. Peter’s Basilica in Rome grant_travis@emc.com :: Slide13

  14. Film and Image Pipeline p. 393 Fig. 8.6 St. Peter’s Basilica in Rome grant_travis@emc.com :: Slide14

  15. High-Contrast tone reproduction computes a spatially varying adaptation luminance while paying attention to boundaries between areas with substantially different luminances. Top: An Excellent Result Middle: A gray scale visualization Bottom: local contrast computed at each pixel with a blur radius of 1.5 and 3 pixels p. 395 Fig. 8.7 St. Peter’s Basilica in Rome

  16. Film and Image Pipeline p. 401 Fig. 8.8 St. Peter’s Basilica in Rome grant_travis@emc.com :: Slide16

  17. Film and Image Pipeline • References • All Images Obtained from “Physically Based Rendering” CD-ROM Gregg Humphreys & Matt Pharr grant_travis@emc.com :: Slide17

More Related