Accelerated Graph-Based Spectral Polynomial Filters

Accelerated Graph-Based Spectral Polynomial Filters

ACCELERATED GRAPH-BASED SPECTRAL POLYNOMIAL FILTERS Andrew Knyazev and Alexander Malyshev Mitsubishi Electric Research Labs (MERL), 201 Broadway, 8th floor, Cambridge, MA 02139, USA. email: [email protected], [email protected] ABSTRACT a vertex domain transform on a graph with pixels as vertices, intensity values of the pixels as the graph signal and filter co- Graph-based spectral denoising is a low-pass filtering using efficients as link weights that capture the similarity between the eigendecomposition of the graph Laplacian matrix of a the vertices. The BF transform is a nonlinear anisotropic dif- noisy signal. Polynomial filtering avoids costly computa- fusion, cf. [7, 8, 9], determined by entries of the graph Lapla- tion of the eigendecomposition by projections onto suitable cian matrix, which are related to the BF weights. In the lin- Krylov subspaces. Polynomial filters can be based, e.g., ear case, the solutions of time-dependent anisotropic diffusion on the bilateral and guided filters. We propose construct- problems are represented by operator exponentials or semi- ing accelerated polynomial filters by running flexible Krylov groups, which can be approximated by operator polynomials. subspace based linear and eigenvalue solvers such as the Eigenvalues and eigenvectors of the graph Laplacian ma- Block Locally Optimal Preconditioned Conjugate Gradient trix allow us to apply the Fourier analysis to the graph signals (LOBPCG) method. or images as in [6] and perform frequency selective filtering Index Terms— Image denoising, spectral polynomial fil- operations on graphs, similar to those in traditional signal pro- ter, graph Laplacian, Krylov subspace method cessing. Expensive computation of eigenvectors is avoided in polynomial spectral filters, which are fully implemented in 1. INTRODUCTION the vertex domain. For example, the spectral filters in [10, 11] are based on optimal polynomials constructed by means of the In this note, we deal with noise removal from a given noisy Chebyshev approximation and conjugate gradient algorithm. signal, which is a basic problem in signal processing, with ap- A recent newcomer in the field of filtering is the guided plications, e.g., in image denoising [1]. Apart from the trivial filter (GF) proposed in [12, 13] and included into the image application of removing noise prior to presenting the image to processing toolbox of MATLAB. According to our limited a human observer, pre-smoothing an image and noise removal experience, the GF filter is significantly faster than the BF may help to improve performance of many image-processing filter. The authors of [12] additionally advocate that GF is algorithms, such as compression, enhancement, segmentation gradient preserving and avoids the gradient reversal problems etc. A noise removal operation is often referred to as a filter. in contrast to BF, which is not gradient preserving. Modern denoising algorithms endeavor to preserve the Iterative application of smoothing filters like BF and GF image details while removing the noise. One of the most pop- can be interpreted as matrix power transforms, in general case, nonlinear, or, equivalently as explicit integration in arXiv:1509.02468v1 [cs.CV] 8 Sep 2015 ular denoising filters is the bilateral filter (BF), which smooths images while preserving edges, by taking the weighted av- time of the corresponding anisotropic diffusion equation. In erage of the nearby pixels. The weights depend on both the the present paper, we continue the approach of [10, 11] and spatial distance and photometric similarity, thus providing propose acceleration of the iterative smoothing filters based local adaptivity to the input image. Bilateral filtering was on the polynomial approximations implicitly constructed in introduced in [2, 3, 4] as an intuitive tool without theoret- the conjugate gradient (CG) algorithm and in the LOBPCG, ical justification. Since then, connections between the BF which is a leading eigensolver for large symmetric matri- and other well-known filtering techniques such as anisotropic ces [14]. LOBPCG has been successfully applied to image diffusion, weighted least squares, Bayesian methods, kernel segmentation in [15]. regression and non-local means have been explored, see, e.g., The remainder of the paper is organized as follows. Sec- survey [5]. tion 2 gives main formulas of the original bilateral filter in A convenient way to represent images is by graphs [6], the graph-based notation. Section 3 provides a similar de- especially when considering images over irregular grids and scription of the guided filter from [12]. Section 4 introduces treating non-local interactions between pixels. A single appli- a basic Fourier calculus on graphs and applies it to a sim- cation of the bilateral filter to an image may be interpreted as plified frequency analysis of iterations with the graph Lapla- Accepted to the 2015 IEEE International Workshop on Machine Learning for Signal Processing cian matrix. Section 5 describes the CG acceleration of the second way is also faster to compute since the BF weights are smoothing filters. Section 6 gives a brief description of the computed only once in the beginning. LOBPCG method and suggests it as an acceleration for BF The fastest implementations of BF have the arithmetical and GF. Our numerical experiments in Section 7 demonstrate complexity O(N), where N is the number of pixels or voxels improved performance of our accelerated filters in the one- in the input image [16, 17, 18]. dimensional case mostly for the BF filter. Similar improve- ments are expected when accelerating the GF filter. 3. GUIDED FILTER AS A VECTOR TRANSFORM 2. BILATERAL FILTER AS A VECTOR Algorithm 1 Guided Filter TRANSFORM Input: x, g, ρ, Output: y The bilateral filter transforms an input image x into the output meang = fmean(g; ρ) image y by the weighted average of the pixels of x: meanx = fmean(x; ρ) corrg = fmean(g: ∗ g; ρ) X wij yi = P xj: (1) corrgx = fmean(g: ∗ x; ρ) j wij j varg = corrg − meang: ∗ meang covgx = corrgx − meang: ∗ meanx Let pi denote the geometrical position of a pixel i. Then a = covgx:=(varg + ) 2 2 b = meanx − a: ∗ meang kpi − pjk jxi − xjj w = exp − exp − ; (2) meana = fmean(a; ρ) ij 2σ2 2σ2 s r meanb = fmean(b; ρ) y = meana: ∗ g + meanb where σs and σr are the filter parameters [4], kpi − pjk is a spatial distance between pixels i and j. For color images, Algorithm 1 is a pseudo-code of the guided filter from the photometric distance jx − x j can be computed in the i j [12], where f (·; ρ) denotes a mean filter with the win- CIE-Lab color space as suggested in [4]. mean dow width ρ. The constant determines the smoothness de- The BF weights w determine an undirected graph G = ij gree of the filter: the larger the larger a smoothing effect. (V; E), where the vertices V = f1; 2;:::;Ng are the pixels The arithmetical operations :∗ and := are the componentwise of the input image and the edges E = f(i; j)g connect the multiplication and division. “neighboring” pixels i and j. The adjacency matrix W of the The input image is x, the output image is y. The guidance graph G is symmetric and has the entries w ≥ 0. Let D ij image g has the same size as x. If g coincides with x, then be the diagonal matrix with the nonnegative diagonal entries the guided filter is called self-guided. The arithmetical com- d = P w . In the matrix notation, the bilateral filter op- i j ij plexity of GF equals O(N), where N is the number of pixels eration (1) is the vector transform with W depending on a in x. guidance image (we use x as a guidance image in (2)) The guided filter operation of Algorithm 1 is the transform y = D−1W x = x − D−1Lx; (3) y = W (g)x; (5) where where the implicitly constructed symmetric matrix W (g) has L = D − W: (4) the following entries, see [12]: 1 (g − µ )(g − µ ) is the Laplacian matrix for the graph G. Gershgorin’s theo- X i k j k Wij(g) = 2 1 + 2 : j!j σk + rem from matrix analysis guarantees a smoothing effect of the k :(i;j)2!k bilateral filter, when maxi di ≤ 2. (6) The bilateral filtering can be used iteratively. There are Here !k is the neighborhood around pixel k of width ρ, where two ways to iterate BF: (1) by changing the weights wij at the mean filter fmean(·; ρ) is applied, and j!j denotes the each iteration using the result of the previous iteration as a number of pixels in !k, the same for all k. The values µk 2 guidance image, or (2) by using the fixed weights at each iter- and σk are the mean and variance of the image g in !k. ation as calculated from the initial image as a guidance image The graph Laplacian matrix is obtained from the matrix for all iterations. The first alternative results in a nonlinear fil- W in the standard way. According to [12], the values di = P ter, where the BF graph changes at every iteration and we can j wij equal 1. Therefore, the diagonal matrix D equals the only provide separate spectral interpretation for each stage. identity matrix I, and the graph Laplacian matrix is the sym- The second alternative generates a linear filter, the Laplacian metric nonnegative definite matrix L = I − W . matrix is fixed for all iterations, and it is possible to provide a The guided filtering can also be used iteratively. Similar spectral interpretation of the whole cascaded operation. The to the BF filter, the guided filter is applied iteratively: (1) either using the result of the previous iteration as a guidance over-smoothing, only few iterations of the preconditioned CG image, or (2) by using the initial image as a guidance image method must be performed.

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    6 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us