Discrete Laplace operator

(Redirected from Laplace filter)

In mathematics, the discrete Laplace operator is an analog of the continuous Laplace operator, defined so that it has meaning on a graph or a discrete grid. For the case of a finite-dimensional graph (having a finite number of edges and vertices), the discrete Laplace operator is more commonly called the Laplacian matrix.

The discrete Laplace operator occurs in physics problems such as the Ising model and loop quantum gravity, as well as in the study of discrete dynamical systems. It is also used in numerical analysis as a stand-in for the continuous Laplace operator. Common applications include image processing,[1] where it is known as the Laplace filter, and in machine learning for clustering and semi-supervised learning on neighborhood graphs.

Definitions

edit

Graph Laplacians

edit

There are various definitions of the discrete Laplacian for graphs, differing by sign and scale factor (sometimes one averages over the neighboring vertices, other times one just sums; this makes no difference for a regular graph). The traditional definition of the graph Laplacian, given below, corresponds to the negative continuous Laplacian on a domain with a free boundary.

Let   be a graph with vertices   and edges  . Let   be a function of the vertices taking values in a ring. Then, the discrete Laplacian   acting on   is defined by

 

where   is the graph distance between vertices w and v. Thus, this sum is over the nearest neighbors of the vertex v. For a graph with a finite number of edges and vertices, this definition is identical to that of the Laplacian matrix. That is,   can be written as a column vector; and so   is the product of the column vector and the Laplacian matrix, while   is just the v'th entry of the product vector.

If the graph has weighted edges, that is, a weighting function   is given, then the definition can be generalized to

 

where   is the weight value on the edge  .

Closely related to the discrete Laplacian is the averaging operator:

 

Mesh Laplacians

edit

In addition to considering the connectivity of nodes and edges in a graph, mesh Laplace operators take into account the geometry of a surface (e.g. the angles at the nodes). For a two-dimensional manifold triangle mesh, the Laplace-Beltrami operator of a scalar function   at a vertex   can be approximated as

 

where the sum is over all adjacent vertices   of  ,   and   are the two angles opposite of the edge  , and   is the vertex area of  ; that is, e.g. one third of the summed areas of triangles incident to  . It is important to note that the sign of the discrete Laplace-Beltrami operator is conventionally opposite the sign of the ordinary Laplace operator. The above cotangent formula can be derived using many different methods among which are piecewise linear finite elements, finite volumes, and discrete exterior calculus [2] (PDF download: [1]).

To facilitate computation, the Laplacian is encoded in a matrix   such that  . Let   be the (sparse) cotangent matrix with entries

 

where   denotes the neighborhood of  , and let   be the diagonal mass matrix   whose  -th entry along the diagonal is the vertex area  . Then   is the sought discretization of the Laplacian.

A more general overview of mesh operators is given in.[3]

Finite differences

edit

Approximations of the Laplacian, obtained by the finite-difference method or by the finite-element method, can also be called discrete Laplacians. For example, the Laplacian in two dimensions can be approximated using the five-point stencil finite-difference method, resulting in

 

where the grid size is h in both dimensions, so that the five-point stencil of a point (xy) in the grid is

 

If the grid size h = 1, the result is the negative discrete Laplacian on the graph, which is the square lattice grid. There are no constraints here on the values of the function f(x, y) on the boundary of the lattice grid, thus this is the case of no source at the boundary, that is, a no-flux boundary condition (aka, insulation, or homogeneous Neumann boundary condition). The control of the state variable at the boundary, as f(x, y) given on the boundary of the grid (aka, Dirichlet boundary condition), is rarely used for graph Laplacians, but is common in other applications.

Multidimensional discrete Laplacians on rectangular cuboid regular grids have very special properties, e.g., they are Kronecker sums of one-dimensional discrete Laplacians, see Kronecker sum of discrete Laplacians, in which case all its eigenvalues and eigenvectors can be explicitly calculated.

Finite-element method

edit

