presentation

advertisement
Vincent DeVito
Computer Systems Lab
2009-2010
The goal of my project is to take an image
input, artificially blur it using a known blur
kernel, then using deconvolution to deblur and
restore the image, then run a last step to reduce
the noise of the image. The goal is to have the
input and output images be identical with a
blurry intermediate image. The final step is
then to estimate the blur kernel of an image
with an unknown blur kernel.


Running goal for image processors and photo
editors
Many methods of deconvolution exist


Many utilize the Fourier Transform
Current progress focused on blur kernel
estimation

Better kernel  more accurate, clear output image

The group of Lu Yuan, et al. designed project
with blurry/noisy image pairs


Blurry image intensity + noisy image sharpness +
deconvolution = sharp, deblurred output image
The group of Rob Fergus, et al. designed
project to estimate blur kernel from naturally
blurred image

A few inputs + kernel estimation algorithm +
deconvolution = deblurred output image with few
artifacts

Photography


Improve image quality
Restore image
From Fergus, et al.

Machine Vision



Requires input images to be of good clarity
Blur could ruin techniques such as edge detection
Intermediate step


Extremely useful for convolution and
deconvolution
Convert image to frequency domain



Utilize the formula eθi = cosθ + isinθ
Usually display the magnitude, since DFT produces
complex number (a + bi). Magnitude = (a2 + b2)1/2
 Scale to 0-255 range

O(n2)

Separate sums



1D DFT in one direction (vertical/horizontal), then
in the other
O(nlog2n)

Inverse Fourier Transform converts back to
spatial domain



Also possible to separate
Need full complex number from DFT or FFT
Original Picture
Magnitude Only
Phase Only


Successful FFT and IFFT program
Successful convolution program

Takes any image (square image of size 128x128 or
smaller for best runtime) and blurs it using any
given blur kernel

Start to image deconvolution using a given
kernel

Inconsistent and somewhat noisy

Fix deconvolution algorithm
Inconsistent and produces large, clustered values
 Need a new transform or more research into kernel
types
 Noise reduction


Research into deconvolution based on kernel
type
Download