CPSC 6040 Computer Graphics Images

Slides:



Advertisements
Similar presentations
Distinctive Image Features from Scale-Invariant Keypoints
Advertisements

Course Evaluations 4 Random Individuals will win an ATI Radeon tm HD2900XT.
CSCE 643 Computer Vision: Template Matching, Image Pyramids and Denoising Jinxiang Chai.
3-D Computer Vision CSc83020 / Ioannis Stamos  Revisit filtering (Gaussian and Median)  Introduction to edge detection 3-D Computater Vision CSc
Spatial Filtering (Chapter 3)
Image Processing Lecture 4
CS & CS Multimedia Processing Lecture 2. Intensity Transformation and Spatial Filtering Spring 2009.
Accelerating Spatially Varying Gaussian Filters Jongmin Baek and David E. Jacobs Stanford University.
CS 4487/9587 Algorithms for Image Analysis
Digital Image Processing
Digital Image Processing In The Name Of God Digital Image Processing Lecture3: Image enhancement M. Ghelich Oghli By: M. Ghelich Oghli
Computer graphics & visualization HDRI. computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization.
Gaussian KD-Tree for Fast High-Dimensional Filtering A. Adams, N. Gelfand, J. Dolson, and M. Levoy, Stanford University, SIGGRAPH 2009.
Image processing. Image operations Operations on an image –Linear filtering –Non-linear filtering –Transformations –Noise removal –Segmentation.
High Dynamic Range Images : Rendering and Image Processing Alexei Efros.
High Dynamic Range Imaging: Spatially Varying Pixel Exposures Shree K. Nayar, Tomoo Mitsunaga CPSC 643 Presentation # 2 Brien Flewelling March 4 th, 2009.
Image Enhancement.
1 Photographic Tone Reproduction for Digital Images Brandon Lloyd COMP238 October 2002.
Gradient Domain High Dynamic Range Compression
Geometry-driven Diffusion.
Post-rendering Cel Shading & Bloom Effect
Multimedia Systems & Interfaces Karrie G. Karahalios Spring 2007.
CSCE 441: Computer Graphics Image Filtering Jinxiang Chai.
Fast Bilateral Filtering
Tone mapping with slides by Fredo Durand, and Alexei Efros Digital Image Synthesis Yung-Yu Chuang 11/08/2005.
Recursive Bilateral Filtering F Reference Yang, Qingxiong. "Recursive bilateral filtering." ECCV Deriche, Rachid. "Recursively implementating.
High dynamic range imaging. Camera pipeline 12 bits8 bits.
Machine Vision ENT 273 Image Filters Hema C.R. Lecture 5.
Kartic Subr Cyril Soler Frédo Durand Edge-preserving Multiscale Image Decomposition based on Local Extrema INRIA, Grenoble Universities MIT CSAIL.
Interactive Time-Dependent Tone Mapping Using Programmable Graphics Hardware Nolan GoodnightGreg HumphreysCliff WoolleyRui Wang University of Virginia.
EE 7700 High Dynamic Range Imaging. Bahadir K. Gunturk2 References Slides and papers by Debevec, Ward, Pattaniak, Nayar, Durand, et al…
Image Processing Edge detection Filtering: Noise suppresion.
03/05/03© 2003 University of Wisconsin Last Time Tone Reproduction If you don’t use perceptual info, some people call it contrast reduction.
Tone Mapping on GPUs Cliff Woolley University of Virginia Slides courtesy Nolan Goodnight.
Why is computer vision difficult?
Image Enhancement [DVT final project]
A Gentle Introduction to Bilateral Filtering and its Applications Sylvain Paris – MIT CSAIL Pierre Kornprobst – INRIA Odyssée Jack Tumblin – Northwestern.
Templates, Image Pyramids, and Filter Banks
Autonomous Robots Vision © Manfred Huber 2014.
Mestrado em Ciência de Computadores Mestrado Integrado em Engenharia de Redes e Sistemas Informáticos VC 15/16 – TP7 Spatial Filters Miguel Tavares Coimbra.
Visual Computing Computer Vision 2 INFO410 & INFO350 S2 2015
03/04/05© 2005 University of Wisconsin Last Time Tone Reproduction –Histogram method –LCIS and improved filter-based methods.
03/03/03© 2003 University of Wisconsin Last Time Subsurface scattering models Sky models.
Tone mapping Digital Visual Effects, Spring 2007 Yung-Yu Chuang 2007/3/13 with slides by Fredo Durand, and Alexei Efros.
Grauman Today: Image Filters Smooth/Sharpen Images... Find edges... Find waldo…
Spatial Filtering (Chapter 3) CS474/674 - Prof. Bebis.
Image Enhancement in the Spatial Domain.
Miguel Tavares Coimbra
- photometric aspects of image formation gray level images
Gradient Domain High Dynamic Range Compression
Linear Filters and Edges Chapters 7 and 8
Image Deblurring and noise reduction in python
Image Processing and Reconstructions Tools
A Gentle Introduction to Bilateral Filtering and its Applications
IMAGE PROCESSING INTENSITY TRANSFORMATION AND SPATIAL FILTERING
Image Enhancement.
Fast Bilateral Filtering for the Display of High-Dynamic-Range Images
- photometric aspects of image formation gray level images
Sampling Theorem told us …
A Gentle Introduction to Bilateral Filtering and its Applications
Image Enhancement in the Spatial Domain
Lecture 3 (2.5.07) Image Enhancement in Spatial Domain
Digital Visual Effects, Spring 2006 Yung-Yu Chuang 2006/3/8
Digital Image Processing
Non-local Means Filtering
Gradient Domain High Dynamic Range Compression
Lecture 2: Image filtering
Winter in Kraków photographed by Marcin Ryczek
An Edge-preserving Filtering Framework for Visibility Restoration
Computer Graphics Image processing 紀明德
Presentation transcript:

