Need help or advice ? Come to the Icy club ! - Every Wenesday morning from 9h30 to 12h30 - Francois Jacob Building - Main hall - Pasteur
Register

User reviews

This plugin is not rated yet


Please log-in to post a review

Edge preserving denoising and smoothing

by Nicolas Chenouard

This software smooth and denoise images while preserving sharp edges. The method relies on the Total Variation criterion for image regularization and exploits the FISTA based method described in:

Beck, A.; Teboulle, M. "Fast Gradient-Based Algorithms for Constrained Total Variation Image Denoising and Deblurring Problems," Image Processing, IEEE Transactions on , vol.18, no.11, pp.2419,2434, Nov. 2009. doi: 10.1109/TIP.2009.2028250

Only the first channel of colored images are processed.

Publication Id
ICY-R4W1V5
See technical details
View complete changelog

Documentation

This software smooth and denoise images while preserving sharp edges. Only the first channel of colored images are processed, but temporal and multislice sequences can be processed, frame-by-frame and plane-by-plane.

The method relies on the Total Variation criterion for image regularization. Only a handful of parameters are required:

- 'Smoothing level' controls the tradeoff between smoothing the image and staying close to the original image pixel values.

- 'Maximum number of iterations' sets the computational load allowed for the algortithm to process the image. The larger, the more optimal the resulting image is according to the TV regularization functional. We have set a tolerance such that the algorithm may stop before reaching this number of iterations if stagnation is detected.

- 'Regularization type' sets the type of regularization. 'Isotropic' is advised as it does not produce vertical and horizontal preference for image features. 

For a complete description of the parameters and the algorithm please see the article referenced below.

Upon use of this plugin, please cite the following article in scientific communications:

Beck, A.; Teboulle, M. "Fast Gradient-Based Algorithms for Constrained Total Variation Image Denoising and Deblurring Problems," Image Processing, IEEE Transactions on , vol.18, no.11, pp.2419,2434, Nov. 2009. doi: 10.1109/TIP.2009.2028250

as our implementation of the TV regularization method is a direct adaptation of Beck and Teboulle software for Matlab.

We are providing static functions for calling the plugin from scripts and other plugins. See:

- for processing an ICY sequence of image:

TVDenoising.regularizeTVSequence(Sequence seq, int channel, int numIter, double lambda, TVFISTA.RegularizationType regularization)

- for processing an ICY image:

TVDenoising.regularizeTVImage(IcyBufferedImage image, int channel, int numIter, double lambda, TVFISTA.RegularizationType regularization)

-for processing a double array:

TVFISTA.regularizeTV(double[] im, int width, int height, int numIter, double lambda, RegularizationType regularization)

Sources of the plugin are provided and code is distributed under GPL v3 licence. To recover the source code, locate the .jar file of the plugin in the plugins directory in ICY root folder and uncompress it.