In principle, any degraded image can be reconstructed by deconvolution if the point spread function is known. If a photo is blurred due to movement in one direction, the point spread function would be a line in the direction of motion whose length depends on the amount of movement. In practice, deconvolution will not work for every image.
This method is far more powerful than using a ``sharpening'' filter, because any arbitrary type of degradation of the image can be eliminated. In practice, noise (especially noise in the psf) or low precision in the FFT will cause inaccuracies in the recovered image. For this reason, FFTs in imal are maintained as double-precision numbers. Also, if the spatial frequency of the psf at any point happens to be zero, it will also be impossible to reconstruct that point (since it would require dividing by zero). Adding a little noise to the psf will ensure that all frequencies are non-zero. Thus, sometimes it is necessary to tolerate some noise in the psf to get good image recovery.
Important: The point spread function must be centered at the upper left corner of the image to be used as a psf. Otherwise, a translation effect will also be convoluted into or out of the image.
Exercise: Try deconvoluting fft1.tif and fft2.tif. It
should be possible to reconstruct the original image in fft1.tif, which was
a small square, despite the complicated point spread function in
fft2.tif which renders the distorted image unrecognizable. The more
complicated the point spread function, the more difficult it is to
recover a noise-free image.
Example of Fourier deconvolution using excessively complicated psf: Deconvolution of image A using psf B produces image C. Although noisy, the original small white square has been partially recovered.
Procedure:
| Operation = | ``Deconvolute 2 images'' |
| Display = | ``Real FFT'' |
| Image #1 | 0 |
| Image #2 | 1 |
The first image will be replaced by the original, unconvoluted image, in this case, a small white square.