MATLAB exercise 2


To be handed in on or before Dec 13, 2010. Please hand in the answers to the questions and send the MATLAB code that you used and the deconvolved images by email to

1. Read in the image escher_waterfall.jpg

2. Blur this image in MATLAB with a Gaussian filter with dispersion of 4 pixels. Use the function fspecial in Matlab. Now add noise to the image using normally distributed random numbers with a standard deviation of 2.

Wiener filtering is a technique that uses the blurring function (the impulse response) and restores the images the information at each frequency in a way that depends on the Signal to Noise ratio at that frequency. See e.g. Wikipedia, and also here, for more information.

3. Now use the implementation of the Wiener deconvolution in Matlab (the program deconvwnr) to restore the original image as much as possible. You are allowed to use all the options in the program.

We will now deconvolve the image using 2 methods: the method of Van Cittert, and Richardson-Lucy deconvolution. Read the document about these deconvolution methods that is given below.

Page 1
Page 2
Page 3
Page 4
Page 5
Page 6
Page 7
Page 8

4. Use Van Cittert deconvolution with w(p)=1 to deconvolve the image. With how many iterations do you get the best result? Now use a sine function. With which value ofdo you get the best results and in how many iterations?


5. Do the same using Richardson-Lucy deconvolution, also using a sine function as a weight function. With which value ofdo you get the best results and in how many iterations? 

6. Now discuss quantitatively which of the 3 methods is better. Which method gives the best reconstruction? How do you measure this? Which method preserves the low frequencies best? And the high frequencies?

7. For an additional exercise in understanding Fourier Transforms see Problem_set_2a