  Motion blurry images challenge many computer vision algorithms, e.g, feature
detection, motion estimation, or object recognition. Deep convolutional neural
networks are state-of-the-art for image deblurring. However, obtaining training
data with corresponding sharp and blurry image pairs can be difficult. In this
paper, we present a differentiable reblur model for self-supervised motion
deblurring, which enables the network to learn from real-world blurry image
sequences without relying on sharp images for supervision. Our key insight is
that motion cues obtained from consecutive images yield sufficient information
to inform the deblurring task. We therefore formulate deblurring as an inverse
rendering problem, taking into account the physical image formation process: we
first predict two deblurred images from which we estimate the corresponding
optical flow. Using these predictions, we re-render the blurred images and
minimize the difference with respect to the original blurry inputs. We use both
synthetic and real dataset for experimental evaluations. Our experiments
demonstrate that self-supervised single image deblurring is really feasible and
leads to visually compelling results.