In this approach, the domain is discretized into smaller elements, often triangles or tetrahedra, but other elements such as rectangles or cuboids are possible. The solution space is then approximated using so called form-functions of a pre-defined degree. The differential equation containing the Laplace operator is then transformed into a variational formulation, and a system of equations is constructed (linear or eigenvalue problems). The resulting matrices are usually very sparse and can be solved with iterative methods.

Image processing

edit

Discrete Laplace operator is often used in image processing e.g. in edge detection and motion estimation applications.[4] The discrete Laplacian is defined as the sum of the second derivatives Laplace operator#Coordinate expressions and calculated as sum of differences over the nearest neighbours of the central pixel. Since derivative filters are often sensitive to noise in an image, the Laplace operator is often preceded by a smoothing filter (such as a Gaussian filter) in order to remove the noise before calculating the derivative. The smoothing filter and Laplace filter are often combined into a single filter.[5]

Implementation via operator discretization

edit

For one-, two- and three-dimensional signals, the discrete Laplacian can be given as convolution with the following kernels:

1D filter:  ,
2D filter:  .

  corresponds to the (Five-point stencil) finite-difference formula seen previously. It is stable for very smoothly varying fields, but for equations with rapidly varying solutions a more stable and isotropic form of the Laplacian operator is required,[6] such as the nine-point stencil, which includes the diagonals:

2D filter:  ,
3D filter:   using seven-point stencil is given by:
first plane =  ; second plane =  ; third plane =  .
and using 27-point stencil by:[7]
first plane =  ; second plane =  ; third plane =  .
nD filter: For the element   of the kernel  
 
where xi is the position (either −1, 0 or 1) of the element in the kernel in the i-th direction, and s is the number of directions i for which xi = 0.

Note that the nD version, which is based on the graph generalization of the Laplacian, assumes all neighbors to be at an equal distance, and hence leads to the following 2D filter with diagonals included, rather than the version above:

2D filter:  

These kernels are deduced by using discrete differential quotients.

It can be shown[8][9] that the following discrete approximation of the two-dimensional Laplacian operator as a convex combination of difference operators

 

for γ ∈ [0, 1] is compatible with discrete scale-space properties, where specifically the value γ = 1/3 gives the best approximation of rotational symmetry.[8][9][10] Regarding three-dimensional signals, it is shown[9] that the Laplacian operator can be approximated by the two-parameter family of difference operators

 

where

 
 
 

It can be shown by Taylor series analysis that combinations of values of   and   for which   give the best approximations of rotational symmetry.

Implementation via continuous reconstruction

edit

A discrete signal, comprising images, can be viewed as a discrete representation of a continuous function  , where the coordinate vector   and the value domain is real  . Derivation operation is therefore directly applicable to the continuous function,  . In particular any discrete image, with reasonable presumptions on the discretization process, e.g. assuming band limited functions, or wavelets expandable functions, etc. can be reconstructed by means of well-behaving interpolation functions underlying the reconstruction formulation,[11]

 

where   are discrete representations of   on grid   and   are interpolation functions specific to the grid  . On a uniform grid, such as images, and for bandlimited functions, interpolation functions are shift invariant amounting to   with   being an appropriately dilated sinc function defined in  -dimensions i.e.  . Other approximations of   on uniform grids, are appropriately dilated Gaussian functions in  -dimensions. Accordingly, the discrete Laplacian becomes a discrete version of the Laplacian of the continuous  

 

which in turn is a convolution with the Laplacian of the interpolation function on the uniform (image) grid  . An advantage of using Gaussians as interpolation functions is that they yield linear operators, including Laplacians, that are free from rotational artifacts of the coordinate frame in which   is represented via  , in  -dimensions, and are frequency aware by definition. A linear operator has not only a limited range in the   domain but also an effective range in the frequency domain (alternatively Gaussian scale space) which can be controlled explicitly via the variance of the Gaussian in a principled manner. The resulting filtering can be implemented by separable filters and decimation (signal processing)/pyramid (image processing) representations for further computational efficiency in  -dimensions. In other words, the discrete Laplacian filter of any size can be generated conveniently as the sampled Laplacian of Gaussian with spatial size befitting the needs of a particular application as controlled by its variance. Monomials which are non-linear operators can also be implemented using a similar reconstruction and approximation approach provided that the signal is sufficiently over-sampled. Thereby, such non-linear operators e.g. Structure Tensor, and Generalized Structure Tensor which are used in pattern recognition for their total least-square optimality in orientation estimation, can be realized.

