Microsoft Research

An SLR Camera instrumented with our image deblurring attachment that uses inertial measurement sensors and the input image in an “aided blind-deconvolution” algorithm to automatically deblur images with spatially-varying blurs (first two images). A blurry input image (third image) and the result of our method (fourth image).

Abstract

We present a deblurring algorithm that uses a hardware attachment
coupled with a natural image prior to deblur images from consumer
cameras. Our approach uses a combination of inexpensive gyroscopes
and accelerometers in an energy optimization framework to
estimate a blur function from the camera’s acceleration and angular
velocity during an exposure. We solve for the camera motion at a
high sampling rate during an exposure and infer the latent image
using a joint optimization. Our method is completely automatic,
handles per-pixel, spatially-varying blur, and out-performs the current
leading image-based methods. Our experiments show that it
handles large kernels – up to at least 100 pixels, with a typical size
of 30 pixels. We also present a method to perform “ground-truth”
measurements of camera motion blur. We use this method to validate
our hardware and deconvolution approach. To the best of our
knowledge, this is the first work that uses 6 DOF inertial sensors
for dense, per-pixel spatially-varying image deblurring and the first
work to gather dense ground-truth measurements for camera-shake
blur.

Examples

Automatically Deblurred using data from the Sensor Attachment (images are blinking between the blurred image and our deblurred result)