How can I deblur an image given the original PSF?

4 views (last 30 days)
I would like to deblur an image to get back my original image. I didn't see any deconv2 function in Matlab and was wondering what would be the best way to go about finding the 'inverse PSF'?

Accepted Answer

Ryan
Ryan on 3 Jul 2012
Edited: Ryan on 3 Jul 2012
doc deconvlucy the documentation mentions similar functions.
J = deconvlucy(I, PSF)
  2 Comments
Javier
Javier on 3 Jul 2012
Thanks Ryan. It seems like this will restore the original image. Is there a way to output the values used to deblur the image? I would like the psf that operated on the blurred image to get the original back. Any suggestions on how to grab that?
Ryan
Ryan on 3 Jul 2012
deconvlucy and deconvwnr do not support any returns other than the original image. deconreg allows the return of the lagrange multiplier in addition to the restored image. These functions use the Lucy-Richardson, Weiner and regularized methods respectively to perform the deconvolution.
You could try deconvblind
[J,PSF] = deconvblind(I, INITPSF)
This returns the deblurred Image, J and the restored PSF used. I am not sure if this is what you are looking for though and you will need to test the results to be sure.

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!