High dynamic range imaging Camera pipeline 12 bits
High dynamic range imaging
Camera pipeline 12 bits 8 bits
Short exposure 10 -6 Real world radiance Picture intensity dynamic range 10 -6 106 Pixel value 0 to 255
Long exposure 10 -6 Real world radiance Picture intensity dynamic range 10 -6 106 Pixel value 0 to 255
Varying shutter speeds
Recovering High Dynamic Range Radiance Maps from Photographs Paul E. Debevec Jitendra Malik SIGGRAPH 1997
Recovering response curve 12 bits 8 bits
Recovering response curve Image series • 2 • 3 Dt = 2 sec • 1 • 3 Dt = 1 sec • 2 • 3 • 1 • 2 • 1 Dt = 1/2 sec 255 0 • 3 • 2 • 1 Dt = 1/4 sec • 3 • 1 Dt = 1/8 sec
Idea behind the math ln 2
Idea behind the math Each line for a scene point. The offset is essentially determined by the unknown Ei
Idea behind the math Note that there is a shift that we can’t recover
Math for recovering response curve
Recovering response curve • The solution can be only up to a scale, add a constraint • Add a hat weighting function
Recovered response function
Constructing HDR radiance map combine pixels to reduce noise and obtain a more reliable estimation
Reconstructed radiance map
Gradient Domain High Dynamic Range Compression Raanan Fattal Dani Lischinski Michael Werman SIGGRAPH 2002
The method in 1 D log derivative attenuate exp integrate
The method in 2 D • Given: a log-luminance image H(x, y) • Compute an attenuation map • Compute an attenuated gradient field G: • Problem: G may not be integrable!
Solution • Look for image I with gradient closest to G in the least squares sense. • I minimizes the integral: Poisson equation
Attenuation log(Luminance) gradient magnitude attenuation map
Multiscale gradient attenuation interpolate X =
Informal comparison Gradient domain [Fattal et al. ] Bilateral [Durand et al. ] Photographic [Reinhard et al. ]
Informal comparison Gradient domain [Fattal et al. ] Bilateral [Durand et al. ] Photographic [Reinhard et al. ]
Informal comparison Gradient domain [Fattal et al. ] Bilateral [Durand et al. ] Photographic [Reinhard et al. ]
Local Laplacian Filters : Edge-aware Image Processing with a Laplacian Pyramid Sylvain Paris Samuel W. Hasinoff Jan Kautz SIGGRAPH 2011
Background on Gaussian Pyramids • Resolution halved at each level using Gaussian kernel level 3 (residual) level 2 level 1 level 0 27
Background on Laplacian Pyramids • Difference between adjacent Gaussian levels level 3 (residual) level 2 level 1 level 0 28
Intuition for 1 D Edge = Input signal + Discontinuity + Texture Smooth • Decomposition for the sake of analysis only – We do not compute it in practice 29
Intuition for 1 D Edge = Input signal + Discontinuity + Smooth Texture Does not contribute to Lap. pyramid at that scale (d 2/dx 2=0) 30
Ideal Texture Increase Discontinuity Texture Keep unchanged Amplify 31
Our Texture Increase σ σ Input signal σ σ Local nonlinearity “Locally good” version user-defined parameter σ defines texture vs. edges 32
Our Texture Increase = + “Locally good” Discontinuity Only left side is affected Unaffected + Texture Smooth Left side is ok, right side is not Does not contribute to Lap. pyramid at that scale (d 2/dx 2=0) 33
Negligible because collocated with discontinuity Discussion = + “Locally good” Discontinuity Only left side is affected Negligible because Gaussian kernel ≈ 0 Unaffected + Texture Smooth Left side is ok, right side is not Does not contribute to Lap. pyramid at that scale (d 2/dx 2=0) Good approximation to ideal case overall (formal treatment in paper) 34
Texture Manipulation Input 35
Texture Manipulation Decrease 36
Texture Manipulation Small Increase 37
Texture Manipulation Large Increase 38
Texture Manipulation Input 39
Texture Manipulation Large Increase 40
- Slides: 40