HOME

TheInfoList



OR:

In imaging science, difference of Gaussians (DoG) is a
feature Feature may refer to: Computing * Feature recognition, could be a hole, pocket, or notch * Feature (computer vision), could be an edge, corner or blob * Feature (machine learning), in statistics: individual measurable properties of the phenome ...
enhancement algorithm that involves the subtraction of one Gaussian blurred version of an original image from another, less blurred version of the original. In the simple case of
grayscale image In digital photography, computer-generated imagery, and colorimetry, a greyscale (more common in Commonwealth English) or grayscale (more common in American English) image is one in which the value of each pixel is a single sample (signal), s ...
s, the blurred images are obtained by convolving the original grayscale images with
Gaussian kernel In mathematics, a Gaussian function, often simply referred to as a Gaussian, is a function of the base form f(x) = \exp (-x^2) and with parametric extension f(x) = a \exp\left( -\frac \right) for arbitrary real constants , and non-zero . It is ...
s having differing width (standard deviations). Blurring an image using a Gaussian kernel suppresses only high-frequency spatial information. Subtracting one image from the other preserves spatial information that lies between the range of frequencies that are preserved in the two blurred images. Thus, the DoG is a spatial
band-pass filter A band-pass filter or bandpass filter (BPF) is a device that passes frequencies within a certain range and rejects ( attenuates) frequencies outside that range. It is the inverse of a '' band-stop filter''. Description In electronics and s ...
that attenuates frequencies in the original grayscale image that are far from the band center."Molecular Expressions Microscopy Primer: Digital Image Processing – Difference of Gaussians Edge Enhancement Algorithm", ''Olympus America Inc., and Florida State University''
Michael W. Davidson, Mortimer Abramowitz


Formulation

Let \Phi_t: \mathbb^n \rightarrow \mathbb denote the radial
Gaussian function In mathematics, a Gaussian function, often simply referred to as a Gaussian, is a function (mathematics), function of the base form f(x) = \exp (-x^2) and with parametric extension f(x) = a \exp\left( -\frac \right) for arbitrary real number, rea ...
\Phi_t(x) = \mathcal(x, 0, t) with mean 0 and variance t, i.e., the multivariate Gaussian function \Phi_t(x) = \mathcal(x, 0, tI) with mean 0 and covariance tI. More explicitly, we have : \Phi_t(x) = \frac e^. The difference of Gaussians with variances t_1 < t_2 is the kernel function :K_ = \Phi_ - \Phi_ 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 In digital photography, computer-generated imagery, and colorimetry, a greyscale (more common in Commonwealth English) or grayscale (more common in American English) image is one in which the value of each pixel is a single sample (signal), s ...
I:\mathbb^n\rightarrow\mathbb, the difference of Gaussians of the image I is the ''n''-dimensional image :I * K_ = I * (\Phi_ - \Phi_) = I * \Phi_ - I * \Phi_. 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 A separable filter in image processing can be written as product of two more simple filters. Typically a 2-dimensional convolution operation is separated into two 1-dimensional filters. This reduces the computational costs on an N\times M image wit ...
.


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 \Phi_t is the fundamental solution of the heat equation :\partial_t\Phi_t(x) = \frac\Delta\Phi_t(x). The left-hand side can be approximated by the difference quotient :\frac = \fracK_(x). Meanwhile, the right-hand side is precisely the
Laplacian In mathematics, the Laplace operator or Laplacian is a differential operator given by the divergence of the gradient of a scalar function on Euclidean space. It is usually denoted by the symbols \nabla\cdot\nabla, \nabla^2 (where \nabla is th ...
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 * \Delta\Phi_t = \Delta * \Phi_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).


Details and applications

