| |||||||||||||||||||||||||
Download Algorithms | |||||||||||||||||||||||||
English only | BIG > Download Algorithms >BEEPS | ||||||||||||||||||||||||
| Bi-Exponential Edge-Preserving SmootherAn ImageJ plugin that smoothes an image without altering its edges.Philippe Thévenaz, Biomedical Imaging Group, Swiss Federal Institute of Technology LausanneFigure 1. Original. Figure 2. A smoothed image with preserved edges takes a cartoonish appearance. General DescriptionThe 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. I. DownloadThis 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 ExplanationsThe 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 ManualThe 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© 2011 Philippe Thévenaz This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see https://www.gnu.org/licenses/. You undertake to include a citation or acknowledgment whenever you present or publish results that are based on this program. 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. |