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.

Highlights

  • The bilateral filter was proposed by Tomasi and Maduchi [12] as a non-linear extension of the classical Gaussian filter

  • The present work was motivated by a series of recent papers [4, 1, 2, 7], where it was demonstrated that a fast O(1) algorithm can be derived by approximating the Gaussian range kernel using polynomial and trigonometric functions

  • As will be explained shortly, the basic idea behind the shiftable bilateral filter is to approximate (1) and (2) using a series of Gaussian convolutions, where the convolutions are performed on certain non-linear transforms of the input image

Read more

Summary

Introduction

The bilateral filter was proposed by Tomasi and Maduchi [12] as a non-linear extension of the classical Gaussian filter. The present work was motivated by a series of recent papers [4, 1, 2, 7], where it was demonstrated that a fast O(1) algorithm can be derived by approximating the Gaussian range kernel using polynomial and trigonometric functions. These functions have the so-called shiftability property [1]. As will be explained shortly, the basic idea behind the shiftable bilateral filter is to approximate (1) and (2) using a series of Gaussian convolutions, where the convolutions are performed on certain (pointwise) non-linear transforms of the input image. 2also referred to as a constant-time or linear-time algorithm in the image processing literature

Proposed Algorithm
Implementation
Gaussian Convolution
Parallelization
Results
Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call