- averaging the color values of neighboring pixels
- The spread, i.e. the amount of smoothing/blur is determined by the standard deviation σ of the Gaussian distribution used in the process.
- scale selection: selecting the required amount of scale - less important the scale, more the smoothing
- higher the standard deviation of the distribution, less important the center pixel becomes and so more blurry the image becomes
- The image is convolved with a Gaussian kernel, which is a matrix representing the Gaussian Distribution.
- Each pixel in the image is replaced with a weighted average of its neighboring pixels, with the weights determined by the Gaussian kernel.
- Gaussian smoothing is also decomposable
Decomposable Kernels
- symmetric kernels are decomposable into 2 linear convolutions
- if the kernel 2D matrix can be written as the outer product of 2 vectors
- n x n = n x 1 * 1 x n
- convolving with nxn kernel is the same as 2 convolutions with n x 1 and 1 x n kernels
- such convolutions are computationally cheaper
- 2n multiplications instead of n2 per pixel
Link to original
- g(a, b) = A exp(-(a2 + b2 )/2σ2) = A * (exp(-(a2 )/2σ2)) * (exp(-(b2 )/2σ2))
Why Gaussian Smoothing?
- Anti aliasing - blurring edges for realism
- smoothing before sub-sampling
- decomposable kernel (faster)
- smoothing before edge detection (for scale selection)