Deblurring is a process that removes distortion from a blurry image using knowledge of the point spread function. The blurring, or degradation, of an image can be caused by many factors:
- Movement during the image capture process, by the camera or, when long exposure times are used, by the subject
- Out-of-focus optics, use of a wide-angle lens, atmospheric turbulence, or a short exposure time, which reduces the number of photons captured
- Scattered light distortion in confocal microscopy
In this project I will be focused on removing blurs from camera shaking. It's a blind deblurring problem and iterative method will be used to estimate point spread function and deblurred image alternately. For removing ringing artifacts edgetaper function will be implemented using OpenCV, also will be implemented PSF order estimation algorithm.
The most time consuming operations, such as FFT2d, will be implemented using OpenCL to improve the algorithm's performance.