RestoreTools

An Object Oriented Matlab Package for Image Restoration

UPDATE: New preconditioner and new iterative method.
March, 2007


Image Restoration
In applications such as astronomy, medicine, physics and biology, scientists use digital images to record and analyze results from experiments. Environmental effects and imperfections in the imaging system can cause the recorded images to be degraded by blurring and noise. Image restoration (sometimes known as deblurring or deconvolution) is the process of reconstructing or estimating the true image from the degraded one.


RestoreTools
Matlab's Image Processing Toolbox contains some methods for image restoration, but these have several limitations. (For example, they cannot be used with spatially variant blurs.) The RestoreTools package contains several additional, modern algorithms which have been studied in the inverse problems and numerical analysis literature. In addition, an object oriented design allows users to easily incorporate our efficient computational kernels in their own algorithms. Some important features include:


Package Update, March 2007


Developers
RestoreTools was developed for research and pedagogical purposes at Emory University by James Nagy, and several of his students, including Julianne Chung, Katrina Palmer, Lisa Perrone, and Ryan Wright.

This work was motivated by an excellent Matlab package, Regularization Tools, developed by Per Christian Hansen at the Technical University of Denmark. We are grateful to Per Christian, and his student, Michael Jacobsen, for many helpful suggestions during the development of these codes.


Target Audience


Software
RestoreTools was developed using Matlab version 6.1, and has been tested on subsequent versions (most recently, version 7.4). The software for this may be obtained from: We recommend using the above version, which makes use of some tools in the Image Processing Toolbox. However, if you do not have the Image Processing Toolbox, you can use the following version of the softare: We are currently developing a Java ImageJ plugin for image deblurring. Some related work using Python can be obtained from Daniel Fan.


Examples
When you install RestoreTools, you will find a directory (folder) ./RestoreTools/Examples/ containing several scripts illustrating how to use the codes. More information can be found in an associated paper. Click here for some examples using direct methods based that exploit Kronecker product structures, and use SVD computations.


Acknowledgements
This work has been supported by the National Science Foundation under Grants DMS 00-75239 and DMS 05-11454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the author(s) and do not necessarily reflect the views of the National Science Foundation.