Ming's Note

Diffusion Distance

A few weeks ago, we read two beautifully written papers in our graphics seminar. Both were about measuring the distance between a pair of points. While one deals with points in the interior of a mesh [1], the other one deals with points on a mesh [2]. I especially liked the discussion we had for the latter, where Misha gave a nice review of Diffusion Distance [3] in the beginning. I decided I should write it down along with some thoughts before my memory fades.

Some quick math reviews

·         Delta Function: a delta function has zero value everywhere, except the origin where it has an impulse response. In 1-D it looks like:

subject to

So it is not really a function rather a functional that only makes sense when we consider the integral of its dot-product with some other function. Most importantly, given any function f(x) we have the following property:

In the rest of the article, we will use  to denote a delta function that is translated and centered at p. That is: .

·         Heat Diffusion on a manifold:  (I am going hand-wavy here. More details can be found in [4].)

, such that

How can we solve it via Fourier Decomposition? (See [5] for the analogy between the eigenfuntions/eigenvectors of the mesh Laplacian and the Fourier basis.)

Let  be eigenpairs of , where

In the discrete case, the solution at time t is formulated as:

Given the initial state , we first compute its frequency coefficients .

Then for any arbitrary time  we can predict the state using the above formulation. (Intuitively, this means modulating each frequency component separately by  and then recombining them)

Remark: From this interpretation, it becomes clear that Heat Diffusion is a smoothing process that suppresses high-frequency components faster than it suppresses low-frequency components. And when  goes to infinity, only the DC term () will survive.

Diffusion Distance

Intuitively, Diffusion Distance between a pair of points  can be thought of as following: We create a unit impulse function centered at  (imagine a fixed amount of energy concentrated at a point), and we let it diffuse for a period of time t. We create another impulse function centered at , and we also let it diffuse for a period time t. At the end, we look at the difference (measured by L2-norm) between the two distributions. And that is our Diffusion Distance.

Mathematically, this is described by:

(1)

and  are the distribution functions undergoing Heat Diffusion, with the initial states  and .

We use  and  to denote frequency coefficients of   and  respectively, i.e.,  and  .

Now, notice the well-known fact that  forms an orthonormal basis. This results in two consequences. First, (1) can be worked out to:

Second, finding their coefficients with respect to a certain function is as easy as computing their dot-products with that function. In the case of delta functions, it is even easier, i.e.,  and

Putting these together, we reach the common definition of the diffusion distance  between point  and point :

Relationship to Commute-Time Distance and Biharmonic Distance

Commute-Time Distance [6]:

Biharmonic Distance [2]:

(To finish...)

[1] Rustamov, R., Lipman, Y., Funkhouser, T. Interior distance using barycentric coordinates. Computer Graphics Forum (Symposium on Geometry Processing), 28(5), July 2009

[2] Lipman, Y., Rustamov, R., Funkhouser, T. Biharmonic Distance. ACM Transactions on Graphics 29(3), June 2010.

[3] GOES, F. D., GOLDENSTEIN, S., AND VELHO, L. 2008. A hierarchical segmentation of articulated bodies. Computer Graphics Forum (Special Issue of Symposium on Geometry Processing) 27, 5, 1349-1356.

[5] Taubin, G. 1995. A signal processing approach to fair surface design. In ACM SIGGRAPH Conference Proceedings, 351-358.

[6] FOUSS, F., PIROTTE, A., MICHEL RENDERS, J., AND SAERENS, M. 2006. Random-walk computation of similarities between nodes of a graph, with application to collaborative recommendation. IEEE Transactions on Knowledge and Data Engineering 19, 2007