|English only||BIG > Download Algorithms >BEEPS|
Bi-Exponential Edge-Preserving Smoother
An ImageJ plugin that smoothes an image without altering its edges.
Philippe Thévenaz, Biomedical Imaging Group, Swiss Federal Institute of Technology Lausanne
Figure 1. Original.
Figure 2. A smoothed image with preserved edges takes a cartoonish appearance.
The smoothing is applied by the way of a bi-exponential filter, itself realized by a pair of one-tap recursions. It is therefore very fast; moreover, its computational cost is truly independent of the amount of smoothing. Meanwhile, the preservation of edges is obtained by a range filter akin to the range filter found in a bilateral filter. More technical details are available here.
The plugin allows one to control the amount of smoothing, the type of range filter, its broadness, and to iterate the filter several times if desired. We illustrate in Figure 2 a possible outcome of this filter. Here, we iterated the BEEPS 10 times with a Gaussian range filter, σ = 10, and the spatial decay λ = 0.1.
This distribution is dated September 9, 2011. It includes the source files, along with a jar file that contains the precompiled classes.
II. Related Work
This set of Java classes is based on the following paper:
BEEPS has been written as a plugin for ImageJ. Please read the ImageJ documentation to learn how to install plugins.
III. Technical Explanations
The bi-exponential edge-preserving smoother (BEEPS) is an image-processing filter that transforms an input image into an output image of the same size. The goal of the BEEPS is to iron out irrelevant details of the image without compromising strong edges. Thus, its effect is similar to that of a bilateral filter, except that the BEEPS is much faster than the bilateral filter. It is controlled by tuning a so-called range filter, along with the amount of spatial smoothing.
In this plugin, the range filter is either Gaussian-like or sech-like. (The sech function is the usual hyperbolic secant). In both cases, the contribution of the range filter is controlled by its standard deviation: a large standard deviation corresponds to a broad range filter that has a weak effect and allows for the smoothing of all but the strongest edges; a small standard deviation corresponds to a narrow range filter that has a strong effect and forbids the smoothing of most edges.
The amount of spatial smoothing is controlled by the decay of a bi-exponential filter. Useful decays belong to the interval [0, 1). When the decay is slow (near 0), the filter has a long-range reach and the spatial smoothing is strong. When the decay is fast (near 1), the filtering is localized and the spatial smoothing is weak. Please note that the decay λ that controls this plugin corresponds to (1 − λ) in the associated publication.
IV. User Manual
The plugin requests at least one open image at launch. All image types are accepted, except RGB Color and 8-bitColor. In the case of a RGB Stack or a HSB Stack, the processing will be performed independently on all channels.
Figure 3. Initial dialog.
At launch, a dialog window will appear (see Figure 3). The role of its various components is as follows:
V. Conditions of Use
You'll be free to use this software for research purposes, but you must not transmit and distribute it without our consent. In addition, you undertake to include a citation or acknowledgment whenever you present or publish results that are based on it. EPFL makes no warranties of any kind on this software and shall in no event be liable for damages of any kind in connection with the use and exploitation of this technology.