SIGGRAPH 2006 Computational photography
Coded Exposure Photography: Motion Deblurring using Fluttered Shutter
The idea
Preserve detail
before deblurring.
A conventional exposure blurs motion with a temporal box filter, losing high-frequency detail. Opening and closing the shutter in a chosen binary sequence changes that filter to a broad-band response, preserving information for recovering a sharp image.
- Single exposure
- Encode motion with a binary shutter sequence
- Recoverable detail
- Preserve high spatial frequencies during capture
- Linear reconstruction
- Recover the sharp image by solving AX = B
- Large motion blur
- Examples with blur of approximately 300 pixels
01 / Motion deblurring
Recovering a fast-moving taxi
One photograph is captured with a 200 ms coded exposure. Rectification aligns motion with the scan lines; the blurred object is cropped, then a linear system is solved to recover the sharp image. The example demonstrates high-frequency recovery without the ringing and deconvolution artifacts typical of poorly conditioned reconstruction.
Why change
the exposure?
With conventional capture, relative motion between the camera and scene removes high spatial frequencies. Deblurring then amplifies noise and can introduce ringing and other artifacts. The missing information is a consequence of capture, independent of the deblurring algorithm.
Fluttering the shutter preserves high frequencies within one exposure. The resulting deconvolution is better conditioned, allowing a simple linear system AX = B to recover the sharp image X from the blurred image B. The paper demonstrates large motion blurs of approximately 300 pixels.
The prototype adds an external ferro-electric shutter in front of the lens, synchronized with the start of the camera’s exposure. Manually specified point-spread functions are used for the demonstrated reconstructions.
03 / Capture comparison
Short, continuous,
and coded exposure
A short exposure limits motion blur but gathers less light. A conventional long exposure collects light while smearing away spatial detail. Coded exposure changes the temporal integration pattern to preserve information needed for deblurring.
The prototype
For on-chip fluttered integration, see the Flutter Shutter Video Camera.
05 / The exposure pattern
From continuous trails to coded motion
A moving LED and moving car headlights make the shutter pattern visible. A traditional camera records a continuous smear; fluttering the shutter interrupts the trail, preserving high-frequency information.
Abstract
In a conventional single-exposure photograph, moving objects or moving cameras cause motion blur. The exposure time defines a temporal box filter that smears the moving object across the image by convolution. This box filter destroys important high-frequency spatial details so that deblurring via deconvolution becomes an ill-posed problem.
Rather than leaving the shutter open for the entire exposure duration, we “flutter” the camera’s shutter open and closed during the chosen exposure time with a binary pseudo-random sequence. The flutter changes the box filter to a broad-band filter that preserves high-frequency spatial details in the blurred image and the corresponding deconvolution becomes a well-posed problem. We demonstrate that manually-specified point spread functions are sufficient for several challenging cases of motion-blur removal including extremely large motions, textured backgrounds and partial occluders.







