Image deblurring
Image deblurring is the image restoration process through which undesirable blur is removed from the image. This blur could be caused by many factors, including but not limited to, camera shake and incorrect focus. Mathematically, these sources of blur generate a blur kernel, i.e., a Point Spread Fu...
Saved in:
Main Author: | |
---|---|
Other Authors: | |
Format: | Final Year Project |
Language: | English |
Published: |
Nanyang Technological University
2022
|
Subjects: | |
Online Access: | https://hdl.handle.net/10356/157934 |
Tags: |
Add Tag
No Tags, Be the first to tag this record!
|
Institution: | Nanyang Technological University |
Language: | English |
Summary: | Image deblurring is the image restoration process through which undesirable blur is removed from the image. This blur could be caused by many factors, including but not limited to, camera shake and incorrect focus. Mathematically, these sources of blur generate a blur kernel, i.e., a Point Spread Function (PSF), that gets convolved with the originally sharp image to result in a blurry one. Deblurring therefore, is the process of deconvolving the blurry image with the PSF while subtracting the noise. In the absence of noise, blind deblurring mechanisms attempt to estimate this unknown kernel through mathematical and artificial intelligence based models. Unlike the techniques involving multiple images, single image blind deblurring does not have multiple references to approximate the required blur kernel. As a result, the process often involves intensive image analysis and feature extraction to understand the nature and magnitude of blur before proceeding to eliminate it.
MATLAB, one of the most widely used signal processing languages, provides one blind deblurring function, deconvblind. This function deconvolves the blurry image with a user estimated PSF by applying a damped acceleration of the Lucy Richardson algorithm. The resulting output is a deblurred image coupled with a modified PSF. Since the process of blind deconvolution is dependent on a user estimate, result quality can often vary.
In this project, image processing techniques have been combined with supervised learning models to arrive at an estimate PSF for the single input image. A 2-D Fast Fourier Transform has been performed on blurry images for generation of frequency maps. These maps have been analyzed and then fed into different classification based neural network architectures. A blur kernel classification approach has been decided upon by comparing the performances and processing requirements of each architecture. By applying popular machine learning models such as VGG-11, the implemented approach accurately classified more than 90% of the blur kernels it had been trained upon. |
---|