CPSC 6040 Computer Graphics Images Slides prepared by Ioannis Karamouzas ioannis@clemson.edu With modifications by Donald House

Tone Mapping & Bilateral Filtering Slide Credits: Frédo Durand Josh Levine Ioannis Karamouzas

The Dynamic Range Problem Two Challenges Recording the information Choosing which 6-12 bits of the world to include in your photograph (cell phone to professional SLR, respectively) Metering the world to help you make this decision, since the world has more dynamic range than any light meter Displaying the information Compressing 12 bits into 4 bits for print, or 10 for LCD

Challenge 1: Recording the Information The range of illumination levels is 10 to 12 orders of magnitude Negatives or sensors can record only 2 to 3 orders of magnitude A solution: multiple exposures with different light sensitivities

The Radiance Map

Problem 2: Displaying the Information How should we map scene radiances (up to 1:100,000) to display radiances (only around 1:100) to produce a satisfactory image? Goal: match limited contrast of the display medium while preserving details Solution: Tone Mapping

Simple Tone Mapping

Gamma Compression on Intensity Colors ok, but details in intensity are blurry

Gamma Compression on Intensity Colors ok, but details in intensity are blurry Solution: Reduce contrast of low frequencies Keep mid and high frequencies Mid-high frequency Low frequency

Tone Mapping Using Linear Filtering Reduce contrast of low-frequencies Keep mid and high frequencies

The Halo Nightmare For strong edges Because they contain high frequencies

Tone Mapping Using Bilateral Filter to eliminate the halo effect

Durand and Dorsey, 2002 Do not blur across edges Non-linear filtering

Framework Overview IN LOG Detail = input log – large scale

Bilateral Filtering (slides based on Durand)

Start with Gaussian filtering Input (I) is a step function + noise Output (J) is a convolution of I with a Gaussian kernel f

Gaussian filter as weighted average Weight of ξ depends on the distance to x

