Lably
Skip to content

Difference of Gaussians

Feature enhancement algorithm in imaging science

  • 3 min read
  • 3 chapters

Related on Lably

Through Feature (computer vision), Grayscale and Convolution

Formulation

Let Φt:Rn→R denote the radial Gaussian function Φt(x)=N(x|0,t) with mean 0 and variance t, i.e., the multivariate Gaussian function Φt(x)=N(x|0,tI) with mean 0 and covariance tI. More explicitly, we have

Φt(x)=1(2πt)n/2e−‖x‖22t.

The difference of Gaussians with variances t1<t2 is the kernel function

Kt1,t2=Φt1−Φt2

obtained by subtracting the higher-variance Gaussian from the lower-variance Gaussian. The difference of Gaussian operator is the convolutional operator associated with this kernel function. So given an n-dimensional grayscale image I:Rn→R, the difference of Gaussians of the image I is the n-dimensional image

I∗Kt1,t2=I∗(Φt1−Φt2)=I∗Φt1−I∗Φt2.

Because convolution is bilinear, convolving against the difference of Gaussians is equivalent to applying two different Gaussian blurs and then taking the difference. In practice, this is faster because Gaussian blur is a separable filter.

Approximation

The difference of Gaussians can be thought of as an approximation of the Mexican hat kernel function used for the Laplacian of the Gaussian operator. The key observation is that the family of Gaussians Φt is the fundamental solution of the heat equation

∂tΦt(x)=12ΔΦt(x).

The left-hand side can be approximated by the difference quotient

Φt+δt(x)−Φt(x)δt=1δtKt+δt,t(x).

Meanwhile, the right-hand side is precisely the Laplacian of the Gaussian function. Note that the Laplacian of the Gaussian can be used as a filter to produce a Gaussian blur of the Laplacian of the image because I∗ΔΦt=ΔI∗Φt by standard properties of convolution. The relationship between the difference of Gaussians operator and the Laplacian of the Gaussian operator is explained further in Appendix A in Lindeberg (2015).

Sign in to keep reading

2 more chapters are free with a Lably account.

More in Robotics