Spectrum

edit

The spectrum of the discrete Laplacian on an infinite grid is of key interest; since it is a self-adjoint operator, it has a real spectrum. For the convention   on  , the spectrum lies within   (as the averaging operator has spectral values in  ). This may also be seen by applying the Fourier transform. Note that the discrete Laplacian on an infinite grid has purely absolutely continuous spectrum, and therefore, no eigenvalues or eigenfunctions.

Theorems

edit

If the graph is an infinite square lattice grid, then this definition of the Laplacian can be shown to correspond to the continuous Laplacian in the limit of an infinitely fine grid. Thus, for example, on a one-dimensional grid we have

 

This definition of the Laplacian is commonly used in numerical analysis and in image processing. In image processing, it is considered to be a type of digital filter, more specifically an edge filter, called the Laplace filter.

Discrete heat equation

edit

Suppose   describes a temperature distribution across a graph, where   is the temperature at vertex  . According to Newton's law of cooling, the heat transferred from node   to node   is proportional to   if nodes   and   are connected (if they are not connected, no heat is transferred). Then, for thermal conductivity  ,

 

In matrix-vector notation,

 

which gives

 

Notice that this equation takes the same form as the heat equation, where the matrix −L is replacing the Laplacian operator  ; hence, the "graph Laplacian".

To find a solution to this differential equation, apply standard techniques for solving a first-order matrix differential equation. That is, write   as a linear combination of eigenvectors   of L (so that  ) with time-dependent coefficients,  

Plugging into the original expression (because L is a symmetric matrix, its unit-norm eigenvectors   are orthogonal):

 

whose solution is

 

As shown before, the eigenvalues   of L are non-negative, showing that the solution to the diffusion equation approaches an equilibrium, because it only exponentially decays or remains constant. This also shows that given   and the initial condition  , the solution at any time t can be found.[12]

To find   for each   in terms of the overall initial condition  , simply project   onto the unit-norm eigenvectors  ;

 .

This approach has been applied to quantitative heat transfer modelling on unstructured grids.[13] [14]

In the case of undirected graphs, this works because   is symmetric, and by the spectral theorem, its eigenvectors are all orthogonal. So the projection onto the eigenvectors of   is simply an orthogonal coordinate transformation of the initial condition to a set of coordinates which decay exponentially and independently of each other.

Equilibrium behavior

edit

To understand  , the only terms   that remain are those where  , since

 

In other words, the equilibrium state of the system is determined completely by the kernel of  .

Since by definition,  , the vector   of all ones is in the kernel. If there are   disjoint connected components in the graph, then this vector of all ones can be split into the sum of   independent   eigenvectors of ones and zeros, where each connected component corresponds to an eigenvector with ones at the elements in the connected component and zeros elsewhere.

The consequence of this is that for a given initial condition   for a graph with   vertices

 

where

 

For each element   of  , i.e. for each vertex   in the graph, it can be rewritten as

 .

In other words, at steady state, the value of   converges to the same value at each of the vertices of the graph, which is the average of the initial values at all of the vertices. Since this is the solution to the heat diffusion equation, this makes perfect sense intuitively. We expect that neighboring elements in the graph will exchange energy until that energy is spread out evenly throughout all of the elements that are connected to each other.

Example of the operator on a grid

edit
 
This GIF shows the progression of diffusion, as solved by the graph laplacian technique. A graph is constructed over a grid, where each pixel in the graph is connected to its 8 bordering pixels. Values in the image then diffuse smoothly to their neighbors over time via these connections. This particular image starts off with three strong point values which spill over to their neighbors slowly. The whole system eventually settles out to the same value at equilibrium.

