Contributions ing for the Display of High-Dynamic-Range Images for HDR images Local tone mapping Preserves details No halo Edge-preserving filter Frédo Durand & Julie Dorsey Laboratory for Computer Science Massachusetts Institute of Technology High-dynamic-range (HDR) images CG Images Match limited contrast of the medium Preserve details Multiple eposure photo [Debevec & Malik 997] HDR sensors Recover response curve HDR value for each piel Real world Picture 0-6 High dynamic range 0 6 0-6 0 6 Low contrast A typical photo Sun is overeposed Foreground is undereposed Gamma compression X > X γ s are washed-out Input Gamma
Gamma compression on intensity s are OK, but details (intensity high-frequency) are blurred Gamma on intensity Chiu et al. 993 Reduce contrast of low-frequencies Keep high frequencies Low-freq. Reduce low frequency High-freq. The halo nightmare For strong edges Because they contain high frequency Low-freq. Reduce low frequency Our approach Do not blur across edges Non-linear filtering Large-scale High-freq. Multiscale decomposition Multiscale retine [Jobson et al. 997] Low-freq. Mid-freq. Mid-freq. High-freq. Edge-preserving filtering Blur, but not across edges Input Gaussian blur Edge-preserving Compressed Compressed Compressed Perceptual filters [Pattanaik et al. 998] Anisotropic diffusion [Perona & Malik 90] Blurring as heat flow LCIS [Tumblin & Turk] filtering [Tomasi & Manduci, 98]
Edge-preserving filtering & LCIS [Tumblin & Turk 999] Multiscale decomposition using LCIS (anisotropic diffusion) Layer decomposition [Tumblin et al. 999] For 3D scenes Reduce only illumination layer Simplified (at multiple scales) Compressed s Illumination layer Compressed Reflectance layer Comparison with our approach We use only 2 scales Can be seen as illumination and reflectance Different edge-preserving filter from LCIS Large-scale Plan Review of bilateral filtering [Tomasi and Manduchi 998] Theoretical framework Acceleration Handling uncertainty Use for contrast reduction Compressed Start with Gaussian filtering Start with Gaussian filtering Here, is a step function + noise Spatial Gaussian f J = f I = J f I
Start with Gaussian filtering is blurred Gaussian filter as weighted average Weight of depends on distance to J = f I J () = f (, ) The problem of edges Principle of filtering Here, pollutes our estimate J() It is too different [Tomasi and Manduchi 998] Penalty g on the intensity difference J () = f (, ) J () = f (, ) g( I( ) I( )) ) I() I() filtering filtering [Tomasi and Manduchi 998] Spatial Gaussian f J () = f (, ) g( I( ) I( )) ) [Tomasi and Manduchi 998] Spatial Gaussian f Gaussian g on the intensity difference J () = f (, ) g( I( ) I( )) )
Normalization factor [Tomasi and Manduchi 998] )=, f ( ) g( I( ) I( )) J () = f (, ) g( I( ) I( )) ) filtering is non-linear [Tomasi and Manduchi 998] The weights are different for each piel J () = f (, ) g( I( ) I( )) ) Plan Review of bilateral filtering [Tomasi and Manduchi 998] Theoretical framework Acceleration Handling uncertainty Use for contrast reduction Theoretical framework Framework of robust statistics = estimator at each piel Less influence to outliers (because of g) Unification with anisotropic diffusion Mostly equivalent Some differences s and other insights in paper Spatial support Spatial support Anisotropic diffusion cannot diffuse across edges Support of anisotropic diffusion
Spatial support Anisotropic diffusion cannot diffuse across edges filtering can Larger support => more reliable estimator Acceleration Non-linear because of g J () = f (, ) g( I( ) I( )) ) Support of anisotropic diffusion Support of bilateral Acceleration Linear for a given value of I() Convolution of g I by Gaussian f J () = f (, ) g( I( ) I( )) ) Acceleration Linear for a given value of I() Convolution of g I by Gaussian f Valid for all with same value I() J () = f (, ) g( I( ) I( )) ) Acceleration Discretize the set of possible I() Perform linear Gaussian blur (FFT) Linear interpolation in between J () = f (, ) g( I( ) I( )) ) Handling uncertainty Sometimes, not enough similar piels Happens for specular highlights Can be detected using normalization ) Simple fi (average with of neighbors) ) treated similarly Weights with high uncertainty Uncertainty
Contrast too high! Reduce contrast Reduce contrast Preserve!
Live demo X GHz Pentium Whatever PC Reduce contrast Preserve! Conclusions Edge-preserving filter Framework of robust statistics Acceleration Handling uncertainty Can handle challenging photography issues Richer sensor + post-processing Future work Uncertainty fi Other applications of bilateral filter (meshes, MCRT) Video sequences High-dynamic-range sensors Other pictorial techniques Informal comparison Informal comparison Gradient-space [Fattal et al.] [Durand et al.] Photographic [Reinhard et al.] Gradient-space [Fattal et al.] [Durand et al.] Photographic [Reinhard et al.]