Blind Deconvolution in Smartphones

Smartphones are now widely used as photographic devices. Their cheap cameras are prone to many degradations, most notably handshake in combination with rolling shutter causes severe space-variant blur. Removing blur without any information about the phone motion is a computationally demanding and unstable process. We record data from built-in rotational inertial sensors (gyroscopes) to detect the motion trajectory of the camera during exposure and then use it as a base for removing blur from the acquired photographs. The proposed system is a close-to-real-time deblurring application implemented on an Android smartphone.

The block diagram of the smartphone application: During camera exposure, the application records data from the built-in gyroscopes. The data are processed and blurs are estimated. The captured photo is divided into overlapping patches, Wiener deconvolution is performed on every patch and the reconstructed patches are blended to generate the sharp photo. The whole process, entirely done on the smartphone, takes around 10s.

Example: Move your mouse over the blurred photo to see the restored sharp one. Notice that the restored images are geometrically warped to compensate for the rolling-shutter effect. More examples in the original quality are here.