Difference between revisions of "Deconvolution"

(Add summary sentence)
(update link to new java script demo script, and fix text to be a bit more descriptive.)
Line 24: Line 24:
 
[[File:iterative_deconvolve_window.png|411x272px]]
 
[[File:iterative_deconvolve_window.png|411x272px]]
  
== An interactive convolution/deconvolution demo in ImageJ ==
+
== An interactive Convolution / Deconvolution / Contrast Restoration demo in ImageJ ==
  
For an educational interactive imageJ macro demo of convolution, inverse filtering and iterative deconvolution, see this [https://github.com/chalkie666/imagejMacros/blob/master/exponentialChirpImag.ijm deconvolution demo macro script]  
+
For an educational interactive ImageJ javascript demo of convolution, inverse filtering and image contrast restoration by iterative constrained deconvolution, see this [https://github.com/chalkie666/imagejMacros/blob/master/DeconvolutionDemos/Convolution_Deconvolution_Demo.js Convolution / Deconvolution / Contrast Restoration demo script]  
  
 
[[Category:Cookbook]]
 
[[Category:Cookbook]]
 
[[Category:Tutorials]]
 
[[Category:Tutorials]]

Revision as of 04:35, 16 June 2016


Template:Cookbook
Learn
Topics
Introduction
Getting Started
User Guides
Tutorials
Tips and Tricks
Presentations
Plugins
Techniques
All Techniques
Colocalization
Deconvolution
Registration
Segmentation
Stitching
Tracking
Visualization
Scripting
Overview
Parameters
Basics of script writing
Batch processing
Script Editor
Auto Imports
Templates
Running headlessly
Comparisons
Toolbox
Multithreading in Clojure
Multithreading in JavaScript
Chess in Jython
Languages
BeanShell
Groovy
ImageJ Macro
JavaScript
Lisp (Clojure)
MATLAB
Python (Jython)
R (Renjin)
Ruby (JRuby)
Scala

Deconvolution is an algorithm-based process used to reverse the effects of convolution on recorded data.

Introduction

These two plugins from Bob Dougherty are used together to generate a stack of the point-spread function (PSF). The Iterative Deconvolution 3D plugin uses this PSF image stack along with a stack of your sample images. The image below is a single slice taken from a stack before and after deconvolution using these plugins.

Deconvoluted data.png

See the plugins' homepages for more details: Diffraction PSF 3D & Iterative Deconvolution 3D

Generating a PSF image stack

The Diffraction PSF 3D plugin can be used to generate theoretical PSFs assuming they arise only from diffraction. These PSFs may be used with other deconvolution plugins later.

To use, run the "Diffraction PSF 3D" plugin. A dialog will appear; most of the fields are self explanatory. The width, height and depth values are for the PSF image, not your image stack. The desired values will need to be empirically determined.

Diffraction psf window1.png

Iterative deconvolution

Run the Iterative Deconvolve 3D plugin, then select the image and PSF. Start with the default values and set iterations to 10 initially. Be careful not to represent the PSF with a stack or the plugin will run out of memory and terminate.

Iterative deconvolve window.png

An interactive Convolution / Deconvolution / Contrast Restoration demo in ImageJ

For an educational interactive ImageJ javascript demo of convolution, inverse filtering and image contrast restoration by iterative constrained deconvolution, see this Convolution / Deconvolution / Contrast Restoration demo script