Fast Bilateral Filtering. Sylvain Paris, Adobe sparis@adobe.com. Manipulating the texture in a photo is a central operation in many tasks. Let ’ s look at a few examples…. Photographic Style Transfer [Bae 06]. input. Photographic Style Transfer [Bae 06]. output. Tone Mapping [Durand 02].
Une image / un lien ci-dessous est fourni (tel quel) pour télécharger la présentation
Politique de téléchargement : le contenu du site vous est fourni TEL QUEL pour votre information et votre usage personnel ; il ne peut être vendu, concédé sous licence ni partagé sur d’autres sites sans l’accord de son auteur.Le contenu vous est fourni TEL QUEL, pour votre information et votre usage personnel uniquement.Téléchargez la présentation en cliquant sur ce lien.Lors du téléchargement, si vous ne parvenez pas à télécharger une présentation, l’éditeur a peut-être supprimé le fichier de son serveur.Pendant le téléchargement, si vous ne parvenez pas à obtenir une présentation, le fichier a peut-être été supprimé par l’éditeur.
Naïve Approach: Gaussian Blur BLUR HALOS smoothed(structure, large scale) residual(texture, small scale) input Gaussian Convolution
Impact of Blur and Halos • If the decomposition introduces blur and halos, the final result is corrupted. Sample manipulation:increasing texture(residual 3)
Traditional Denoising versus Computational Photography Edge-preserving filtering introduced for denoising. • Denoising: decompose into signal + noise • Throw away noise • Small kernels • Computational photography: decompose into base + detail • Detail is valuable • Large kernels • Bilateral filter [Aurich 95, Smith 97, Tomasi 98]
pixelintensity pixel position Illustration a 1D Image • 1D image = line of pixels • Better visualized as a plot
space space range normalization Definition Gaussian blur p q • only spatial distance, intensity ignored space Bilateral filter[Aurich 95, Smith 97, Tomasi 98] p range q • spatial and range distances • weights sum to 1 space
output Example on a Real Image • Kernels can have complex, spatially varying shapes. input
Bilateral Filter is Expensive • Brute-force computation is slow (several minutes) • Two nested for loops: for each pixel, look at all pixels • Non-linear, depends on image content no FFT, no pre-computation… • Fast approximations exist [Durand 02, Weiss 06] • Significant loss of accuracy • No formal understanding of accuracy versus speed
Today • We will reformulate the bilateral filter • Link with linear filtering • Fast and accurate algorithm
Outline • Reformulation of the BF • Fast algorithm to compute the BF • Practical implementation • Application and extension • Photographic style transfer • Bilateral grid
Our Strategy p weightsappliedto pixels Reformulate the bilateral filter • More complex space: • Homogeneous intensity • Higher-dimensional space • Simpler expression: mainly a convolution • Leads to a fast algorithm
Reformulation: Summary • Convolution in higher dimension • expensive but well understood (linear, FFT, etc) • Division and slicing • nonlinear but simple and pixel-wise Exact reformulation
Outline • Reformulation of the BF • Fast algorithm to compute the BF • Practical implementation • Application and extension • Photographic style transfer • Bilateral grid
Higherdimensional Homogeneousintensity • Recap: • simple operations • complex space higher dimensional functions w i w Gaussian convolution division slicing
Strategy:downsampledconvolution higher dimensional functions w i w D O W N S A M P L E Heavilydownsampled Gaussian convolution U P S A M P L E division slicing
Sampling Theorem • Sampling a signal at a least twice its smallest wavelength is enough. Not enough
Sampling Theorem • Sampling a signal at a least twice its smallest wavelength is enough. Not enough
Sampling Theorem • Sampling a signal at a least twice its smallest wavelength is enough. Enough
Almost onlylow freq. High freq. negligible Signal processinganalysis higher dimensional functions w i w Low-pass filter Gaussian convolution division slicing
“Safe” downsampling higher dimensional functions w i w D O W N S A M P L E Almost noinformationloss Gaussian convolution U P S A M P L E division slicing
Fast Convolution by Downsampling • Downsampling cuts frequencies above Nyquist limit (half the sampling rate) • Less data to process • But introduces error • Evaluation of the approximation • Efficient implementation
finer sampling Accuracy versus Running Time 1 secondinstead ofseveral minutes • Finer sampling increases accuracy. • More precise than previous work. Accuracy as function of Running Time Digital photograph1200 1600 Brute-force bilateral filter takes over 10 minutes.
1200 1600 Visual Results • Comparison with previous work [Durand 02] • running time = 1s for both techniques input exact BF our result prev. work 0.1 difference with exactcomputation(intensities in [0:1]) 0
Kernel Size • Larger kernels are fasterbecause we downsample more. • Useful for photography. Running Time as a function of Kernel Size Digital photograph1200 1600 Brute-force bilateral filter takes over 10 minutes.
Connexion au compte
Connectez-vous pour publier votre contenu sur SlideServe.