The problem of edges I(ξ) is too different from I(x) Pollutes our estimate of J(x)

Principle of bilateral filtering Reject (in a soft way) pixels that differ too much Add a Gaussian g that penalizes intensity differences

Bilateral filtering Combines Spatial Gaussian f (domain kernel) ⅇxp − 𝑥−𝜉 2 2 𝜎 2

Bilateral filtering Combines Spatial Gaussian f (domain kernel) ⅇxp − 𝐼(𝑥)−I(𝜉) 2 2 𝜎 2 Combines Spatial Gaussian f (domain kernel) Gaussian g on intensity differences (range kernel)

Normalization factor

Bilateral filtering is non linear The weights are different for each output pixel

See [Tomasi and Manduchi,1998] for more Putting it all together See [Tomasi and Manduchi,1998] for more

Contrast Reduction Input HDR Image Contrast too high!

Contrast Reduction Intensity = 0.30R + 0.59G + 0.11B R’ = R/intensity Input HDR Image Intensity Intensity = 0.30R + 0.59G + 0.11B Color R’ = R/intensity G’ = G/intensity B’ = B/intensity important to use ratios (makes color luminance invariant)

Contrast Reduction Bilateral filter in log Input HDR Image Intensity Large Scale Bilateral filter in log Color spatial sigma = 2% - 5% image size range sigma = 0.4 (in log 10)

Contrast Reduction Bilateral filter in log Detail = Input HDR Image Intensity Large Scale Bilateral filter in log Detail Color Detail = log intensity - large scale

Contrast Reduction Bilateral filter in log Input HDR Image Intensity Large Scale Large Scale Bilateral filter in log Detail newLog = a oldLog Color

Contrast Reduction Bilateral filter in log Input HDR Image Intensity Large Scale Large Scale Bilateral filter in log Detail Detail Preserve! Color

Contrast Reduction Bilateral filter in log Input HDR Image Output Intensity Large Scale Large Scale Bilateral filter in log Detail Detail Preserve! Color Color

Contrast Reduction in log inLog = log10Intensity inLogLarge = bilateralFilter(inLog) inLogDetail = inLog – inLogLarge Manipulate large scale and detail separately!

Contrast Reduction in log outLog = k(inLogLarge – max(inLogLarge)) Normalize so that 0 is the biggest value in log Set target large scale contrast - targetRange = log10100, if we want a target contrast of 1:100 Compute range of input layer - largeRange = max(inLogLarge) – min(inLogLarge) Compute scale factor: k = targetRange / largeRange

Contrast Reduction in log outLog = detailAmp*inLogDetail + k(inLogLarge – max(inLogLarge)) Normalize so that 0 is the biggest value in log Set target large-scale contrast - targetRange = log10100, if we want a target contrast of 1:100 Compute range of input layer - largeRange = max(inLogLarge) – min(inLogLarge) Compute scale factor: k = targetRange / largeRange We can boost details by detailAmp

Final Output Image outIntensity = 10outLog R’, G’, B’ are intensity invariant color channels - outR = R’*outIntensity - outG = G’*outIntensity - outB = B’*outIntensity

Recap Bilateral filter in log Detail = log intensity - large scale Input HDR Image Output Intensity Large Scale Large Scale Bilateral filter in log Detail Detail Color Detail = log intensity - large scale Color

Results

Important notes Spatial sigma not very important Range sigma: quite important Critical to work in the log domain Because HDR and because perception sensitive to multiplicative contrast Luminance computation (0.30R + 0.59G + 0.11B) See [Eisemann 2004] for smarter function

Improving Performance Direct bilateral filtering is slow (minutes) Fast algorithm: bilateral grid - http://groups.csail.mit.edu/graphics/bilagrid/ - http://people.csail.mit.edu/sparis/publi/2009/ijcv/ Paris_09_Fast_Approximation.pdf - http://graphics.stanford.edu/papers/gkdtrees/