AForge.NET Framework
2.2.5 version is available!

Smoothing filters

AForge.NET framework provides number of smoothing filters, which may be used image
smoothing and noise removal. Different smoothing filters have different properties, which makes
them useful for different tasks and different type of noise to remove.

Below is the list of implemented smoothing filters and the result of their application to the below source
image.

Source image

Source image

Mean

The filter performs each pixel value’s averaging with its 8 neighbors.

Mean filter

Median

The median filter is normally used to reduce noise in an image, somewhat like the mean filter. However, it often does
a better job than the mean filter of preserving useful detail in the image. The filter replaces each pixel of the original
with the median of neighboring pixel values.

Median filter

Conservative Smoothing

The filter implements conservative smoothing, which is a noise reduction technique that derives its name from the fact that
it employs a simple, fast filtering algorithm that sacrifices noise suppression power in order to preserve the high spatial
frequency detail (e.g. sharp edges) in an image. It is explicitly designed to remove noise spikes – isolated pixels of
exceptionally low or high pixel intensity.

Conservative Smoothing filter

Adaptive Smoothing

The filter is aimed to perform image smoothing, but keeping sharp edges. This makes it applicable to additive noise removal
and smoothing objects’ interiors, but not applicable for spikes (salt and pepper noise) removal.

Adaptive Smoothing filter

Bilateral Smoothing

Bilateral filter conducts “selective” Gaussian smoothing of areas of same color (domains) which removes noise and contrast artifacts while preserving sharp edges.
Bilateral Smoothing filter