Motion Image Deblurring In Video

Project Homepage
Winter 2012






Batel Shlomo

Instructor:  Anna Oyzerman


Abstract:

Motion blur in successive video frames can be invertible even if the point-spread function (PSF) due to motion smear in a single photo is non-invertible. Blurred photos exhibit nulls in the frequency transform of the PSF, leading to an ill-posed deconvolution. Hardware solutions to avoid this require specialized devices such as the coded exposure camera or accelerating sensor motion. The following algorithm employ ordinary video cameras and introduce the notion of null-filling along with joint-invertibility of multiple blur-functions. The key idea is to record the same object with varying PSF’s, so that the nulls in the frequency component of one frame can be filled by other frames. The combined frequency transform becomes nullfree, making deblurring well-posed. We achieve jointly-invertible blur simply by changing the exposure time of successive frames.
This project addresses the problem of automatic deblurring of objects moving with constant velocity and is based on a specific algorithm.

Algorithm Example


SID - single image deblurring

This is the algorithm basic block. The following general steps are done for each image in the series in order to get the SID equations which are used in the MID , multi image deblurring, algorithm:
1)PSF estimation:
Proportional to velocity and to time exposure
Defines the blur size
2)Smear matrix creation
A circulant matrix in which every line refers to a pixel
3)Add smoothness factor:
Uses the Conjugate gradient.
In this project it is calculated only for smooth parts
4) Find Asid and B
Both are derived from smear matrix and smoothness function
 

MID - multi image deblurring

Algorithm steps:
1) For each image in the series get SID equations
2) Combine and normalize
3) Solve equations

MID Notes And Additions:
#Run algorithm on image lines to improve performance
#Use smooth mask
#Use rotation and alignment
#Automatic object alignment implementation
 

MID implementation blocks
 


 
The setup block breaks the video into frames, rotates the images so that the movement will be vertical(if needed) and align all images. Its output is a series of images in RGB format. Because the algorithm runs on a gray scale image, we move to HSV format and work only with the H matrix. Then, we run the SID algorithm to find the equations on all images and combine them to the matrices Amid and B. We solve the equations set and move back to RGB.


Other material

Final project presentation :
Presentation.pptx 

Project book :
Book.doc 

Code :
Code.zip 

 

References:

[1] "Review of Invertible Motion Blur In Video", Amit grawal, Yi Xu, Ramesh Raskar, 2009

[2] "Removing Camera Shake From a Single Photograph", Rob Fergus, Barun Sinagh, Aaron Hertzman, Sam T.Roweis, William T.Freeman, 2006

[3] "Two motion-blurred images are better than one", Alex Rav-Acha, Shmuel Peleg, 9 December 2004

[4] "High-quality Motion Deblurring from a Single Image", Qi Shan, Jiaya Jia, Aseem Agarwala, 2008
 
 
 
 
 
 
 

creative web design