This section shows an example of a function   diffusing over time through a graph. The graph in this example is constructed on a 2D discrete grid, with points on the grid connected to their eight neighbors. Three initial points are specified to have a positive value, while the rest of the values in the grid are zero. Over time, the exponential decay acts to distribute the values at these points evenly throughout the entire grid.

The complete Matlab source code that was used to generate this animation is provided below. It shows the process of specifying initial conditions, projecting these initial conditions onto the eigenvalues of the Laplacian Matrix, and simulating the exponential decay of these projected initial conditions.

N = 20; % The number of pixels along a dimension of the image
A = zeros(N, N); % The image
Adj = zeros(N * N, N * N); % The adjacency matrix

% Use 8 neighbors, and fill in the adjacency matrix
dx = [- 1, 0, 1, - 1, 1, - 1, 0, 1];
dy = [- 1, - 1, - 1, 0, 0, 1, 1, 1];
for x = 1:N
    for y = 1:N
        index = (x - 1) * N + y;
        for ne = 1:length(dx)
            newx = x + dx(ne);
            newy = y + dy(ne);
            if newx > 0 && newx <= N && newy > 0 && newy <= N
                index2 = (newx - 1) * N + newy;
                Adj(index, index2) = 1;
            end
        end
    end
end

% BELOW IS THE KEY CODE THAT COMPUTES THE SOLUTION TO THE DIFFERENTIAL EQUATION
Deg = diag(sum(Adj, 2)); % Compute the degree matrix
L = Deg - Adj; % Compute the laplacian matrix in terms of the degree and adjacency matrices
[V, D] = eig(L); % Compute the eigenvalues/vectors of the laplacian matrix
D = diag(D);

% Initial condition (place a few large positive values around and
% make everything else zero)
C0 = zeros(N, N);
C0(2:5, 2:5) = 5;
C0(10:15, 10:15) = 10;
C0(2:5, 8:13) = 7;
C0 = C0(:);

C0V = V'*C0; % Transform the initial condition into the coordinate system
% of the eigenvectors
for t = 0:0.05:5
    % Loop through times and decay each initial component
    Phi = C0V .* exp(- D * t); % Exponential decay for each component
    Phi = V * Phi; % Transform from eigenvector coordinate system to original coordinate system
    Phi = reshape(Phi, N, N);
    % Display the results and write to GIF file
    imagesc(Phi);
    caxis([0, 10]);
     title(sprintf('Diffusion t = %3f', t));
    frame = getframe(1);
    im = frame2im(frame);
    [imind, cm] = rgb2ind(im, 256);
    if t == 0
        imwrite(imind, cm, 'out.gif', 'gif', 'Loopcount', inf, 'DelayTime', 0.1);
    else
        imwrite(imind, cm, 'out.gif', 'gif', 'WriteMode', 'append', 'DelayTime', 0.1);
    end
end

Discrete Schrödinger operator

edit

Let   be a potential function defined on the graph. Note that P can be considered to be a multiplicative operator acting diagonally on  

 

Then   is the discrete Schrödinger operator, an analog of the continuous Schrödinger operator.

If the number of edges meeting at a vertex is uniformly bounded, and the potential is bounded, then H is bounded and self-adjoint.

The spectral properties of this Hamiltonian can be studied with Stone's theorem; this is a consequence of the duality between posets and Boolean algebras.

On regular lattices, the operator typically has both traveling-wave as well as Anderson localization solutions, depending on whether the potential is periodic or random.

The Green's function of the discrete Schrödinger operator is given in the resolvent formalism by

 

where   is understood to be the Kronecker delta function on the graph:  ; that is, it equals 1 if v=w and 0 otherwise.

For fixed   and   a complex number, the Green's function considered to be a function of v is the unique solution to

 

ADE classification

edit

Certain equations involving the discrete Laplacian only have solutions on the simply-laced Dynkin diagrams (all edges multiplicity 1), and are an example of the ADE classification. Specifically, the only positive solutions to the homogeneous equation:

 

in words,

"Twice any label is the sum of the labels on adjacent vertices,"

