Laplacian of Gaussian (LoG)
The Laplacian of Gaussian (LoG) is a way to find meaningful intensity changes in an image without being distracted by tiny, noisy fluctuations. It first softens the image, then looks for places where brightness changes sharply in a curved, “peak-to-valley” pattern—useful clues for edges and blob-like features.
How it works
The LoG combines two operations:
- A Gaussian blur smooths pixels using a bell-shaped weighting pattern. Its scale, σ (sigma), controls how much detail is removed: a small sigma preserves fine detail, while a large one emphasizes larger structures.
- The Laplacian, a second-derivative operator, measures how rapidly image intensity bends in both horizontal and vertical directions.
Applied together, the process is written as ∇²(Gσ * I): blur image I with Gaussian Gσ, then take its Laplacian. In practice, LoG edges are commonly found through zero crossings: locations where the filtered response changes from positive to negative or vice versa. These crossings mark boundaries between brighter and darker regions.
Why scale matters
LoG is especially good at detecting blobs—compact bright or dark regions surrounded by contrasting pixels. A small sigma can reveal tiny dots, such as defects in a manufactured surface; a larger sigma can reveal broader structures, such as cell nuclei in a microscopy image. Running LoG at several sigma values creates scale-space, allowing a system to detect features of different sizes. The closely related Difference of Gaussians (DoG) efficiently approximates LoG and is used in classic feature detectors such as SIFT.
Practical use and limits
LoG can sharpen preprocessing for optical character recognition, locate circular lesions in medical scans, or flag pits and bumps in visual quality inspection. Without Gaussian smoothing, the Laplacian reacts strongly to sensor noise and compression artifacts, producing many false edges. In Python, scipy.ndimage.gaussian_laplace directly computes this filter; OpenCV pipelines commonly apply cv.GaussianBlur followed by cv.Laplacian.
Laplacian of Gaussian (LoG) is an image operator that first smooths an image with a Gaussian filter to suppress noise, then applies the Laplacian, a second-derivative operator, to highlight rapid intensity changes. Edges are commonly located through zero-crossings in the LoG response. LoG provides noise-robust edge and blob detection, supporting classical feature extraction and multi-scale image analysis.
Imagine tracing the outline of objects in a coloring book: you care less about the flat areas of color and more about where one region suddenly meets another. The Laplacian of Gaussian (LoG) is a tool that helps a computer notice those important boundaries in an image.
It is especially useful for finding edges and small blob-like features, such as bright spots, dark dots, or the corners of shapes. It first reduces distracting visual noise, then highlights places where brightness changes sharply. Because it can examine images without needing labeled examples, it can support unsupervised learning tasks, where a system looks for natural patterns on its own.