Bilateral Filter: Theory and Applications
The bilateral filter is a nonlinear weighted averaging filter, where the weights depend on both the spatial distance and the intensity distance with respect to the center pixel. The main feature of the bilateral filter is its ability to preserve edges while doing spatial smoothing. The term bilateral filter was introduced in Reference ; the same filter was earlier called the SUSAN (Smallest Univalue Segment Assimilating Nucleus) filter . The variants of the bilateral filter have been published even earlier as the sigma filter  and the neighborhood filter .