are on the extended (affine) ADE Dynkin diagrams, of which there are 2 infinite families (A and D) and 3 exceptions (E). The resulting numbering is unique up to scale, and if the smallest value is set at 1, the other numbers are integers, ranging up to 6.

The ordinary ADE graphs are the only graphs that admit a positive labeling with the following property:

Twice any label minus two is the sum of the labels on adjacent vertices.

In terms of the Laplacian, the positive solutions to the inhomogeneous equation:

 

The resulting numbering is unique (scale is specified by the "2"), and consists of integers; for E8 they range from 58 to 270, and have been observed as early as 1968.[15]

See also

edit

References

edit
  1. ^ Leventhal, Daniel (Autumn 2011). "Image processing" (PDF). University of Washington. Retrieved 2019-12-01.
  2. ^ Crane, K.; de Goes, F.; Desbrun, M.; Schröder, P. (2013). "Digital geometry processing with discrete exterior calculus". ACM SIGGRAPH 2013 Courses. SIGGRAPH '13. Vol. 7. pp. 1–126. doi:10.1145/2504435.2504442.
  3. ^ Reuter, M.; Biasotti, S.; Giorgi, D.; Patane, G.; Spagnuolo, M. (2009). "Discrete Laplace-Beltrami operators for shape analysis and segmentation". Computers & Graphics. 33 (3): 381–390df. CiteSeerX 10.1.1.157.757. doi:10.1016/j.cag.2009.03.005.
  4. ^ Forsyth, D. A.; Ponce, J. (2003). "Computer Vision". Computers & Graphics. 33 (3): 381–390. CiteSeerX 10.1.1.157.757. doi:10.1016/j.cag.2009.03.005.
  5. ^ Matthys, Don (Feb 14, 2001). "LoG Filter". Marquette University. Retrieved 2019-12-01.
  6. ^ Provatas, Nikolas; Elder, Ken (2010-10-13). Phase-Field Methods in Materials Science and Engineering (PDF). Weinheim, Germany: Wiley-VCH Verlag GmbH & Co. KGaA. p. 219. doi:10.1002/9783527631520. ISBN 978-3-527-63152-0.
  7. ^ O'Reilly, H.; Beck, Jeffrey M. (2006). "A Family of Large-Stencil Discrete Laplacian Approximations in Three Dimensions" (PDF). International Journal for Numerical Methods in Engineering: 1–16.
  8. ^ a b Lindeberg, T., "Scale-space for discrete signals", PAMI(12), No. 3, March 1990, pp. 234–254.
  9. ^ a b c Lindeberg, T., Scale-Space Theory in Computer Vision, Kluwer Academic Publishers, 1994, ISBN 0-7923-9418-6.
  10. ^ Patra, Michael; Karttunen, Mikko (2006). "Stencils with isotropic discretization error for differential operators". Numerical Methods for Partial Differential Equations. 22 (4): 936–953. doi:10.1002/num.20129. ISSN 0749-159X. S2CID 123145969.
  11. ^ Bigun, J. (2006). Vision with Direction. Springer. doi:10.1007/b138918. ISBN 978-3-540-27322-6.
  12. ^ Newman, Mark (2010). Networks: An Introduction. Oxford University Press. ISBN 978-0199206650.
  13. ^ Yavari, R.; Cole, K. D.; Rao, P. K. (2020). "Computational heat transfer with spectral graph theory: Quantitative verification". International Journal of Thermal Sciences. 153: 106383. Bibcode:2020IJTS..15306383C. doi:10.1016/j.ijthermalsci.2020.106383.
  14. ^ Cole, K. D.; Riensche, A.; Rao, P. K. (2022). "Discrete Green's functions and spectral graph theory for computationally efficient thermal modeling". International Journal of Heat and Mass Transfer. 183: 122112. Bibcode:2022IJHMT.18322112C. doi:10.1016/j.ijheatmasstransfer.2021.122112. S2CID 244652819.
  15. ^ Bourbaki, Nicolas (2002) [1968], Groupes et algebres de Lie: Chapters 4–6, Elements of Mathematics, translated by Pressley, Andrew, Springer, ISBN 978-3-540-69171-6
edit