Official MATLAB implementation of the "Sparse deconvolution" -v1.0.3
Updated 16 Nov 2021

code website releases paper paper
Github commit Github All Releases License
Twitter GitHub watchers GitHub stars GitHub forks

Sparse deconvolutionv1.0.3

Words written in the front: Physical resolution might be meaningless if in the mathmetical space.

It is a part of publication. For details, please refer to: Weisong Zhao et al. Sparse deconvolution improves the resolution of live-cell super-resolution fluorescence microscopy, Nature Biotechnology 40, 606–617 (2022).

The related Python version can be found at HERE

You can also find some fancy results and comparisons on my website.

If you are interested in our work, I wrote a #behind_the_paper post for further reading.

Here is also a blog about it for further reading.

This method has been tested on various types of Confocal microscopy & STED microscopy, Wide-field & TIRF microscopy, Light-sheet microscopy, Multi-photon microscopy, and Structured illumination microscopy, feasible for single-slice, time-lapse, and volumetric datasets.


This repository contains the updating version of Sparse deconvolution. The Sparse deconvolution is an universal post-processing framework for fluorescence (or intensity-based) image restoration, including xy (2D), xy-t (2D along t axis), and xy-z (3D) images. It is based on the natural priori knowledge of forward fluorescence imaging model: sparsity and continuity along xy-t (z) axes.


  • The binary executable files (.exe/.app) can be found in the release
  • More details on Wiki and Document.
  • /src_unix is the source code for Unix-like systems (including MacOS).
  • /src_win is the source code for Windows systems.
  • Clone/download, and run the Install.m
  • The input Effective NA should be given according to the sum of illumination NA and detection NA. For instances: wide-field is the objective NA (e.g., 1.49); SIM is the illumination NA + objective NA (e.g., 1.3 + 1.7); SD-SIM is ~1.8 * objective NA.
  • Please try help xxx to get the API.
help SparseHessian_core
help background_estimation
help Fourier_Oversample

Installation of binary executable file (.exe) for Win10 system.

Or directly click the .\for Maltab users\Sparse_SIM.exe if you are using MATLAB 2017b.

Algorithm UI

Parameters: Wiki and Document

Tested platform

This software has been tested on:

  • MATLAB R2017b on (Win 10: 128 GB and NVIDIA Titan Xp: 12GB; CUDA 9.1);
  • MATLAB R2019b on (Win 10: 128 GB and NVIDIA Titan RTX: 24GB; CUDA 10.0);
  • MATLAB R2019b on (Win 10: 16GB and NVIDIA GTX1050Ti: 4GB, CUDA 10.2);
  • MATLAB R2015b on (CentOS 7: 64GB and Tesla K40 :12GB, CUDA 9.0);
  • MATLAB R2018b on (Ubuntu 18.04: 16GB and NVIDIA TITAN Xp: 12GB, CUDA 10.1);
  • MATLAB R2017b on (MacOS 10: 8GB without GPU acceleration).

More on Wiki.


  • v1.0.3 Fully open source!
  • v1.0.3 Another type deconvolution, and up-sampling methods, first officially released version!
  • v0.6.3 Reorder the background estimation
  • v0.6.2 Debug mode
  • v0.6.1 Progress bar feature and logo
  • v0.5.1 Up-sampling feature and change input file type from .mat to .tif
  • v0.4.1 Background estimation feature
  • v0.3.0 Algorithm UI
  • v0.2.0 Full model reconstruction
  • v0.1.0 Sparsity reconstruction core

Related links:

  • Debug mode for parameter-adjustment;
  • A Pyhton version of Sparse deconvolution;
  • A imagej-plugin of Sparse deconvolution;
  • A Headless mode;
  • Reduce the necessary/exposed parameters.
  • Open source Sparse deconvolution

    • This software and corresponding methods can only be used for non-commercial use, and they are under Open Data Commons Open Database License v1.0.
    • Feedback, questions, bug reports and patches are welcome and encouraged!

    Cite As

    Weisong Zhao (2022). Sparse deconvolution (, GitHub. Retrieved March 18, 2022.

    MATLAB Release Compatibility
    Created with R2017b
    Compatible with any release
    Platform Compatibility
    Windows macOS Linux
    Tags Add Tags

    Community Treasure Hunt

    Find the treasures in MATLAB Central and discover how the community can help you!

    Start Hunting!
    Version Published Release Notes

    To view or report issues in this GitHub add-on, visit the GitHub Repository.
    To view or report issues in this GitHub add-on, visit the GitHub Repository.