As a
feature Feature may refer to: Computing * Feature recognition, could be a hole, pocket, or notch * Feature (computer vision), could be an edge, corner or blob * Feature (machine learning), in statistics: individual measurable properties of the phenome ...
enhancement algorithm, the difference of Gaussians can be utilized to increase the visibility of edges and other detail present in a digital image. A wide variety of alternative edge sharpening filters operate by enhancing high frequency detail, but because
random noise In electronics, noise is an unwanted disturbance in an electrical signal. Noise generated by electronic devices varies greatly as it is produced by several different effects. In particular, noise is inherent in physics and central to thermod ...
also has a high spatial frequency, many of these sharpening filters tend to enhance noise, which can be an undesirable artifact. The difference of Gaussians algorithm removes high frequency detail that often includes random noise, rendering this approach one of the most suitable for processing images with a high degree of noise. A major drawback to application of the algorithm is an inherent reduction in overall image contrast produced by the operation. When utilized for image enhancement, the difference of Gaussians algorithm is typically applied when the size ratio of kernel (2) to kernel (1) is 4:1 or 5:1. In the example images, the sizes of the Gaussian kernels employed to smooth the sample image were 10 pixels and 5 pixels. The algorithm can also be used to obtain an approximation of the
Laplacian of Gaussian In computer vision and image processing, blob detection methods are aimed at detecting regions in a digital image that differ in properties, such as brightness or color, compared to surrounding regions. Informally, a ''blob'' is a region of a ...
when the ratio of size 2 to size 1 is roughly equal to 1.6. The Laplacian of Gaussian is useful for detecting edges that appear at various image scales or degrees of image focus. The exact values of sizes of the two kernels that are used to approximate the Laplacian of Gaussian will determine the scale of the difference image, which may appear blurry as a result. Differences of Gaussians have also been used for
blob detection In computer vision and image processing, blob detection methods are aimed at detecting regions in a digital image that differ in properties, such as brightness or color, compared to surrounding regions. Informally, a ''blob'' is a region of an ...
in the
scale-invariant feature transform The scale-invariant feature transform (SIFT) is a computer vision algorithm to detect, describe, and match local '' features'' in images, invented by David Lowe in 1999. Applications include object recognition, robotic mapping and navigation, ...
(SIFT). In fact, the DoG as the difference of two
Multivariate normal distribution In probability theory and statistics, the multivariate normal distribution, multivariate Gaussian distribution, or joint normal distribution is a generalization of the one-dimensional ( univariate) normal distribution to higher dimensions. One d ...
has always a total null sum and convolving it with a uniform signal generates no response. It approximates well a second derivate of Gaussian (
Laplacian of Gaussian In computer vision and image processing, blob detection methods are aimed at detecting regions in a digital image that differ in properties, such as brightness or color, compared to surrounding regions. Informally, a ''blob'' is a region of a ...
) with K~1.6 and the receptive fields of ganglion cells in the
retina The retina (; or retinas) is the innermost, photosensitivity, light-sensitive layer of tissue (biology), tissue of the eye of most vertebrates and some Mollusca, molluscs. The optics of the eye create a focus (optics), focused two-dimensional ...
with K~5. It may easily be used in recursive schemes and is used as an operator in real-time algorithms for blob detection and automatic scale selection.


More information

In its operation, the difference of Gaussians algorithm is believed to mimic how neural processing in the retina of the eye extracts details from images destined for transmission to the brain.


See also

* Marr–Hildreth algorithm *Treatment of the difference of Gaussians approach in blob detection. *
Blob detection In computer vision and image processing, blob detection methods are aimed at detecting regions in a digital image that differ in properties, such as brightness or color, compared to surrounding regions. Informally, a ''blob'' is a region of an ...
* Gaussian pyramid *
Scale space Scale-space theory is a framework for multi-scale signal representation developed by the computer vision, image processing and signal processing communities with complementary motivations from physics and biological vision. It is a formal the ...


References


Further reading

*Notes by Melisa Durmuş o
Edge Detection and Gaussian related mathematics
from the University of Edinburgh. {{DEFAULTSORT:Difference Of Gaussians Continuous wavelets Feature detection (computer vision)