Graphic STI
logo EPFL
text EPFL
english only
Biomedical Imaging Group
3D Deconvolution Microscopy
BIG >  3D Deconvolution Microscopy


Open Software

» DeconvolutionLab2

» DeconvolutionLab

» PSF Generator

3D Reference Datasets


Advanced Methods

Conditions of Use










The original ImageJ deconvolution tool

DeconvolutionLab is a software package (ImageJ plugin) to deconvolve 2D or 3D microscopic images based on the knowledge of the PSF. It implements a variety of deconvolution algorithms: 1) Inverse filter, 2) Regularized inverse filter, 3) Landweber, 4) Threshold Landweber, 5) Tikhonov-Miller, 6) Richardson-Lucy, 7) Richardson-Lucy with TV Regularization. It also includes a convolution tool to generate simulated dataset with additive noise.

Cédric Vonesch, Raquel Terrés Cristofani and Guillaume Schmit at the Biomedical Imaging Group (BIG), EPFL, Switzerland



[1] D. Sage, L. Donati, F. Soulez, D. Fortun, G. Schmit, A. Seitz, R. Guiet, C. Vonesch, M. Unser, "DeconvolutionLab2 : An Open-Source Software for Deconvolution Microscopy" Submitted to Methods, 2016.



DeconvolutionLab is a Java software pakage to deconvolve 3D images; it runs as a plugin for ImageJ, the public domain image-processing software. 3D Deconvolution is highly computational; it also requires some understanding of image formation and signal processing to correctly adjust the parameters of the algorithms. DeconvolutionLab incorporates the most known algorithms of deconvolution with theirs parameters. Tuning these parameters could be diffifult in deconvolution and may infer disappointing results. In DeconvolutionLab, these parameters can be choosen by the user or for some of them, they can be automicatilly estimated, which it is one of the main feature of DeconvolutionLab.

A highlight is the optional use of the FFTW package, a library supplying one of the fastest Fourier Transform. DeconvolutionLab includes a distribution both for the Microsoft Window (32 and 64 bits) and for the Apple Mac OSX (32 bits and 64 bits)


Click to enlarge Mac OSX
Click to enlarge Windows

Java and ImageJ prerequirements

The software provided here is a plugin for ImageJ, a general purpose image-processing and image-analysis package. ImageJ has a public domain licence; it runs on several plateforms: Unix, Linux, Windows, Mac OS 9 and Mac OS X. It doesn't take more than a couple of minutes to install.

Make sure that you have the good version of Java: at least 1.5, 1.6 recommended; 64-bit version for processing large data sets. To know the version of Java, go to Help>About of ImageJ.

Download and install

Download, the ImageJ's plugin. Put the file in the folder plugins of ImageJ and unzip it. The FFTW libraries for Windows and Mac OSX are included in the package.

Probaby, you will need to increase the allocated memory to ImageJ by Java.


  1. Launch DeconvolutionLab form the menu plugin of ImageJ
  2. Open the input stack of image to deconvolve.
  3. Open the PSF stack.
  4. Select an algorithm and the parameters.
  5. Select the PSF (click on the Refresh button to have to refresh the list of open images).
  6. Optional - If you have an ground-truth stack images (only in simulation), you can compute the SER (Signal-to-Error Ratio) by selecting the option.
  7. Optional - Remove the background.
  8. Optional - Create snapshot video for every iterations.
  9. Optional - Apply the algorithm on a reduce part of the image.
  10. Optional - Activate the FFTW which is faster
  11. Optional - Activate the batch mode
  12. Run the deconvolution and observe the log activities in different modes

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 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.

Headless call

Calling DeconvolutionLab from a Javascript macro or from an ImageJ macro is now possible. Check this web page:
How to call DeconvolutionLab from a Javascript script or an ImageJ macro?