- published
- 2017-05-24
- reference
- Pravin Nair, Anmol Popli, and Kunal N. Chaudhury, A Fast Approximation of the Bilateral Filter using the Discrete Fourier Transform, Image Processing On Line, 7 (2017), pp. 115–130. https://doi.org/10.5201/ipol.2017.184
Communicated by Charles Hessel
Demo edited by Charles Hessel
Abstract
The bilateral filter is a popular non-linear smoother that has applications in image processing, computer vision, and computational photography. The novelty of the filter is that a range kernel is used in tandem with a spatial kernel for performing edge-preserving smoothing, where both kernels are usually Gaussian. A direct implementation of the bilateral filter is computationally expensive, and several fast approximations have been proposed to address this problem. In particular, it was recently demonstrated in a series of papers that a fast and accurate approximation of the bilateral filter can be obtained by approximating the Gaussian range kernel using polynomials and trigonometric functions. By adopting some of the ideas from this line of work, we propose a fast algorithm based on the discrete Fourier transform of the samples of the range kernel. We develop a parallel C implementation of the resulting algorithm for Gaussian kernels, and analyze the effect of various extrinsic and intrinsic parameters on the approximation quality and the run time. A key component of the implementation are the recursive Gaussian filters of Deriche and Young.
Download
- full text manuscript: PDF low-res. (439.8K) PDF (2.8M) [?]
- source code: TAR/GZ
History
- Note from the editor: the original source code was modified on 2021-10-18 to fix a build error with gcc>7.5. The change consists in replacing 'int' with 'static int' at line 26 in young.c. The original version of the code is available here.
- Note from the editor: the manuscript of the article was modified on 2022-01-01 to include information about its editors. The original version of the manuscript is available here.